We are using JBOSS-4.2.3, java1.5,oracle10g and ejb2.0.
We have two Servers are running with different JVM hosted in different physial machines. In the first server Bean A is starting the transaction with transaction attribute (RequiresNew) and calling bean B hosted in same application server with the transaction attribute (Supports) and involving many databases and making the remote call to Bean C (RequiresNew) hosted in different application server. The problem is, when the Bean C (Remote Call) is throwing error, we are trying to rollback complete transaction in both the servers. But the roll back is not happening in the Server A it is perfectly fine in Server B.
Even I have changed the Bean C is transaction attribute to Required for propagating the transaction from Server A, Still the problem is exist.
Exception propagation is proper and we are catching the exception in Server A. But the transaction is commiting from Bean A and Bean B.
We are using XA transactions in both the servers.
In case of error, I want to rollback the complete transaction in both the servers. Is it possible? Can anyone help me to share the knowledge or help me to resovle the problem?
Is there any limitatation with JBOSS-4.X.X for distributed transaction?