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  

Reply via email to