| Amit's profileAll about BizTalk Server...PhotosBlogLists | Help |
|
March 06 Taking collaboration to a new level using
Great going ... March 03 WS-Addressing support in BizTalk 2006 R2WS Addressing enables the use of various other headers in the SOAP envelope apart from the headers, which exists when you are using WS-I Basic profile. Some extra elements which exists when you use WS-Addressing are MessageID, RelatesTo, To, Action, From, ReplyTo, FaultTo All these extra headers can be used to do asynchronous Interactions. For ex.
We will see how to implement asynchronous message exchange pattern using WS- Addressing
Use of WCF Adapter support calling of Web Services without using proxy. You have to set some extra properties when using Dynamic Send ports.
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
MssgToSend(WCF.Action) = “SOAP Action”
MssgToSend(WCF.SecurityMode) = "None";
MssgToSend(WCF.TransportClientCredentialType) = "Windows";
MssgToSend(WCF.EstablishSecurityContext) = System.Boolean.Parse("true");
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
//Asign Port Properties
DynamicSendPortSync(Microsoft.XLANGs.BaseTypes.Address)= “End Point Uri”
DynamicSendPortSync(Microsoft.XLANGs.BaseTypes.TransportType)="WCF-BasicHttp";
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
There is one more workaround, which you have to do, by default the FaultTo property is not promoted, so you cannot access it within the Orchestration. To use it you have to write custom pipeline component in which you can promote it. Use of ReplyTo
ReplyTo can be used for asynchronous messaging
Use of MessageId, Relates To
These can be used to correlate the response with the request message. So while sending the Request to Service we have to initiate a correlation using “MessagID” and while receiving the response, we have to promote the “Relates To” so that proper correlation can happen. However, correlation in BizTalk can be done in various other ways too.
Difficulties in implementing asynchronous message pattern using WS-Addressing in BizTalk
1. By default “FaultTo” is not promoted and so you cannot access it with in Orchestration, you have to do the promotion using custom pipeline component.
2. Correlation using MessageID and RelatesTo has to be taken care by the developer not the infrastructure.
3. The Response message which the service sends does not show in the wsdl of the Service. But you can have the Schema of the message shown using
<extensions><behaviorExtensions></behaviorExtensions></extensions> in the App.config files.
See ESB Guidance for more … http://codeplex.com/esb
4. There are some other headers which are of concern like EndPoint Reference see here for more http://www.w3.org/Submission/ws-addressing/#_Toc77464319 |
|
|