Application servers I think have a built in Transaction Manager that is JTS compliant. But you are forced to use Entity/Session beans inorder to use the JTS API's. Is it possible to have non-ejb java code to use the JTS API and have the transactions propogated?