It might be an expected behaviour from informix in the case you are hitting a long transaction. This happens when the number of opérations within a single transaction exeeds the configured size of the logical log. Your application should receive a -458 Error, and in the engine log file you should see something like "Aborting Long Transaction: tx 0xHHHHHHHH username: user_name"
In this case, the solution is to add logical logs to the engine until the transaction succeeds.
If you don't have this error, this is probably a java side error, and I can't do anything for you :-(
Hope this helps