I have one web service calling another (ws1 calling ws2). The WSDLs are
similar but different. Many of the input element values from the input of
ws1 are mapped directly to ws2 element values. One element is an xsd:any in
both WSDLs:
                            <xsd:complexType>
                                <xsd:sequence>
                                    <xsd:any namespace="##any" 
processContents="skip"/>
                                </xsd:sequence>
                            </xsd:complexType>

The "In" interceptors for ws1 handle this fine. The ws1 implementation code
handles mapping this element value with no problem. I set a breakpoint in an
"Out" logger interceptor to ws2 and the output SOAP message looks OK. The
last inceptor before the message is sent to ws2 breaks with the following
error. Does anyone know what might be going wrong? I am using CxF 2.2.4.


Thanks,
Howard

Caused by: org.apache.cxf.binding.soap.SoapFault: org.xml.sax.SAXException:
WSWS3084E: Error: SimpleDeserializer encountered a child element, which is
NOT expected, in something it was trying to deserialize. Message being
parsed: 
        at
org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:70)
        at
org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleMessage(Soap11FaultInInterceptor.java:35)
        at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:221)
        at
org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:96)
        at
org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:65)
        at
org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMessage(CheckFaultInterceptor.java:34)
        at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:221)
        at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:449)
        at
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:1996)
        at
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1832)
        at
org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutputStream.java:47)
        at 
org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:159)
        at 
org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
        at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:591)
        at
org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
        at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:221)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:296)
        at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:242)
        at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
        at 
org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:178)
        ... 65 more
-- 
View this message in context: 
http://old.nabble.com/xsd%3Aany-causing-SimpleDeserializer-error-in-MessageSenderInterceptor-tp26746834p26746834.html
Sent from the cxf-user mailing list archive at Nabble.com.

Reply via email to