Reliable messaging, Cannot create a sequence

Hey,

I'm creating a custom transport, and am currently trying to get RM to work.

For some reason the server denies the client to start a reliable session, and I was hoping someone in here would know why?

This is what the RM part of my binding looks like:

<reliableSessionmaxRetryCount="8"ordered="true"/>

And the SOAP message sent is:


{<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:858ee524-81e8-46d6-9c63-93d87ff8c909</a:MessageID>
</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:a66610fa-db51-49c1-b6ce-96aeee1616a5</Identifier>
</Offer>
</CreateSequence>
</s:Body>
</s:Envelope>}

And the SOAP message received:

{<s:Envelope xmlns:a="http://www.w3.org/2005/08/addressing" xmlns:s="http://www.w3.org/2003/05/soap-envelope">
<s:Header>
<a:Action s:mustUnderstand="1">http://www.w3.org/2005/08/addressing/fault</a:Action>
<a:RelatesTo>urn:uuid:610229ae-8d81-4e87-999c-514d99fe9374</a:RelatesTo>
</s:Header>
<s:Body>
<s:Fault>
<s:Code>
<s:Value>s:Sender</s:Value>
<s:Subcode>
<s:Value xmlns:a="
http://schemas.xmlsoap.org/ws/2005/02/rm">a:CreateSequenceRefused</s:Value>
</s:Subcode>
</s:Code>
<s:Reason>
<s:Text xml:lang="en-US">The create sequence request has been refused by the RM Destination.</s:Text>
</s:Reason>
</s:Fault>
</s:Body>
</s:Envelope>}


Edit: Maybe I should add some more info. The strange part is that everything seems to be working fine, the messages are sent and received properly, and both the client and the server have the same binding config. I'm wondering if there is something that should be activated before the RM layer will accept a CreateSequence.

Thanks a bunch,
Pat

[4402 byte] By [PatrikJ] at [2007-12-22]
# 1

Hi, an updated question.

I've noticed that the Request misses a <ReplyTo> (and a <To>) and suspect that this can be part of the problem.

I've tried to programmatically change the replyto and to of my Message object, but for some reason it doesn't show up in the (by the WCF RM layer created) CreateSequence message. So I was wondering if anyone knows where and how to add reply info to the RM-messages?

thanks,
Pat

PatrikJ at 2007-8-30 > top of Msdn Tech,Visual Studio Orcas,Windows Communication Foundation (Indigo)...
# 2

I suspect the problem is that your Transport channel isn't adding the To that it's been configured with. It is the responsibility of the transport to apply the To (and Via) unless ManualAddressing == true.

Add the following to your Send() call before you serialize the message:

to.ApplyTo(message);

Where "to" is the EndpointAddress that was passed into channelFactory.CreateChannel()

KennyWolf at 2007-8-30 > top of Msdn Tech,Visual Studio Orcas,Windows Communication Foundation (Indigo)...
# 3

Thanks for the help,

Pat

PatrikJ at 2007-8-30 > top of Msdn Tech,Visual Studio Orcas,Windows Communication Foundation (Indigo)...

Visual Studio Orcas

Site Classified