You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cxf.apache.org by "Yi Xiao (JIRA)" <ji...@apache.org> on 2012/10/19 04:26:02 UTC

[jira] [Created] (CXF-4583) When the logical handler return false processing the outbound message, the SoapMessage's body is always empty.

Yi Xiao created CXF-4583:
----------------------------

             Summary: When the logical handler return false processing the outbound message, the SoapMessage's body is always empty.
                 Key: CXF-4583
                 URL: https://issues.apache.org/jira/browse/CXF-4583
             Project: CXF
          Issue Type: Bug
          Components: JAX-WS Runtime
    Affects Versions: 2.6.2
            Reporter: Yi Xiao


According to the spec, when return false:
Normal message processing stops, close is called on each previously invoked handler in the chain, the message is dispatched.

So the message returned by endpoint should be dispatched to client, not always the empty body element.

In my case, the endpoint has built the soapMessage:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Header/>
  <soap:Body>
    <ns2:celsiusToFahrenheitResponse xmlns:ns2="http://jaxws.samples.ibm.com/">
      <return>116</return>
    </ns2:celsiusToFahrenheitResponse>
  </soap:Body>
</soap:Envelope>

but the client receives:
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Header/>
  <soap:Body/>
</soap:Envelope>

I find the LogicalHandlerOutInterceptor does not set the SoapMessage correct when the logicalHandler return false.


--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (CXF-4583) When the logical handler return false processing the outbound message, the SoapMessage's body is always empty.

Posted by "Yi Xiao (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CXF-4583?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13481450#comment-13481450 ] 

Yi Xiao commented on CXF-4583:
------------------------------

Hi Willem, I verify the path, it works fine.
Thanks very much.
                
> When the logical handler return false processing the outbound message, the SoapMessage's body is always empty.
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: CXF-4583
>                 URL: https://issues.apache.org/jira/browse/CXF-4583
>             Project: CXF
>          Issue Type: Bug
>          Components: JAX-WS Runtime
>    Affects Versions: 2.6.2
>            Reporter: Yi Xiao
>            Assignee: Willem Jiang
>              Labels: handler
>         Attachments: CXF-4853.patch
>
>
> According to the spec, when return false:
> Normal message processing stops, close is called on each previously invoked handler in the chain, the message is dispatched.
> So the message returned by endpoint should be dispatched to client, not always the empty body element.
> In my case, the endpoint has built the soapMessage:
> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
>   <soap:Header/>
>   <soap:Body>
>     <ns2:celsiusToFahrenheitResponse xmlns:ns2="http://jaxws.samples.ibm.com/">
>       <return>116</return>
>     </ns2:celsiusToFahrenheitResponse>
>   </soap:Body>
> </soap:Envelope>
> but the client receives:
> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
>   <soap:Header/>
>   <soap:Body/>
> </soap:Envelope>
> I find the LogicalHandlerOutInterceptor does not set the SoapMessage correct when the logicalHandler return false.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Resolved] (CXF-4583) When the logical handler return false processing the outbound message, the SoapMessage's body is always empty.

Posted by "Daniel Kulp (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CXF-4583?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Daniel Kulp resolved CXF-4583.
------------------------------

       Resolution: Fixed
    Fix Version/s: 2.7.1
                   2.6.4
                   2.5.7
    
> When the logical handler return false processing the outbound message, the SoapMessage's body is always empty.
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: CXF-4583
>                 URL: https://issues.apache.org/jira/browse/CXF-4583
>             Project: CXF
>          Issue Type: Bug
>          Components: JAX-WS Runtime
>    Affects Versions: 2.6.2
>            Reporter: Yi Xiao
>            Assignee: Willem Jiang
>              Labels: handler
>             Fix For: 2.5.7, 2.6.4, 2.7.1
>
>         Attachments: CXF-4853.patch
>
>
> According to the spec, when return false:
> Normal message processing stops, close is called on each previously invoked handler in the chain, the message is dispatched.
> So the message returned by endpoint should be dispatched to client, not always the empty body element.
> In my case, the endpoint has built the soapMessage:
> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
>   <soap:Header/>
>   <soap:Body>
>     <ns2:celsiusToFahrenheitResponse xmlns:ns2="http://jaxws.samples.ibm.com/">
>       <return>116</return>
>     </ns2:celsiusToFahrenheitResponse>
>   </soap:Body>
> </soap:Envelope>
> but the client receives:
> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
>   <soap:Header/>
>   <soap:Body/>
> </soap:Envelope>
> I find the LogicalHandlerOutInterceptor does not set the SoapMessage correct when the logicalHandler return false.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Assigned] (CXF-4583) When the logical handler return false processing the outbound message, the SoapMessage's body is always empty.

Posted by "Willem Jiang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CXF-4583?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Willem Jiang reassigned CXF-4583:
---------------------------------

    Assignee: Willem Jiang
    
