I have accomplished this before by using IIS and a BizTalk receive location with the WCF-CustomIsolated adapter.
I have accomplished this before by using IIS and a BizTalk receive location with the WCF-CustomIsolated adapter. In the receive location's transport configuration for WCF-CustomIsolated, the Binding should be set to httpTransport. There's not much else to configure there.
If you wanted to use Basic authentication (make sure it goes over SSL! ) and enable HTTP GET to provide the WCF metadata (not really a good idea in production), then the exported configuration would look something like this (for BizTalk 2010): I used the BizTalk WCF Service Publishing Wizard to generate the actual WCF service, with the transport type set to WCF-CustomIsolated. The method used to create the WCF service was "Publish schemas as WCF service".
You have to have a BizTalk schema compiled into an assembly first, of course. For the web service description, I deleted the default Operation/web method and added a new, one-way web method to the service. To set the schema for your input message, you right-click on it, choose Select Schema, and browse to your BizTalk schema's assembly.
You should name everything appropriately, of course. After publishing the service, hop over to IIS (or the newly created web. Config) to configure your shiny new web application (i.e.
, its authentication and authorization). You may have to fiddle around with it some more to get everything working exactly as you want, but I was able to create WCF service for BizTalk to accept a very simple HTTP Post. The response then looks like this: HTTP/1.1 200 OK Cache-Control: private Content-Length: 84 Content-Type: application/soap+xml; charset=utf-8 Server: Microsoft-IIS/7.5 X-AspNet-Version: 4.0.30319 X-Powered-By: ASP.NET Date: Wed, 06 Jul 2011 14:16:58 GMT Just make sure that the caller can understand HTTP status codes, as if something is wrong, that is what will indicate the problem (i.e.
, HTTP 501, etc. ). You can also experiment with.
If you are only interested in asynchronous sends then use the WCF-NetMsmq Adapter. Or am I missing something?
Sorry, I probably didn't explain myself sufficiently. We are trying to get an orchestration to 'return' something and the WCF response should not have anything in the body. E.g.
; We also attempted to change the template to nothing (on the receive port binding) which only resulted in base64 encoded messages inside the body element. – Mike Thomas Jul 5 '11 at 13:51 OK so let me understand. You have an orchestration with an inbound logical port and you are exposing it as a WCF service.
You have a WCF consumer which makes a call to the WCF-exposed orchestration? Is this the scenario? – hugh Jul 5 '11 at 16:04 Yes that's correct.
– Mike Thomas Jul 6 '11 at 7:54 I know this is probably annoying, but could you explain why you want an empty response from the call to the BizTalk orchestration? I have not tried exposing an orchestration with WCF (only with asmx), but I am assuming that even though your inbound port is one way, the service binding states there is a response for a caller to consume? – hugh Jul 6 '11 at 10:27 It just seems to me that the architectural pattern you are trying to achieve (fire and forget BizTalk activation) would be better served by BizTalk having a receive location bound to a local MSMQ, and have your consumer service use the NetMsmqBinding (or the MsmqIntegrationBinding if using the old-school MSMQ adapter) to submit messages.
– hugh Jul 6 '11 at 10:33.
I cant really gove you an answer,but what I can give you is a way to a solution, that is you have to find the anglde that you relate to or peaks your interest. A good paper is one that people get drawn into because it reaches them ln some way.As for me WW11 to me, I think of the holocaust and the effect it had on the survivors, their families and those who stood by and did nothing until it was too late.