Showing posts with label biztalk. Show all posts
Showing posts with label biztalk. Show all posts

Friday, April 08, 2011

BizTalk AppFabric Connect Article

My article on newest feature of BizTalk Server 2010: AppFabric connect is now online on Dutch .NET Magazine website. .NET Magazine is a great resource for Microsoft technology. It is printed version is limited in space though, so not every article can be published in there. Fortunately the website doesn't have that limitation and every good article can be published there too. Thanks Gerard (Microsoft) for publishing the article online.

Tuesday, March 27, 2007

New version of BizTalk 2006 documentation PDF

Microsoft released a new version of the core documentation PDF. It comes as one self extracting zip from 55MB.
Although this results in giant one PDF file from 117MB containing almost 20000 pages, I like the fact that it is only one PDF.

Download the documentation here.

Tuesday, March 06, 2007

Documentation tool for BizTalk 2006

Although this tool is not new, I blog about it because it is a must-have for every BizTalk developer:


The tool is called UK SDC BizTalk 2006 Documenter (you can download it here) and builds documentation of your BizTalk application(s). It uses reflection to find all information, therefore the BizTalk application(s) you want to document need(s) to be deployed.
One cool feature is the ability to create JPG's for orchestrations.

Friday, March 02, 2007

New BizTalk documentation

This week Microsoft updated the BizTalk Server 2006 documentation. You can download it here:
http://www.microsoft.com/downloads/details.aspx?familyid=3294ddaf-9f67-409f-a92d-2f6070dc0d1a&displaylang=en

Saturday, January 13, 2007

BizTalk 2006 Recipes – A problem-solution approach

I would like to mention that there is a great book available about BizTalk 2006. It is called “BizTalk 2006 Recipes”, published by Apress and written by Mark Beckner, Ben Goeltz, Brandon Gross, Brennan O’Reilly, Stephen Roger, Mark Smith and Alexander West. (ISBN 1-59059-711-7)

In the book you will find a comprehensive guidance on working through complex deployment challenges, including tested, reusable code snippets for use in production, enabling faster deployment and minimal post-implementation engineering support.I already did a quick read in the book during my BizTalk 70-235 study, the book gives a detailed step by step overview of solutions (with lots of images) on how to work with BizTalk. The authors really did a good job to provide you with solutions that work, but best of all that works well.

In the next month(s) I will read this book and try to run all the provided solutions. I will post feedback about this book on my personal blog.

Friday, January 12, 2007

Some items in the removed assembly are still being used by items not defined in the same assembly

When trying to redeploy a BizTalk 2004 solution I received the following error message:

"Some items in the removed assembly are still being used by items not defined in the same assembly, thus removal of the assembly failed. Make sure that items in the assembly you are trying to remove fulfill the following conditions:
1. Pipelines, maps, and schemas are not being used by Send Ports or Receive Locations
2. Roles have no enlisted parties."

When you execute the following query against the configuration database, the result gives you the name(s) of the BizTalk artifact(s) which block(s) the deployment of your solution:

select 'RcvPort' PortType, r.nvcName Port, item.name MapName,assem.nvcName Assembly, nSequence, indoc_docspec_name, outdoc_docspec_name from bts_receiveport_transform rtinner join bts_receiveport r on rt.nReceivePortID = r.nIDinner join bt_mapspec ms on ms.id = rt.uidTransformGUIDinner join bts_assembly assem on ms.assemblyid = assem.nID inner join bts_item item on ms.itemid = item.id
union
select 'SendPort' PortType, r.nvcName Port, item.name MapName, assem.nvcName Assembly, nSequence, indoc_docspec_name, outdoc_docspec_name from bts_sendport_transform rtinner join bts_sendport r on rt.nSendPortID = r.nIDinner join bt_mapspec ms on ms.id = rt.uidTransformGUIDinner join bts_assembly assem on ms.assemblyid = assem.nID inner join bts_item item on ms.itemid = item.id
order by PortType, Port, nSequence

In my case a Send Port with a filter (which contained a reference to a schema) blocked redeployment. Removing the filter from the Send port was enough to be able to redeploy.

Saturday, December 10, 2005

BizTalk exception handling with web services

Recently I needed to include exception handling in a web service call to an external party. I learned a couple of things and thought I’d highlight them here.

Exception handling doesn’t always behave the way you expect when you are trying to catch exceptions when calling a web service. While using one is very useful some things must be considered or you will not get the result you wanted.

Here is one way to do it as well as a few things to keep in mind when you want to set one up:

  • Include the external web service call (both send and receive shapes) in either a non-transactional scope shape or a long running transaction.
  • Decide if you need to catch any specific exceptions, if you don’t, using the General Exception will suffice. If you need to catch specific errors, you can use multiple catch exception blocks.
  • It may sound obvious to say this, but make sure your orchestration doesn’t have a timeout that is the same length (or shorter) than the timeout of your scope transaction.
  • Most important: in your send port which holds the reference to the web service, make sure you are not using any retries (unless, of course, you explicitly need to). If the web service fails with an error such as “There is an error in XML document (5, 10)” and you have retries enabled you will only see warnings in your event viewer (which means the exception block won’t be activated until the SOAP timeout).

Thursday, December 01, 2005

Solving BizTalk "error X2044"

I encountered a strange compilation error recently in BizTalk 2004 when importing a web service.

While I can’t put my finger on the exact cause yet, I do have a fix that works.

When you see an error message like:

C:\Project\Web References\ExtRef\MyOrch.odx(445,23): error X2044: symbol '@@@@' is already defined; the first definition is in assembly @@@.dll : It may be possible to disambiguate by using fully qualified names.

The way to fix this error is to do the following:

  • Open the orchestration in Notepad (In my case MyOrch.odx)
  • Do a find (Ctrl+F) for “#endif // __DESIGNER_DATA”
  • Delete all the code below that line
  • Save your file in Notepad
  • Say yes when Visual Studio asks if you want to update your file
  • Recompile

Note: The code will not be regenerated until you edit an expression shape, etc. Add a “//” or something and you will then see the code re-appear when you open it in Notepad again.

I hope this may serve to save someone time, it took a while for me to figure it out.

Saturday, November 12, 2005

Passed the BizTalk 74-135 certification

Randal and I have passed the BizTalk Server partner exam (74-135) "Developing E-Business Solutions Using Microsoft BizTalk Server 2004". It, as many have commented, was a rather difficult exam that has no real preparation materials to help get thru it.

For anyone interested in taking the exam it's recommeneded that you have lots of hands on experience with BizTalk.

Please note, this exam is designed for Microsoft Certified Partners, so unless you work for such a company the exam is not available.