开发者

BizTalk 2010 calling one way(fire and forget) service and acknowledgement

Context: BizTalk 2010 trying to call a one way(fire and forget) PeopleSoft service that does not return a response. I have verified that BizTalk 2010 does not support one way services by design. Unable to call one way Peoplesoft service with WCF-Adapter from BizTalk 2010

PeopleSoft team showed me that their asynchronous service returns the following Http status and headers.

HTTP/1.1 200 OK
Date: Thu, 20 Jan 2011 15:31:37 GMT
Content-Length: 0
Con开发者_如何学Ctent-Type: text/xml; charset=UTF-8
TransactionID: <some GUID>
X-Powered-By: Servlet/2.5 JSP/2.1

However, when I look at the xml returned from a One Way WCF service published by BizTalk 2010 I see this

HTTP/1.1 200 OK
Content-Length: 86
Content-Type: text/xml; charset=utf-8
Server: Microsoft-IIS/7.0
X-Powered-By: ASP.NET
Date: Thu, 20 Jan 2011 15:34:32 GMT

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"><s:Body/></s:Envelope>

Note the empty SOAP message.

Therefore, BizTalk 2010 needs to have a NON-NULL response to be able to call a service. PeopleSoft service sending back the HTTP status code above IS NOT considered an acknowledgement by BizTalk.

Is that correct?

Thanks.


If a web service does not return a response, it needs to return an HTTP 204 - No Content. I've not tried this in WCF yet, but HTTP honors the no content return code. As for the BizTalk WCF service... not sure why it's not using 204. But since it is using 200, it needs to send something.


It looks like BizTalk 2010 does need to have a NON-NULL response to be able to call a service. Thanks to Ben for confirmation.

See details here.


What is the nature of the message you send out? You could in theory send a one way HTTP message and correlate on a separate HTTP response port.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