-
Bug
-
Resolution: Done
-
Major
-
None
-
None
SourceForge Submitter: mpichler .
We have implemented a JCA connector with local
transaction support. When our EIS reports a failure on
commit we do a rollback ourselves and throw a
LocalTransactionException to indicate that the
transaction was rolled back instead of successfully
committed.
Afterwards it seems that jboss tries to issue a
rollback itself which results in a
JBossLocalXAException: wrong xid in rollback: expected:
null, got: XidImpl [FormatId=257,
GlobalId=mpichler//711, BranchQual=1. This might be
relateed to the (closed) bug #1056320
http://sourceforge.net/tracker/?group_id=22866&atid=376685&func=detail&aid=1056320
As a result, the client is sent a RollbackException
(org.jboss.tm.JBossRollbackException) as expected
(perfectly normal).
However: when it is a remote client commiting an
UserTransaction, the nested root cause
JBossLocalXAException cannot be deserialized, because
it is not in jbossall-client.jar,
and the remote client gets:
java.rmi.UnmarshalException: Error unmarshaling
return; nested exception is:
java.lang.ClassNotFoundException:
org.jboss.resource.connectionmanager.JBossLocalXAException
(no security manager: RMI class loader disabled)
- thus it cannot receive/handle the RollbackException
properly.
We use jboss 3.2.3 under both Linux and WinXP, with JDK
1.4.2.