Question

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
Content-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.

Was it helpful?

Solution 2

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.

OTHER TIPS

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.

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.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top