You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@servicemix.apache.org by "Eric Dofonsou (JIRA)" <ji...@apache.org> on 2006/05/17 14:14:51 UTC

[jira] Created: (SM-433) Issue in the way servicemix handle soap errors

Issue in the way servicemix handle soap errors
----------------------------------------------

         Key: SM-433
         URL: https://issues.apache.org/activemq/browse/SM-433
     Project: ServiceMix
        Type: Bug

  Components: servicemix-http  
 Environment: Servicemix 3.0  ALL
    Reporter: Eric Dofonsou
     Fix For: 3.0
 Attachments: ConsumerProcessor.java, ProviderProcessor.java

With the current version of servicemix (3.0) , my soap fault message is replace by the following HTTP error message:
------
<html>
   <head>
      <title>Error 500 Unknown Error</title>
   </head>
   <body>
      <h2>HTTP ERROR: 500</h2>
      <pre>Unknown Error</pre>
      <p>RequestURI=/Service/</p>
      <p>
         <i>
            <small>
               <a
href="http://jetty.mortbay.org">Powered by
Jetty://</a>
            </small>
         </i>
      </p>
   </body>
</html>
----

because of this message, my generated stubs cannot
properly handle the soap message.
-------
The best solution would be to have my soap fault message return to the calling client "as is" so all my business rules can be handle.

After a few discussion with Guillaume, I've come up with a solution that handle sthe soap faul correctly, what this does is to no longer return an HTTP error message when we get a soap fault on the provider processeur.  The soap fault is send as a property of the message to the consumer endpoint who then rebuild the soap fault (and does the conversion (1.1 <-> 1.2) if required.

Ps : The conversion from 1.1 -> 1.2 is not handle in this code (I had not quick means of testing it).

Attached are the modified files : ConsumerProcessor.java, ProviderProcessor.java

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   https://issues.apache.org/activemq/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira


[jira] Resolved: (SM-433) Issue in the way servicemix handle soap errors

Posted by "Guillaume Nodet (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/activemq/browse/SM-433?page=all ]
     
Guillaume Nodet resolved SM-433:
--------------------------------

    Fix Version: 3.0-M2
                     (was: 3.0)
     Resolution: Fixed
      Assign To: Guillaume Nodet

Author: gnodet
Date: Thu May 18 16:16:09 2006
New Revision: 407656

URL: http://svn.apache.org/viewvc?rev=407656&view=rev
Log:
SM-433: better handling of soap errors (especially with different soap versions)

Added:
    incubator/servicemix/trunk/servicemix-soap/src/test/java/org/apache/servicemix/soap/marshalers/FaultTest.java
    incubator/servicemix/trunk/servicemix-soap/src/test/resources/org/apache/servicemix/soap/marshalers/fault-1.1-ok.xml
    incubator/servicemix/trunk/servicemix-soap/src/test/resources/org/apache/servicemix/soap/marshalers/fault-1.2-ok.xml
Modified:
    incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/jaxp/XMLStreamHelper.java
    incubator/servicemix/trunk/servicemix-core/src/main/java/org/apache/servicemix/jbi/util/DOMUtil.java
    incubator/servicemix/trunk/servicemix-http/src/main/java/org/apache/servicemix/http/HttpEndpoint.java
    incubator/servicemix/trunk/servicemix-http/src/main/java/org/apache/servicemix/http/processors/ProviderProcessor.java
    incubator/servicemix/trunk/servicemix-http/src/test/java/org/apache/servicemix/http/HttpAddressingTest.java
    incubator/servicemix/trunk/servicemix-http/src/test/java/org/apache/servicemix/http/HttpSoapTest.java
    incubator/servicemix/trunk/servicemix-http/src/test/resources/org/apache/servicemix/http/addressing.xml
    incubator/servicemix/trunk/servicemix-soap/src/main/java/org/apache/servicemix/soap/SoapEndpoint.java
    incubator/servicemix/trunk/servicemix-soap/src/main/java/org/apache/servicemix/soap/SoapFault.java
    incubator/servicemix/trunk/servicemix-soap/src/main/java/org/apache/servicemix/soap/marshalers/JBIMarshaler.java
    incubator/servicemix/trunk/servicemix-soap/src/main/java/org/apache/servicemix/soap/marshalers/SoapMarshaler.java
    incubator/servicemix/trunk/servicemix-soap/src/main/java/org/apache/servicemix/soap/marshalers/SoapMessage.java
    incubator/servicemix/trunk/servicemix-soap/src/main/java/org/apache/servicemix/soap/marshalers/SoapReader.java
    incubator/servicemix/trunk/servicemix-soap/src/main/java/org/apache/servicemix/soap/marshalers/SoapWriter.java
    incubator/servicemix/trunk/servicemix-soap/src/test/java/org/apache/servicemix/soap/marshalers/SoapMessageMarshalerTest.java




> Issue in the way servicemix handle soap errors
> ----------------------------------------------
>
>          Key: SM-433
>          URL: https://issues.apache.org/activemq/browse/SM-433
>      Project: ServiceMix
>         Type: Bug

>   Components: servicemix-http
>  Environment: Servicemix 3.0  ALL
>     Reporter: Eric Dofonsou
>     Assignee: Guillaume Nodet
>      Fix For: 3.0-M2
>  Attachments: ConsumerProcessor.java, ProviderProcessor.java
>
>
> With the current version of servicemix (3.0) , my soap fault message is replace by the following HTTP error message:
> ------
> <html>
>    <head>
>       <title>Error 500 Unknown Error</title>
>    </head>
>    <body>
>       <h2>HTTP ERROR: 500</h2>
>       <pre>Unknown Error</pre>
>       <p>RequestURI=/Service/</p>
>       <p>
>          <i>
>             <small>
>                <a
> href="http://jetty.mortbay.org">Powered by
> Jetty://</a>
>             </small>
>          </i>
>       </p>
>    </body>
> </html>
> ----
> because of this message, my generated stubs cannot
> properly handle the soap message.
> -------
> The best solution would be to have my soap fault message return to the calling client "as is" so all my business rules can be handle.
> After a few discussion with Guillaume, I've come up with a solution that handle sthe soap faul correctly, what this does is to no longer return an HTTP error message when we get a soap fault on the provider processeur.  The soap fault is send as a property of the message to the consumer endpoint who then rebuild the soap fault (and does the conversion (1.1 <-> 1.2) if required.
> Ps : The conversion from 1.1 -> 1.2 is not handle in this code (I had not quick means of testing it).
> Attached are the modified files : ConsumerProcessor.java, ProviderProcessor.java

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   https://issues.apache.org/activemq/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira