Vynechejte array[...]
z vašeho SQL:
WHERE CAST(:commoditySpecIds AS BIGINT[])
a poté předat seznam ID jako řetězec, který vypadá takto:
"{1,2,3,4}"
Výchozí toString() pro seznamy obvykle vrací něco jako:"[1,2,3]"
, takže můžete udělat něco takového:
String literal = commoditySpecsIds.toString();
literal = "{" + literal.substring(1,literal.length() - 1) + "};
a pak to předejte své matné vrstvě:
setParameter("commoditySpecIds", literal)