Hi Oleg,

The easiest way to enable WS-RM on the server is to use a policy in your WSDL service definition. The released versions of CXF only support the old 1.0 version of WS-RM policy (the code in trunk for the 3.0 release supports WS-RM policy 1.2), so that's what you'd need to use. That's assuming you're using a WSDL service definition, though - are you?

The attached WSDL gives an example of how you can define the policy and reference it from the binding.

  - Dennis

On 09/24/2013 08:04 PM, Oleg Tikhonov wrote:
I even don't know how to set it up programmatically.

Can you advice me, how to do it?

Thanks a lot.



On Tue, Sep 24, 2013 at 11:01 AM, Aki Yoshida <[email protected]> wrote:

it looks like you haven't set up ws-rm at the server, so it is
rejecting the create sequence message, as it is unknown to the
service.



2013/9/24 Oleg Tikhonov <[email protected]>:
Hi Denis,

I did what you've been mentioning & get the similar message on the server
side.

Here is an output

"        at

org.apache.cxf.interceptor.DocLiteralInInterceptor.validatePart(DocLiteralInInterceptor.java:248)
[cxf-api-2.7.5.jar:2.7.5]
         at

org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage(DocLiteralInInterceptor.java:186)
[cxf-api-2.7.5.jar:2.7.5]
         at

org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271)
[cxf-api-2.7.5.jar:2.7.5]
         at

org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
[cxf-api-2.7.5.jar:2.7.5]
         at

org.apache.cxf.transport.http_jetty.JettyHTTPDestination.serviceRequest(JettyHTTPDestination.java:355)
[cxf-rt-transports-http-jetty-2.7.5.jar:2.7.5]
         at

org.apache.cxf.transport.http_jetty.JettyHTTPDestination.doService(JettyHTTPDestination.java:319)
[cxf-rt-transports-http-jetty-2.7.5.jar:2.7.5]
         at

org.apache.cxf.transport.http_jetty.JettyHTTPHandler.handle(JettyHTTPHandler.java:72)
[cxf-rt-transports-http-jetty-2.7.5.jar:2.7.5]
         at

org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1077)
[jetty-server-8.1.10.v20130312.jar:8.1.10.v20130312]
         at

org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1013)
[jetty-server-8.1.10.v20130312.jar:8.1.10.v20130312]
         at

org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
[jetty-server-8.1.10.v20130312.jar:8.1.10.v20130312]
         at

org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:255)
[jetty-server-8.1.10.v20130312.jar:8.1.10.v20130312]
         at

org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
[jetty-server-8.1.10.v20130312.jar:8.1.10.v20130312]
         at org.eclipse.jetty.server.Server.handle(Server.java:368)
[jetty-server-8.1.10.v20130312.jar:8.1.10.v20130312]
         at

org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:489)
[jetty-server-8.1.10.v20130312.jar:8.1.10.v20130312]
         at

org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:953)
[jetty-server-8.1.10.v20130312.jar:8.1.10.v20130312]
         at

org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:1014)
[jetty-server-8.1.10.v20130312.jar:8.1.10.v20130312]
         at
org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:861)
[jetty-http-8.1.10.v20130312.jar:8.1.10.v20130312]
         at
org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:240)
[jetty-http-8.1.10.v20130312.jar:8.1.10.v20130312]
         at

org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
[jetty-server-8.1.10.v20130312.jar:8.1.10.v20130312]
         at

org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:628)
[jetty-io-8.1.10.v20130312.jar:8.1.10.v20130312]
         at

org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
[jetty-io-8.1.10.v20130312.jar:8.1.10.v20130312]
         at

org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
[jetty-util-8.1.10.v20130312.jar:8.1.10.v20130312]
         at

org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
[jetty-util-8.1.10.v20130312.jar:8.1.10.v20130312]
         at java.lang.Thread.run(Thread.java:662) [rt.jar:1.6.0_43]

10:40:18,026 WARN  [ContextUtils] WS-Addressing - failed to retrieve
Message Addressing Properties from context
10:40:18,027 WARN  [ContextUtils] WS-Addressing - failed to retrieve
Message Addressing Properties from context
10:40:18,027 WARN  [RMOutInterceptor] Failed to retrieve message
addressing
properties from context - not ensuring reliable delivery.
10:40:18,028 WARN  [ContextUtils] WS-Addressing - failed to retrieve
Message Addressing Properties from context
"

Thanks!





On Tue, Sep 24, 2013 at 10:25 AM, Dennis Sosnoski <[email protected]>
wrote:
Hi Oleg,

I haven't worked with the JaxWsProxyFactoryBean approach, but isn't this
Fault coming from the server? You can enable logging to see what is
actually being sent and confirm where the problem is occurring:
http://cxf.apache.org/docs/**debugging-and-logging.html<
http://cxf.apache.org/docs/debugging-and-logging.html>
   - Dennis

Dennis M. Sosnoski
Java SOA and Web Services Consulting <http://www.sosnoski.com/**
consult.html <http://www.sosnoski.com/consult.html>>
CXF and Web Services Security Training <http://www.sosnoski.com/**
training.html <http://www.sosnoski.com/training.html>>
Web Services Jump-Start <http://www.sosnoski.com/**jumpstart.html<
http://www.sosnoski.com/jumpstart.html>

On 09/24/2013 06:39 PM, Oleg Tikhonov wrote:

Hello,

I got

"org.apache.cxf.binding.soap.**SoapFault: Message part {
http://schemas.xmlsoap.org/ws/**2005/02/rm}CreateSequence<
http://schemas.xmlsoap.org/ws/2005/02/rm%7DCreateSequence>was not
recognized."
Here is a code how I create a jaxws client:

[code]
     public static <T> T getProxyWSHandleReliable(**Class<T> clazz,
String url)
{
          JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
          factory.setServiceClass(clazz)**;
          factory.setAddress(url);
          factory.setBindingId(**Constants.WSDL_SOAP12);
          factory.getFeatures().add(new WSAddressingFeature());
          factory.getFeatures().add(new RMFeature());

          return clazz.cast(factory.create());
      }
[/code]

Here is a declaration in the wsdl
[code]
      <wsrm:RMAssertion xmlns:wsrm="
http://schemas.xmlsoap.org/ws/**2005/02/rm/policy<
http://schemas.xmlsoap.org/ws/2005/02/rm/policy>
">
           <wsrm:InactivityTimeout Milliseconds="600000"/>
           <wsrm:AcknowledgementInterval Milliseconds="200"/>
      </wsrm:RMAssertion>
[/code]


How to nail this problem?

Thanks in advance,

Oleg



Attachment: rmtest.wsdl
Description: XML document

Reply via email to