This problem occurs when your the CharacterSet of your Oracle instance is set to a non-standard value which are : US7ASCII, WE8DEC, WE8ISO8859P1, WE8MSWIN1252, UTF8.
How to know the Character Set on your server. Connect with the Nuxeo SID on your Oracle with your best sqlplus and call :
The character set is given in the NLS_CHARACTERSET line.
If your character set is not in the list above, you must put on your Nuxeo server Classpath the orai18n.jar. For instance, in JBoss, you must put this jar here :
You can download this jar from the Oracle website here : http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/htdocs/jdbc_10201.html
Cause of the problem :
In fact, when Nuxeo create a query with a Principal different of System, it appends on each request a security check like that :
but the driver instantiates correctly ARRAY object with the right number of elements, BUT each element becomes an empty string.
so Oracle receive something like :
without any error. And Nuxeo use query fetch chilren.