JPA ondersteunt het gebruik van een verzameling als een letterlijke parameter voor een lijst alleen in JPQL-query's, niet in native query's. Sommige JPA-providers ondersteunen het als een propriëtaire functie, maar het maakt geen deel uit van de JPA-specificatie (zie https://stackoverflow.com/a/3145275/1285097).
Benoemde parameters in native query's maken ook geen deel uit van de JPA-specificatie. Hun gedrag hangt af van de persistentieprovider en/of het JDBC-stuurprogramma.
Slaapstand met het JDBC-stuurprogramma voor Oracle ondersteunt beide functies.
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();