You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commons-dev@ws.apache.org by "Andreas Veithen (JIRA)" <ji...@apache.org> on 2008/12/07 16:09:44 UTC

[jira] Resolved: (WSCOMMONS-399) SOAP11FaultCodeImpl can not handle fault report correctly

     [ https://issues.apache.org/jira/browse/WSCOMMONS-399?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Andreas Veithen resolved WSCOMMONS-399.
---------------------------------------

    Resolution: Fixed

The reported of the issue confirmed that it is solved in trunk, so marking this issue as resolved.

> SOAP11FaultCodeImpl can not handle fault report correctly
> ---------------------------------------------------------
>
>                 Key: WSCOMMONS-399
>                 URL: https://issues.apache.org/jira/browse/WSCOMMONS-399
>             Project: WS-Commons
>          Issue Type: Bug
>          Components: AXIOM
>         Environment: AXIOM 1.2.6 or AXIOM 1.2.7, axixs 1.4.1, rampart 1.4, Java 6
>            Reporter: jason zhang
>            Assignee: Nandana Mihindukulasooriya
>            Priority: Critical
>
> I use AXIOM style client code to invoke service. My service is implemented using generated stub. It uses policy for security.  To test the fault handling, my server code always throws AxisFault.
> If the client code has this line: "options.setSoapVersionURI(org.apache.axiom.soap.SOAP12Constants.SOAP_ENVELOPE_NAMESPACE_URI);",  the AxisFault is reported back correctly to client. The response is like this
> --------------------
> HTTP/1.1 500 Internal Server Error
> Server: Apache-Coyote/1.1
> Content-Type: application/soap+xml; action="http://www.w3.org/2005/08/addressing/soap/fault";charset=UTF-8
> Transfer-Encoding: chunked
> Date: Thu, 23 Oct 2008 04:29:32 GMT
> Connection: close
> <?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope"><soapenv:Body><soapenv:Fault xmlns:axis2ns5="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Code><soapenv:Value>axis2ns5:Server</soapenv:Value></soapenv:Code>
> de
> <soapenv:Reason><soapenv:Text xml:lang="en-US">error ...</soapenv:Text></soapenv:Reason>
> --------------------------
> If the client code does not have that line, the message is sent to server using SOAP 11 style,
> The response is a HTTP error from tomcat.
> ---------------------
> HTTP/1.1 500 Internal Server Error
> Server: Apache-Coyote/1.1
> Content-Type: text/html;charset=utf-8
> Content-Length: 1000
> Date: Thu, 23 Oct 2008 04:30:06 GMT
> Connection: close
> <html><head><title>Apache Tomcat/6.0.16 - Error report</title><style>...</style> </head><body><h1>HTTP Status 500 - </h1><HR size="1" noshade="noshade"><p><b>type</b> Status report</p><p><b>message</b> <u></u></p><p><b>description</b> <u>The server encountered an internal error () that prevented it from fulfilling this request.</u></p><HR size="1" noshade="noshade"><h3>Apache Tomcat/6.0.16</h3></body></html>
> ----------------------------
> I traced the error to org.apache.axiom.soap.impl.builder.SOAP11BuilderHelper line 151
>  private void processText(XMLStreamReader parser, OMElement value) {
>         try {
> 146            int token = parser.next();
>  147           while (token != XMLStreamReader.END_ELEMENT) {
> 148                if (token == XMLStreamReader.CHARACTERS) {
> 149                    factory.createOMText(value, parser.getText());
> 150                } else {
> 151                    throw new SOAPProcessingException(
>                             "Only Characters are allowed here");
>                 }
>                 token = parser.next();
>             }
>         } catch (XMLStreamException e) {
>             throw new SOAPProcessingException(e);
>         }
>     }
> When the error occurs, the value is an org.apache.axiom.soap.impl.dom.soap11.SOAP11FaultCodeImpl element. token is 1(StartElement).
> This may be related to this bug: https://issues.apache.org/jira/browse/WSCOMMONS-104. However, that bug is marked as resolved/fixed.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.