JAX-WS: Message is lost when JAX-WS client handler returns false ----------------------------------------------------------------
Key: AXIS2-4862 URL: https://issues.apache.org/jira/browse/AXIS2-4862 Project: Axis2 Issue Type: Bug Reporter: Rich Scheuerle Assignee: Rich Scheuerle Background: The JAX-WS handler chain is run within the JAX-WS module of Axis2. The JAX-WS module has its own MessageContext (org.apache.axis2.jaxws.core.MessageContext) and this MessageContext has its own "blob" object (Message) that holds the xml message. When flow logically enters and leaves the JAX-WS module, information (like the Message) is propogated to/from the Axis2 MessageContext. For example, when a JAX-WS client handler edits the xml message (via SAAJ apis), it is actually editing the Message object on the jaxws core MessageContext. After the handler chain completes, the flow of control moves from the JAX-WS module into the Axis2 outbound transport layer. At that time, the Message object is propogated to the Axis2 MessageContext as an OM SOAPEnvelope. Problem: A user's JAX-WS client outbound handler's handleMessage method will return false if the the user wants the handler chain to stop processing the message. In such cases, the chain is reversed and the outbound message becomes the inbound message. The handlers are called and processing returns to the client application which invoked the BindingProvider (dispatch or proxy). The problem is that the Message that was edited by the outbound handler(s) is lost when the chain is reversed. Thus the client application receives the wrong Message and fails. Solution: The JAX-WS runtime was failing to propogate its Message object to the Axis2 MessageContext's OM SOAPEnvelope in this scenario. The code will be changed to add this copy when the handler chain processing reverses the handler chain. I am testing this solution now. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. --------------------------------------------------------------------- To unsubscribe, e-mail: java-dev-unsubscr...@axis.apache.org For additional commands, e-mail: java-dev-h...@axis.apache.org