JPA obsługuje użycie kolekcji jako parametru literału listy tylko w zapytaniach JPQL, a nie w zapytaniach natywnych. Niektórzy dostawcy JPA obsługują ją jako zastrzeżoną funkcję, ale nie jest ona częścią specyfikacji JPA (patrz https://stackoverflow.com/a/3145275/1285097).
Nazwane parametry w zapytaniach natywnych również nie są częścią specyfikacji JPA. Ich zachowanie zależy od dostawcy trwałości i/lub sterownika JDBC.
Hibernacja ze sterownikiem JDBC dla Oracle obsługuje obie te funkcje.
List<String> selectedValues = Arrays.asList("STRING1", "STRING2");
final String parameterizedQuery = "select * from SOMETABLE where SOMEFIELD in (:selectedValues)";
return em.createNativeQuery(parameterizedQuery)
.setParameter("selectedValues", selectedValues)
.getResultList();