Click here to Skip to main content
15,891,757 members
Articles / Enterprise

Troubleshooting BizTalk Problems

Rate me:
Please Sign up or sign in to vote.
0.00/5 (No votes)
5 Oct 2014CPOL3 min read 4.3K  
Troubleshooting BizTalk problems

1. Scenario

Recently in my project, I came to a situation where we need to promote some properties for archiving outgoing messages. So we created a correlation type and correlation set. We have also implemented suspend – retry pattern to handle if any exception occurs.

Problem

For this, we initialize correlation set in both the send shape (one is for sending the message and another for archiving). While building the project, we are getting the error “Correlation set cannot be initialized more than once”. We thought that since we are initializing the same correlation set in more than one send shape, we are getting this problem. But after removing the correlation set from one send port, we are still getting the error.

Resolution

After further research, we came to know that we have to define the correlation set within the local scope in which the send ports are used and not in the global scope.The concept is very similar to .NET. In .NET, if we declare a local variable globally and initialize that variable within a loop, then for each iteration, it will get initialized. In Biz Talk initialization of correlation set means the field within the correlation set is promoted to context property. Here, we are using two send ports and both the send ports try to initialize the same correlation set. So we are always supposed to initialize the correlation set within the loop so that each time the loop ends, the memory allocated to it ends and it will initialize the property only once.

2. Scenario

In our project, we have orchestration ProcessInbound.odx orchestration version 1.0 up and running. One fine day, new requirements come and we are supposed to change/update the ProcessInbound.odx.

Problem

Our project manager asks to deliver the orchestration DLL in such a way that no message gets lost at the time of deployment and as soon as new orchestration gets deployed, all the messages are routed to this new orchestration.

Resolution

After updating the ProcessInbound(1.0), we first go to assembly of orchestration DLL and make the version number as 1.1. Next, we build the orchestration DLL and go to BizTalk admin add new version of Orchestration DLL. So there are two ProcessInbound orchestration versions 1.0 and 1.1. Then, we unenlist the old version of ProcessInbound(1.0) and start the orchestration ProcessInbound(1.1). The advantage is this since we have unenlist the old version of orchestration all the messages which are routed to ProcessInbound(1.0) gets queued up and no new messages are routed to it. If some messages get suspended once we resume the suspended message and it will be routed to new orchestration ProcessInbound(1.1). After sometime, we check whether there is no suspended message or instance and then we manually delete the unenlist orchestration and remove the old assembly from resources.

3. Scenario

Sometimes, we face error while configuring BizTalk:

download

Resolution

  1. Start the Visual Studio command prompt
  2. Go to the ssosql.dll C:\Program Files\Common Files\Enterprise Single Sign-On
  3. regasm ssosql.dll

4. Scenario

Sometimes, while configuring BizTalk 2009, I found that the Enterprise Single Sign on is not able to start and SSO not get configured.

Resolution

It is because probably your machine is having .NET Framework 3.5 and 4.0 both. To resolve this problem, I suggest you download a patch from:

and install. Hopefully it will help.

This article was originally posted at http://biztalkguys.wordpress.com/2014/05/22/9

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Software Developer (Senior)
India India
my name is Tanmoy Sarkar. I am currently working as a BizTalk developer.

Comments and Discussions

 
-- There are no messages in this forum --