I tried to create a sample application using JBoss + Castor which could write some objects to the underlaying persistent store. It worked fine until I tried to add transaction support. So the problem is that I started a transaction in the client and then called couple bean methods which used castor for persistence. Then the last call throws an exception and I rollback the whole transaction back in the client expecting that none of the call would create anything in the db. However all the objects were written during the method call and only the last wasn’t. I thought that if I get the DataObjects from the JNDI the container should take care about the transaction management. can anyone help me on this topic?