> When the logical handler return false processing the outbound message, the SoapMessage's body is always empty.
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: CXF-4583
>                 URL: https://issues.apache.org/jira/browse/CXF-4583
>             Project: CXF
>          Issue Type: Bug
>          Components: JAX-WS Runtime
>    Affects Versions: 2.6.2
>            Reporter: Yi Xiao
>            Assignee: Willem Jiang
>              Labels: handler
>         Attachments: CXF-4853.patch
>
>
> According to the spec, when return false:
> Normal message processing stops, close is called on each previously invoked handler in the chain, the message is dispatched.
> So the message returned by endpoint should be dispatched to client, not always the empty body element.
> In my case, the endpoint has built the soapMessage:
> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
>   <soap:Header/>
>   <soap:Body>
>     <ns2:celsiusToFahrenheitResponse xmlns:ns2="http://jaxws.samples.ibm.com/">
>       <return>116</return>
>     </ns2:celsiusToFahrenheitResponse>
>   </soap:Body>
> </soap:Envelope>
> but the client receives:
> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
>   <soap:Header/>
>   <soap:Body/>
> </soap:Envelope>
> I find the LogicalHandlerOutInterceptor does not set the SoapMessage correct when the logicalHandler return false.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CXF-4583) When the logical handler return false processing the outbound message, the SoapMessage's body is always empty.

Posted by "Yi Xiao (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/CXF-4583?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Yi Xiao updated CXF-4583:
-------------------------

    Attachment: CXF-4853.patch

I also provide the patch for the issue,
Could you please review the patch?
Thanks a lot :)
                
> When the logical handler return false processing the outbound message, the SoapMessage's body is always empty.
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: CXF-4583
>                 URL: https://issues.apache.org/jira/browse/CXF-4583
>             Project: CXF
>          Issue Type: Bug
>          Components: JAX-WS Runtime
>    Affects Versions: 2.6.2
>            Reporter: Yi Xiao
>              Labels: handler
>         Attachments: CXF-4853.patch
>
>
> According to the spec, when return false:
> Normal message processing stops, close is called on each previously invoked handler in the chain, the message is dispatched.
> So the message returned by endpoint should be dispatched to client, not always the empty body element.
> In my case, the endpoint has built the soapMessage:
> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
>   <soap:Header/>
>   <soap:Body>
>     <ns2:celsiusToFahrenheitResponse xmlns:ns2="http://jaxws.samples.ibm.com/">
>       <return>116</return>
>     </ns2:celsiusToFahrenheitResponse>
>   </soap:Body>
> </soap:Envelope>
> but the client receives:
> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
>   <soap:Header/>
>   <soap:Body/>
> </soap:Envelope>
> I find the LogicalHandlerOutInterceptor does not set the SoapMessage correct when the logicalHandler return false.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (CXF-4583) When the logical handler return false processing the outbound message, the SoapMessage's body is always empty.

Posted by "Willem Jiang (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CXF-4583?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13481266#comment-13481266 ] 

Willem Jiang commented on CXF-4583:
-----------------------------------

Hi Xiao Yi,

Thanks for reporting it and providing the patch.
I did some changed on the patch and also added an unit test to verify the patch.

Please try out the latest SNAPSHOT for verification.

Willem

                
> When the logical handler return false processing the outbound message, the SoapMessage's body is always empty.
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: CXF-4583
>                 URL: https://issues.apache.org/jira/browse/CXF-4583
>             Project: CXF
>          Issue Type: Bug
>          Components: JAX-WS Runtime
>    Affects Versions: 2.6.2
>            Reporter: Yi Xiao
>            Assignee: Willem Jiang
>              Labels: handler
>         Attachments: CXF-4853.patch
>
>
> According to the spec, when return false:
> Normal message processing stops, close is called on each previously invoked handler in the chain, the message is dispatched.
> So the message returned by endpoint should be dispatched to client, not always the empty body element.
> In my case, the endpoint has built the soapMessage:
> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
>   <soap:Header/>
>   <soap:Body>
>     <ns2:celsiusToFahrenheitResponse xmlns:ns2="http://jaxws.samples.ibm.com/">
>       <return>116</return>
>     </ns2:celsiusToFahrenheitResponse>
>   </soap:Body>
> </soap:Envelope>
> but the client receives:
> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
>   <soap:Header/>
>   <soap:Body/>
> </soap:Envelope>
> I find the LogicalHandlerOutInterceptor does not set the SoapMessage correct when the logicalHandler return false.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (CXF-4583) When the logical handler return false processing the outbound message, the SoapMessage's body is always empty.

Posted by "Yi Xiao (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CXF-4583?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13481132#comment-13481132 ] 

Yi Xiao commented on CXF-4583:
------------------------------

Could someone take a look at the issue and review the patch? Thank you very much.
                
> When the logical handler return false processing the outbound message, the SoapMessage's body is always empty.
> --------------------------------------------------------------------------------------------------------------
>
>                 Key: CXF-4583
>                 URL: https://issues.apache.org/jira/browse/CXF-4583
>             Project: CXF
>          Issue Type: Bug
>          Components: JAX-WS Runtime
>    Affects Versions: 2.6.2
>            Reporter: Yi Xiao
>              Labels: handler
>         Attachments: CXF-4853.patch
>
>
> According to the spec, when return false:
> Normal message processing stops, close is called on each previously invoked handler in the chain, the message is dispatched.
> So the message returned by endpoint should be dispatched to client, not always the empty body element.
> In my case, the endpoint has built the soapMessage:
> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
>   <soap:Header/>
>   <soap:Body>
>     <ns2:celsiusToFahrenheitResponse xmlns:ns2="http://jaxws.samples.ibm.com/">
>       <return>116</return>
>     </ns2:celsiusToFahrenheitResponse>
>   </soap:Body>
> </soap:Envelope>
> but the client receives:
> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
>   <soap:Header/>
>   <soap:Body/>
> </soap:Envelope>
> I find the LogicalHandlerOutInterceptor does not set the SoapMessage correct when the logicalHandler return false.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira