The remote interface can be marked with an annotation to control transaction propagation with
org.jboss.ejb.client.annotation.ClientTransactionPolicy.*
This can be useful if the application need to ensure a specific Tx behaviour for this combination.
Remember the client does not know whether the server side is flagged to use Tx or not!
But there are different issues
- the Remote interface is polluted with WildFly specific annotations
consider the interface could be used in an environment without WildFly - any call to the remote application should not propagate Tx context
- any call to a remote server should not propagate a Tx context
Consider former versions where able to control the Tx propagation by using JTA or JTS
To have more control for the application assembler or server administrator the transaction propagation should be controlled with deployment descriptor or server configuration.
possible solutions to disable the Tx propagation
- add a flag in ejb-client.xml application descriptor (affect this application)
- add a configuration for remote-outbound-connection (affect this connection including a possible cluster)
- add a configuration server wide (affect all remote outbound connections)
- clones
-
WFLY-9754 Global flag to supress transaction propagation for EJB clients inside of an server application
- Resolved