ORA-24816 ... on Liferay embedded server but not on integration server

435 views Asked by At

I am using Liferay IDE bundeled with Tomcat for Liferay Portal 6.1 ... Now I have some method (that I have no control on) that creates an insert statement according to some inputs and run it against the DB .. It uses internally jdbc (and oracle driver thus ... as we are dealing with Oracle DB)

This methods gives me this error : ORA-24816: Expanded non LONG bind data supplied after actual LONG or LOB column

which after some investigation I knew that it's a bug in oracle when a CLOB column comes before a VARCHAR column in the statement ... and thus the statement needs to be tuned

The weird thing is that it the same code works fine on the integration server (jboss) !!!

I need to know the reason as well as a way to solve it. Actually I doubt that the reason is in the oracle driver

2

There are 2 answers

0
osama yaccoub On BEST ANSWER

I replaced the ojdbc6.jar by the one on the integration server and it worked fine

1
Anup Dey On

ORA-24816: Expanded non LONG bind data supplied after actual LONG or LOB column Cause: A Bind value of length potentially > 4000 bytes follows binding for LOB or LONG. Action: Re-order the binds so that the LONG bind or LOB binds are all at the end of the bind list.

Here is a link to a thread in an Oracle venue discussing this issue: http://forums.oracle.com/forums/thre...5560&tstart=15