I want to deploy two applications, which I publish with BizTalk WCF Service Publishing Wizard to different Endpoints. The second application is a new Version of the first application. I have changed the Assembly Version and the target namespaces in the schema properties. The applications and ports have different names.
The first application works before I deploy the second application.
Then the first one fails with the following Message:
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body>
<s:Fault>
<faultcode xmlns:a="http://schemas.microsoft.com/net/2005/12/windowscommunicationfoundation/dispatcher">a:InternalServiceFault</faultcode>
<faultstring xml:lang="de-DE"><?xml version="1.0"?>
<string>Unexpected error occured.</string></faultstring>
<detail>
<ExceptionDetail xmlns="http://schemas.datacontract.org/2004/07/System.ServiceModel" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<HelpLink i:nil="true"/>
<InnerException i:nil="true"/>
<Message><?xml version="1.0"?>
<string>Unexpected error occured.</string></Message>
<StackTrace>at Microsoft.BizTalk.Adapter.Wcf.Runtime.BizTalkServiceInstance.EndOperation(IAsyncResult result)
at AsyncInvokeEndEndTwoWayMethod(Object , Object[] , IAsyncResult )
at System.ServiceModel.Dispatcher.AsyncMethodInvoker.InvokeEnd(Object instance, Object[]& outputs, IAsyncResult result)
at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeEnd(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage7(MessageRpc& rpc)
at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)</StackTrace>
<Type>Microsoft.BizTalk.Adapter.Wcf.Runtime.BizTalkNackException</Type>
</ExceptionDetail>
</detail>
</s:Fault>
</s:Body>
</s:Envelope>
The second application works fine. What could be the reason?
MSDN recommends against doing this.
Trying to do side by side versioning in BizTalk introduces a whole world of complexity - versions are hard coded into bindings files, schema deployments have to use different namespaces, and web services published through the Wizard have to be redone. There are a plethora of reasons why your service might be experiencing this error, fixing one might uncover a dozen more. If you insist on going down this road, start looking more closely at the EventLog entries rather than the SOAP responses - that may give you more of a clue as to why this isn't working as expected.
It would be better to give your new application and artifacts a new name and deploy them as a new application - even if this results in repeated code between the two.