Q:

Illegal conversion: can not convert from "byte[]" to "java.math.BigDecimal" ERRORCODE=-4474, SQLSTATE=null

Tengo la siguiente consulta:
SELECT datoUno(double), datoDos(double), datoTres(varchar) 
FROM
    Table_ejemplo
WHERE
    dato_ID IN (164246, 164353,...);

Mi problema viene cuando desde mi clase implementadora para los parámetros de dato_ID le paso un List como este: [164246, 164353, 123131,...].
Este es el código:
private TransaccionResponse busquedaEjemplo(List<Integer> lstEjemplo) {
        StringBuffer sql = new StringBuffer();

        creaQueryEjemplo(sql);

        SQLQuery query = db.createSQLQuery(sql.toString());

        query.addScalar("datoUno", StandardBasicTypes.DOUBLE);
        query.addScalar("datoDos", StandardBasicTypes.DOUBLE);
        query.addScalar("datoTres", StandardBasicTypes.STRING);

        query.setResultTransformer(
                Transformers.aliasToBean(BeanReporteEjemplo.class));

        query.setParameter("datoId",lstEjemplo);

        List<BeanReporteEjemplo> resultados = query.list();

        BeanReporteEjemplo= new ArrayList<BeanReporteEjemplo>();

        for (Object object : resultados) {
            BeanReporteEjemplo b = (BeanReporteEjemplo) object;
            BeanReporteEjemplo.add(b);
        }

        return new SimpleTransaccionResponse(BeanReporteEjemplo);
    }

BeanReporteEjemplo
private double datoUno;
private double datoDos;
private String datoTres;

    public final static Campo PROP_DATO_UNO = new Campo("datoUno",
            "dato Uno", double.class, 150, false, null,
            new RendererSimple(Renderer.CENTER));
    public final static Campo PROP_DATO_DOS = new Campo(
            "datoDos", "dato Dos", double.class, 150, false,
            null, new RendererSimple(Renderer.CENTER));
    public final static Campo PROP_DATO_TRES = new Campo("datoTres", "dato Tres",
            String.class, 150, false, null,
            new RendererSimple(RendererSimple.CENTER));

 public static List<Campo> getCampos() {
        List<Campo> campos = new ArrayList<Campo>();

        campos.add(PROP_DATO_UNO);
        campos.add(PROP_DATO_DOS);
        campos.add(PROP_DATO_TRES);

        return campos;
    }

 getters() and Setters()....

Me arroja es siguiente error:

2019-11-01 09:53:06,642 WARN  :  SqlExceptionHelper - SQL Error: -4474, SQLState: null
  2019-11-01 09:53:06,642 ERROR :  SqlExceptionHelper - [jcc][1083][10406][3.66.46] Illegal conversion: can not convert from "byte[]" to "java.math.BigDecimal" ERRORCODE=-4474, SQLSTATE=null

El problema se presenta cuando paso un List: [164246, 164353, 123131,...] pero cuando, realizo una sub-consulta en lugar de pasarle el list,lo realiza sin problema. 
De esta forma no me genera ningún error. 
SELECT datoUno(double), datoDos(double), datoTres(varchar) 
FROM
    Table_ejemplo
WHERE
    dato_ID IN (SELECT
    DISTINCT dato
FROM
    tableExample
WHERE
    datoEjemplo = 1142
    AND datoEjemplo = 1);

Les agradecería si alguien pudiera orientarme para resolver esta situación.

A:

La solución de generar una sub-consulta en lugar de pasarle el list me fue funcional hasta cierto punto, debido a que no en todos los casos puedo generar las sub-consultas. 
Al final me di cuenta de un detalle muy básico la verdad. Pues estaba pasando un lista de datos como si fuera un solo parámetro, de esta forma:
query.setParameter("datoId",lstEjemplo); 

La forma correcta de realizarlo es la siguiente:
query.setParameterList("datoId",lstEjemplo)

