Non uso PostgreSQL ma se non trovi una soluzione adeguata a questo problema puoi implementare un interceptor (extend EmptyInterceptor) e modificare la tua query su onPrepareStatement(String sql)
.
Ciò significa che potresti usare qualcosa come my_array[1|300]
e riscrivendolo come my_array[1:300]
per risolvere il problema dei parametri denominati.
Modifica :Non sono sicuro al 100% che quanto sopra funzioni (riscrivendo l'SQL nativo e se il parser della query consentirebbe il carattere speciale). Ho eseguito solo quanto sopra in HQL e criteri in cui stavo passando il suggerimento dell'indice come commento alla query.