Biztalk: Side-by-Side Versioning in different Applications

263 views Asked by At

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">&lt;?xml version="1.0"?>
 &lt;string>Unexpected error occured.&lt;/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>&lt;?xml version="1.0"?>
&lt;string>Unexpected error occured.&lt;/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[]&amp; outputs, IAsyncResult result)
  at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeEnd(MessageRpc&amp; rpc)
  at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage7(MessageRpc&amp; 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?

1

There are 1 answers

0
Dan Field On

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.