-
1. Re: A handler that needs to be called before the EJB transac
hbraun Mar 24, 2006 11:22 AM (in response to ivanneto)You can implement your own ServiceEndpointInvoker that subclasses from ServiceEndpointInvokerEJB21.
Simply overwriteprotected boolean callRequestHandlerChain(ServiceEndpointInfo seInfo) { // The handler chain is called from the HandlerCallback return true; } protected boolean callResponseHandlerChain(ServiceEndpointInfo seInfo) { // The handler chain is called from the HandlerCallback return true; } protected boolean callFaultHandlerChain(ServiceEndpointInfo seInfo, Exception ex) { // The handler chain is called from the HandlerCallback return true; }
and insert your TXHandler.
You'll need to reconfigure JBossWS service.xml in order to use your custom invoker:<mbean name="jboss.ws:service=ServiceEndpointManager" code="org.jboss.ws.server.ServiceEndpointManager"> [...] <attribute name="ServiceEndpointInvokerEJB21">my.CustomEJB21Invoker</attribute> [..] </mbean>
-
2. Re: A handler that needs to be called before the EJB transac
jason.greene Mar 24, 2006 1:44 PM (in response to ivanneto)Yes, we are aware of this problem:
http://jira.jboss.com/jira/browse/JBWS-737
We need the ability to control whether a handler should be executed before or after transactional boundaries.
-Jason -
3. Re: A handler that needs to be called before the EJB transac
thomas.diesler Mar 28, 2006 2:39 AM (in response to ivanneto)I suggest to decouple the handlers in the configuration from the deployment handlers. The config handlers would be executed before the invocation.
With a JSE the call sematics would not change. With an EJB endpoint, the cofig handlers would be excuted before any EJB interceptor the deployment handlers would be would be excuted triggered from the ServiceEndpointInterceptor (as it is now).
This issues is also related to
Dynamically inject ServiceEndpointInterceptor
http://jira.jboss.com/jira/browse/JBWS-758