WS-RM conflicts with schema validation on application endpoint
--------------------------------------------------------------

                 Key: CXF-905
                 URL: https://issues.apache.org/jira/browse/CXF-905
             Project: CXF
          Issue Type: Bug
          Components: WS-* Components
            Reporter: Andrea Smyth
             Fix For: 2.1


If schema validation is enabled for an application endpoint (as is the case in 
the hello_world sample), RM cannot be used at the same time, i.e. addition of 
the following to the config file of the hello_world sample will make it fail:

<cxf:bus>
      <cxf:features>
          <wsa:addressing usingAddressingAdvisory="true"/>
          <wsrm-mgr:reliableMessaging/>
          <cxf:logging/>
       </cxf:features>
</cxf:bus>

The reason for the failure is an attempt to validate the RM protocol messages 
also, e.g. when the clients send it's CreateSequence request, a 
MarshalException is thrown:

     [java] SEVERE: Failed to send RM protocol message 
{http://schemas.xmlsoap.org/ws/2005/02/rm}CreateSequence.
     [java] org.apache.cxf.interceptor.Fault: Marshalling Error: cvc-elt.1: 
Cannot find the declaration of element 'CreateSequence'.
     [java]     at 
org.apache.cxf.jaxb.JAXBEncoderDecoder.marshall(JAXBEncoderDecoder.java:176)
     [java]     at 
org.apache.cxf.jaxb.io.DataWriterImpl.write(DataWriterImpl.java:42)
     [java]     at 
org.apache.cxf.interceptor.AbstractOutDatabindingInterceptor.writeParts(AbstractOutDatabindingInterceptor.java:83)
     [java]     at 
org.apache.cxf.interceptor.BareOutInterceptor.handleMessage(BareOutInterceptor.java:68)
     [java]     at 
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:207)
     [java]     at 
org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:254)
     [java]     at 
org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:205)
     [java]     at org.apache.cxf.ws.rm.Proxy.invoke(Proxy.java:247)
     [java]     at org.apache.cxf.ws.rm.Proxy.createSequence(Proxy.java:162)
     [java]     at 
org.apache.cxf.ws.rm.RMManager.getSequence(RMManager.java:316)
     [java]     at 
org.apache.cxf.ws.rm.RMOutInterceptor.handle(RMOutInterceptor.java:129)
     [java]     at 
org.apache.cxf.ws.rm.AbstractRMInterceptor.handleMessage(AbstractRMInterceptor.java:78)
     [java]     at 
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:207)
     [java]     at 
org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:254)
     [java]     at 
org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:205)
     [java]     at 
org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
     [java]     at 
org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:135)
     [java]     at $Proxy28.sayHi(Unknown Source)
     [java]     at demo.hw.client.Client.main(Client.java:61)
     [java] Caused by: javax.xml.bind.MarshalException

Schema validation should not apply to RM protocol messages.

-- 
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