É uma limitação do Oracle, e é por isso que ele tem um código de erro do Oracle ... embora você possa argumentar que é uma limitação do Hibernate que ele não funciona de maneira transparente :)
Você provavelmente deve colocar a lista em uma tabela temporária e ingressar nela, supondo que a Oracle não tenha nada parecido com o parâmetros com valor de tabela . (Ou você pode dividir sua consulta em várias consultas, potencialmente - depende do que você está fazendo.)