Thanks Martin,
I’ve checked it, transaction is open and not committed. I found the problem though, I was starting the transaction by calling a method startTransaction on a Stateful bean which calls getUserTransaction().begin(); and from that code (the initial caller) I was trying to get an accessor. Apparently the thread group changes or there is some relationship between the stack trace and the way transactions are monitored, but when the transaction is started from a point that cannot be traced back from the statement that is creating the accessor, the implementation seems to fail.
To describe it better:
- Main → statefulbean.startTransaction() → getUserTransaction().begin
- Main → EntityBean->ejbLoad() → getAccessor() – *** FAILS!!!
Now, to solve it:
- Main → statefulbean.startTransaction() → getUserTransaction().begin
- Main → statefulbean.doWhatever() → EntityBean->ebjLoad() → getAccessor() – WORKS!!
So, that solved that part of the problem.
On the other hand, I keep having the serialization problem. In my stateful bean, there are no references to any non-serializable object, and the exception is thrown by an object which is Weblogic’s implementation, called ServerTransactionImpl(). So, is that object probably hanging a reference to Tamino’s implementation that is not serializable?
Thanks,
– Juan
#webMethods-Tamino-XML-Server-APIs#API-Management#webMethods