Soap11FaultInInterceptor.unmarshalFault for valid SOAP message
--------------------------------------------------------------

                 Key: CXF-2559
                 URL: https://issues.apache.org/jira/browse/CXF-2559
             Project: CXF
          Issue Type: Bug
          Components: Soap Binding
    Affects Versions: 2.2.5
            Reporter: Kees de Kooter


I call a webservice which returns the following (fault) message:

{code:xml}
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xmlns:xsd="http://www.w3.org/2001/XMLSchema";>
  <SOAP-ENV:Body>
    <SOAP-ENV:Fault>
      <faultstring>engine::exception: Can't call method "namespaceURI" on an 
undefined value at /var/www/html/XXXXX/package/engine/xml_utils.pm line 272.
</faultstring>
      <faultcode/>
      <stacktrace>Session:eurogroup_ajCqNqED3rZakVOh, Time:2009-11-25 19:43:14, 
Version:2.0.76-370, Username:pharos
/var/www/html/XXXXX/package/engine/exception.pm (53)
- 
/var/www/html/XXXXX/package/engine/instanciable.pm(22):engine::exception::create
- /var/www/html/XXXXX/package/engine/exception.pm(159):engine::instanciable::new
- 
/var/www/html/XXXXX/package/engine.pm(788):engine::exception::getExceptionFromError
- /var/www/html/XXXXX/package/engine.pm(786):(eval)
- /var/www/html/XXXXX/cgi/rsoapserver.cgi(18):engine::end
- 
/opt/rsl/usr/lib/perl5/vendor_perl/5.10.0/i686-linux-thread-multi/ModPerl/RegistryCooker.pm(204):ModPerl::ROOT::ModPerl::Registry::var_www_html_XXXXX_cgi_rsoapserver_2ecgi::handler
- 
/opt/rsl/usr/lib/perl5/vendor_perl/5.10.0/i686-linux-thread-multi/ModPerl/RegistryCooker.pm(204):(eval)
- 
/opt/rsl/usr/lib/perl5/vendor_perl/5.10.0/i686-linux-thread-multi/ModPerl/RegistryCooker.pm(170):ModPerl::RegistryCooker::run
- 
/opt/rsl/usr/lib/perl5/vendor_perl/5.10.0/i686-linux-thread-multi/ModPerl/Registry.pm(31):ModPerl::RegistryCooker::default_handler
- -e(0):ModPerl::Registry::handler
- -e(0):(eval)
</stacktrace>
    </SOAP-ENV:Fault>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>
{code}

The message contains valid xml as far a I can tell. Still the following 
exception is thrown:

{noformat}
Caused by: com.ctc.wstx.exc.WstxParsingException: Received non-all-whitespace 
CHARACTERS or CDATA event in nextTag().
 at [row,col {unknown-source}]: [21,0]
        at 
com.ctc.wstx.sr.StreamScanner.constructWfcException(StreamScanner.java:580)
        at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java:453)
        at com.ctc.wstx.sr.StreamScanner.throwParseError(StreamScanner.java:438)
        at 
com.ctc.wstx.sr.BasicStreamReader.nextTag(BasicStreamReader.java:1141)
        at 
org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.unmarshalFault(Soap11FaultInInterceptor.java:57)
        at 
org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:46)
        at 
org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:35)
        at 
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:239)
        at 
org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:96)
        at 
org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:69)
        at 
org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:34)
        at 
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:239)
        at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:671)
        at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:2205)
        at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:2084)
        at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1982)
        at 
org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputStream.java:47)
        at 
org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:188)
        at 
org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
        at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:637)
        at 
org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
        at 
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:239)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:483)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:309)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:261)
        at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
        at 
org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:124)
        ... 25 more

{noformat}

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

Reply via email to