Posts tonen met het label BizTalk 2010. Alle posts tonen
Posts tonen met het label BizTalk 2010. Alle posts tonen

dinsdag 4 januari 2011

BizTalk 2010 pipeline buildorder lost when using MsBuild.exe

When building solutions outside Visual Studio 2010 that contain both a pipeline project and a pipeline components project, building may fail.

As it seems, determining the buildorder for the components seems to be inclusive, leading for some solutions to fail with the message that references to the pipeline components cannot be resolved.

Cause for this is the fact that the reference is always to the GAC, not to a project. Somehow Visual Studio 'knows' this and acts accordingly, and when using MSBUILS this might fail. I say might, as we have solutions that do build consistently aswell as solutions that do fail consistently.

In order to 'fix' this, you have to manualy set your projects dependency.

In Visual Studio, right-click the solution and select Properties.

On the propertyscreen select Project Dependencies




There, select your Pipeline project and check the dependency with the Pipeline component.

Klik Apply, then save the solution.

vrijdag 29 oktober 2010

Migrating BizTalk 2006R2 sources to BizTalk 2010 without (too much) pain

I ran into it. You probably did too. You tried to convert your BizTalk 2006R2 solution to BizTalk 2010 (or 2009) and found that your solution was OK, your C# libraries went just fine, but none of your BizTalk projects had been converted.

Then, when you retried this from the converted solution, or tried to load a .btproj directly, you got that dreaded message: Error converting project file. The element <BIZTALK> beneath element <VisualStudioProject> is unrecognized.

I 'blame' the BizTalk Deployment framework for this as Microsoft clearly thought noone would ever try to move away from the suggested Deployment and Development build configurations. So if you, as we did, change it to Debug and Release when we moved to the BTDF, you are in for a bit of work.

Now I have for you the best way to get going. I found it just out of sheer desperation trying to get things working the way they should.

The best part? It takes just about 5 minutes per solution, independent of the size of it!!. It has worked for all solutions I have tried so far.

Now, How to do it.(NOTE: This walkthrough demonstrates the principle. There are several optimizations possible, especially when executing text search and replace actions on files)

1) Make sure you have a backup of your solution file BEFORE trying any conversions. You need the clean 2006R2 version. (or : you can of course also use an Undo Pending Changes option of you TFS). Also, as pointed out by other users of this method, delete any .user files within the solution you want to convert.

2)Just open the solution in Visual Studio 2010 as you want to. This will prompt the upgrade wizard to do what it does best.

3)Review the loaded solution. You should have a converted solution, loaded C# libraries and unloaded BizTalk projects.

4) Close all windows in Visual Studio.

5) Right-click each unloaded project file and select Edit to open it in text mode. You now should have all files open in text mode.

6) Using basic search and replace do a replace on all open documents replacing Name = "Debug" by Name = "Development" and replacing Name = "Release" with Name = "Deployment". Each replace should give a count of items replaced equal to the number op open BizTalk projects.

7) Now the big trick: Either close your solution and put back the backed up .sln file you made earlier and then re-open your solution OR just select Undo Pending changes on your solution file (AND JUST THE SOLUTION FILE...)

8) The Migration Wizard will trigger again and now will convert your BizTalk projects as expected.

9) Now we are almost done, except that you BizTalk project has a configuration base (Deployment/Development) that has not been defined in the solution (Release/Debug).

You need to get this back in sync. To do this, unload all BizTalk projects from the solution (right-click, select unload) and once again open them in textmode (all other windows closed)

10) Now reverse the replace: replace "Development" with "Debug" and replace "Deployment" with "Release". Save all files, then close all files.

11) Close and reopen you solution, as for some reason, Visual Studio complains about reloading projects that are already opened under the solution if you try to reload them now. Even when they are closed...

12) Reload all BizTalk projects in the solution, save and we are done.

So. I hope this just will get you going. Any comments, as always, are appreciated to make this work better, make note of exceptions to the rule etc etc.



As an add-on: Of course it is also possible to migrate an entire collection of solutions under TFS this way. You still need to open each and every solution in between the two find/replace actions. You can use VS's find/replace in Files option when viewing your source-control page to process all .btproj files from a given location down.

dinsdag 28 september 2010

BizTalk 2010 Setup fails at SSO Install.

While installing the recently released BizTalk 2010 Developer Edition, I ran into an unexpected installation error.

The Enterprise Single Sign-On installation failed complaining that it was unable to 'find the path specified'.

Manually installing ENT SSO from the \BT Server\Platform\SSO64 did not do me much good; the installation failed as stand-alone also.

In the end I found that the problem was that I was installing from a network location, even though it was mapped to a drive letter.

To be exact: I was installing onto a VMWare Windows 2008R2 64-bit image, mapping a shared folder on the host holding the installation files.

I have found that there are two ways that will get you out of this:
1) Create an ISO and mount it from the VMWare image as CD.
2) Copy it to a virtual disk local to the VMWare image.

Problem solved.