Hello Dennis,

Thank you very much for the information. 
I will look at the code on cxf trunk a little bit later.


Best Regards,
Sergey Zhemzhitsky
Information Technology Division
Troika Dialog, 4, Romanov lane, Moscow 125009, Russia
Phone. +7 495 2580500 ext. 1246

-----Original Message-----
From: Dennis Sosnoski [mailto:[email protected]] 
Sent: Monday, October 10, 2011 3:21 PM
To: [email protected]
Subject: Re: WS-ReliableMessaging + .NET WCF WebService

Hi Sergey,

It looks like WCF is using the same variation of WS-ReliableMessaging
1.0 as Metro (no surprise, since Metro usually follows WCF in everything). The 
upcoming 2.5 release of CXF will support this variation, along with standard 
WS-RM 1.1/1.2.

I've tested the WS-RM 1.0 variation code with Metro, though not yet with WCF. 
If you're interested in trying it out using a nightly build, you currently need 
to set a flag in your client code to turn on the 
http://www.w3.org/2005/08/addressing namespace:

       
provider.getRequestContext().put(RMManager.WSRM_WSA_VERSION_PROPERTY,
Names.WSA_NAMESPACE_NAME);

It'd be great if you would try this out and confirm that it works with WCF.

Thanks,

  - Dennis

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


On 10/10/2011 11:37 PM, Zhemzhitsky Sergey wrote:
> Hi there,
>
> I'm using CXF 2.4.2 and I'm wondering whether it is possible to make 
> WS-ReliableMessaging work between CXF and WCF.
>
> It seems that WCF service does not understand requests from CXF 
> because they look like this <soap:Envelope 
> xmlns:soap="http://www.w3.org/2003/05/soap-envelope";>
>     <soap:Header>
>         <Action 
> xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing";>http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequence</Action>
>         <MessageID 
> xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing";>urn:uuid:c84a45d6-27df-4ce1-a517-6fe22d5b58cb</MessageID>
>         <To 
> xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing";>https://localhost:8089/CodexService/main/</To>
>         <ReplyTo xmlns="http://schemas.xmlsoap.org/ws/2004/08/addressing";>
>             
> <Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</Address>
>         </ReplyTo>
>     </soap:Header>
>     <soap:Body>
>         <CreateSequence xmlns="http://schemas.xmlsoap.org/ws/2005/02/rm"; 
> xmlns:ns2="http://schemas.xmlsoap.org/ws/2004/08/addressing";>
>             <AcksTo>
>                 
> <ns2:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</ns2:Address>
>             </AcksTo>
>             <Expires>PT0S</Expires>
>             <Offer>
>                 
> <Identifier>urn:uuid:9931e221-5bbe-44c8-a365-9de5304b5544</Identifier>
>                 <Expires>PT0S</Expires>
>             </Offer>
>         </CreateSequence>
>     </soap:Body>
> </soap:Envelope>
>
> However requests from .NET client look like this and they can be handled 
> successfully:
> <s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope"; 
> xmlns:a="http://www.w3.org/2005/08/addressing";>
>     <s:Header>
>         <a:Action 
> s:mustUnderstand="1">http://schemas.xmlsoap.org/ws/2005/02/rm/CreateSequence</a:Action>
>         
> <a:MessageID>urn:uuid:9e0fb500-eba8-40a0-8855-7c25fc930e58</a:MessageID>
>         <a:To 
> s:mustUnderstand="1">https://localhost:8089/CodexService/main</a:To>
>     </s:Header>
>     <s:Body>
>         <CreateSequence xmlns="http://schemas.xmlsoap.org/ws/2005/02/rm";>
>             <AcksTo>
>                 
> <a:Address>http://www.w3.org/2005/08/addressing/anonymous</a:Address>
>             </AcksTo>
>             <Offer>
>                 
> <Identifier>urn:uuid:0d2dc269-1ecf-452c-98ff-7e9a0c591015</Identifier>
>             </Offer>
>         </CreateSequence>
>     </s:Body>
> </s:Envelope>
>
> As you can see the requests are different.
>
> Here is part of WSDL with WS-RM policies
>
> <wsrm:RMAssertion 
> xmlns:wsrm="http://schemas.xmlsoap.org/ws/2005/02/rm/policy";>
>     <wsrm:InactivityTimeout Milliseconds="600000" />
>     <wsrm:AcknowledgementInterval Milliseconds="5000" /> 
> </wsrm:RMAssertion>
>
> So the question is how to make CXF compatible with WCF service? And how to 
> make it use http://www.w3.org/2005/08/addressing/anonymous address instead of 
> http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous?
>
> Best Regards,
> Sergey Zhemzhitsky
>
>
> _______________________________________________________
>
> The information contained in this message may be privileged and conf idential 
> and protected from disclosure. If you are not the original intended 
> recipient, you are hereby notified that any review, retransmission, 
> dissemination, or other use of, or taking of any action in reliance upon, 
> this information is prohibited. If you have received this communication in 
> error, please notify the sender immediately by replying to this message and 
> delete it from your computer. Thank you for your cooperation. Troika Dialog, 
> Russia. 
> If you need assistance please contact our Contact Center  (+7495) 258 
> 0500 or go to www.troika.ru/eng/Contacts/system.wbp
>
>

_______________________________________________________

The information contained in this message may be privileged and conf idential 
and protected from disclosure. If you are not the original intended recipient, 
you are hereby notified that any review, retransmission, dissemination, or 
other use of, or taking of any action in reliance upon, this information is 
prohibited. If you have received this communication in error, please notify the 
sender immediately by replying to this message and delete it from your 
computer. Thank you for your cooperation. Troika Dialog, Russia. 
If you need assistance please contact our Contact Center  (+7495) 258 0500 or 
go to www.troika.ru/eng/Contacts/system.wbp  


Reply via email to