Tuesday, February 27, 2007

Failed while creating a B2BOrchestrations.B2BProcess service

I received the following error in the group hub while testing the solution build in Microsoft tutorial 3, lesson 3: “Failed while creating a B2BOrchestrations.B2BProcess service”

After 30 minutes I finally found the solution. BizTalk does not refresh the new deployment automatically. You should first restart the BizTalkServerApplication Host instance from the “Platform Settings - Host Instances” node in the BizTalk Server 2006 Administration Console.

If that did not do the trick, you can also try to remove the orchestration from the GAC, redeploy it and then refresh the BizTalkServerApplication Host instance.

Friday, February 09, 2007

BIA meeting - 7 February

Last Wednesday the BIA group came together again. We welcomed a new member, David, to our team. David worked for years with Usoft and now he is joining our team because at his project they start a BizTalk trial in which he participates. Main goal of his work will be to migrate from a BizTalk 2002 environment to the new BizTalk 2006 Server.

We discussed the possibility to become Microsoft ESB partner as we have an opportunity to use the ESB Guidance kit in a customer’s project. As a group we believe in the possibilities that the ESB Guidance package offers and we hope that we can join the 0.8 “beta” program.

One of the things that will be possible with the ESB Guidance is to implement UDDI inside the orchestrations to mange resources. We had an interesting discussion about the possibilities that this would offer. We think that it will be useful to do some sort of Load Balancing or Version management. If you have suggestions about the usage of UDDI inside a BizTalk orchestration feel free to share it with us in a comment.

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.

Friday, December 29, 2006

XML Notepad 2007

Microsoft released an editor for XML files, you can download it here.

Handy features include:
- Tree View synchronized with Node Text View for quick editing of node names and values.
- Incremental search (Ctrl+I) in both tree and text views, so as you type it navigates to matching nodes.
- Cut/copy/paste with full namespace support.
- Drag/drop support for easy manipulation of the tree, even across different instances of XML - Notepad and from the file system.
- Infinite undo/redo for all edit operations.
- In place popup multi-line editing of large text node values.
- Configurable fonts and colors via the options dialog.
- Full find/replace dialog with support for regex and XPath.
- Good performance on large XML documents, loading a 3mb document in about one second.
- Instant XML schema validation while you edit with errors and warnings shown in the task list window.
- Intellisense based on expected elements and attributes and enumerated simple type values.
- Support for custom editors for date, dateTime and time datatypes and other types like color.
- Handy nudge tool bar buttons for quick movement of nodes up and down the tree.
- Inplace HTML viewer for processing xml-stylesheet processing instructions.
- Built-in XML Diff tool. New features included in this version:
- Added keyboard accelerators for find again (F3) and reverse find (SHIFT+F3).
- Added support for loading IXmlBuilder and IXmlEditor implementations from different assemblies using new vs:assembly attribute.
- Made source code localizable by moving all error messages and dialog strings to .resx files.
- Added a default XSL transform.

New icons, a play on the Vista "Notepad" icons. Bug Fixes included in this version:
- Fixed install on Windows Vista machines using Windows Installer XML 3.0.
- Performance of expand node when validating.
- Fixed bug where changed schemas and transforms were not being re-loaded.
- Fixed spurious warnings about file being changed on disk.
- Fixed handling of very long text nodes.
- Fixed round trip of DTD content in tags.
- Fixed validation of elements with xsi:type attributes.
- Scroll bar not updating when node expanded/collapsed in some cases.
- Tree view needs horizontal scrollbar.
- When XML Notepad is minimized and file changes on disk, the file reload prompt is confusing. - Notepad should be restored first.
- XSL output window should pick up new xsl-transform based on input document.
- Fixed unhandled exception when closing a group of XML notepad windows.
- Added registration of "Edit" action for .xml file extension.
- Move source code to CodePlex.

Passed 70-235

Last week I passed the 70-235 exam. The day after that my collegue Bas de Gier passed as well.
Today 2 other collegues (Suresh Booms and Edwin Vriethof) took the exam as well and passed! Congratulations to all!

Besides project experience and many hours of self study, the BizTalk 2006 Recipes book by Apress helped me a lot to get at the level to pass the exam.

Friday, December 22, 2006

Interesting book coming up

Pro WCF: Practical Microsoft SOA Implementation
http://www.apress.com/book/bookDisplay.html?bID=10185

Friday, December 08, 2006

Requested registry access is not allowed

At the project I am working on I mainly use the Event Log to write progress statements from my orchestrations. On my develop-machine I ran into the error message 'Requested registry access is not allowed'.

It appeared that the user account under which the processing host runs, did not have enough authorisations to access the Event Log.

This can be fixed by giving that user account full control to a certain Registry Key.
To achieve this you must start the Registry Editor (regedit.exe) and navigate to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog. Right click on the node and click 'Permissions...'.
Next add the user account under which the processing host runs and give this user full control.
Close the dialog and the Registry Editor and finally restart the processing host.

You should now be able to write to the Event Log.

Monday, October 23, 2006

Failed to open BAM Excel workbook file: Old format or invalid type library

While trying to deploy a BAM workbook I created with Excel 2002, I received the following error message:


Since I was using an older version of Excel (2002) I thought that installing the 2003-version would fix my problem. Unfortunately it did not...

After some Googleing I found the blog from Don Glover, a Programming Writer for the BAM feature of BizTalk Server. He states that localization was the problem:

"BAM is made up of a number of separate components, SQL, web services, custom tools, and more. In order for each of the components to operate together effectively, they must all be set to the same locale/culture. In addition, your system and user locale/culture should match those set for BAM."

In my case it was enough to change my 'Regional options' from Dutch to English (US).

After firing the deployment command again, all went well.

Thanks Don!

Friday, July 07, 2006

BizTalk 2006 R2

Microsoft has introduced BizTalk 2006 R2. This product refresh includes a number of interesting features and enhancements to improve compatibility with Windows Vista and Microsoft Office 2007. Let’s have a look.

· Microsoft EDI Solution for BizTalk 2006
Microsoft’s EDI Solution for BizTalk adds full featured EDI capabilities to BizTalk 2006 with over 6000 schemas that include HIPAA, X12, and EDIFACT support.
Microsoft is highly committed to the B2B space with a dedicated team focusing on B2B messaging solutions integrated with the BizTalk Architecture. This EDI solution joins a group of solutions delivered with BizTalk 2006 including HIPAA, HL7, SWIFT, RosettaNet, cXML, and xCBL.
Microsoft’s goal is to drive Customer value by:
• Reducing TCO of managing B2B relationships
• Increase agility in establishing new B2B relationships
• Improve the timeliness and effectiveness of B2B decision making
Find more info at:
Microsoft EDI Solution Infosheet

· Microsoft RFID
The Microsoft RFID Infrastructure Services in BizTalk 2006 R2 provide device abstraction and manageability to RFID-based solutions. An integrated engine for rich data filtering, enrichment, and transformation allows for sophisticated applications for different automation scenarios. Application developers can also integrate with advance technologies such the as the Business Rules Engine, Windows Workflow Foundation, and Windows Communication Framework to create state-of-the-art business end-to-end systems.
Find more info at:
BizTalk 2006 R2 - RFID Support

· BizTalk Adapter for Windows Communication Foundation (WCF)
The BizTalk WCF (Windows Communication Foundation) Adapters align BizTalk with Microsoft’s Web Services strategy by exposing WCF channels to BizTalk processes.

The BizTalk R2 will contain the following WCF Adapters
· WsHttp Adapter – provides the WS-* standards support over HTTP transport. WCF-WsHttp adapter provides a transport/protocol stack implementation compatible with other next generation Web Services (platforms that also implement the same Web Services Architecture standards). It provides full access to SOAP security, reliability, and transaction features. This adapter uses the HTTP or HTTPS transport, and messages have a text or Message Transmission Optimization Mechanism (MTOM) encoding
· NetTcp Adapter – provides the WS-* standards support over TCP transport. WCF-NetTcp adapter provides efficient communication in a .NET to-.NET environment. It provides full access to SOAP security, reliability and transactions features. This adapter uses the TCP transport and messages have binary encoding.
· WCF-NetMsmq Adapter – provides queued messaging using MSMQ transport. WCF-NetMsmq adapter provides queued communication in a .NET-to-.NET environment. It uses MSMQ transport, and messages have a binary encoding
· WCF-BasicHttp – compatible with first generation web services. WCF-BasicHttp adapter provides a transport/protocol stack implementation compatible with first-generation Web Services. This adapter uses the HTTP or HTTPS transport, and messages have a text encoding.
· WCF-NetNamedPipe – provides cross process messaging using NamedPipes transport. WCF-NetNamedPipe adapter provides efficient cross-process communication in a .NET-to-.NET environment. This adapter provides full access to SOAP reliability and transaction features. The adapter uses the named pipe transport and messages have a binary encoding. This adapter cannot be used in cross-machine communication.
· WCF-Custom – provides customization for using WCF components (bindings, behaviors and binding elements). WCF-Custom adapter is used to enable usage of WCF extensibility components in BizTalk Server. The adapter enables complete flexibility of the WCF framework. It allows users to select and configure a WCF binding for the receive location/send port. It allows users to set the endpoint behaviors and security settings.
· WCF-CustomIsolated – provides customizations for using WCF components (bindings, behaviors and binding elements) and using the HTTP transport. WCF-CustomIsolated adapter is used to enable usage of WCF extensibility components in BizTalk Server, but out of proc in IIS. The adapter enables complete flexibility of the WCF framework. It allows users to select and configure a WCF binding for the receive location/send port. It allows users to set the endpoint behaviors and security settings. This adapter should only be used by transports than can be hosted in IIS.
Find more info at:
BizTalk WCF Adapters

· R2 Adapter Framework for .NET 3.0
The framework provides a common basis for building integration adapters that can be consumed by a variety of client applications (BizTalk, Office, .Net, etc) and usage scenarios via .NET 3.0 (formally WinFX). The Adapter Framework aligns the adapters strategy with Microsoft’s Web Services strategy by exposing integration adapters as WCF (Windows Communication Foundation) channels.
Find more info at:
R2 Adapter Framework for .NET 3.0

· R2 Line of Business (LOB) Adapters for .NET 3.0
The WCF LOB adapters deliver application, database and transport adapters to customers, implementing a common Adapter Framework, which in turn is built on top of the Windows Communication Framework (SAP, Siebel, Oracle DB, and TIBCO RV).
An adapter is fundamentally a module that bridges a client program and an external system, exposing well-defined and standardized interfaces over various programming models to the client program while internally mapping them to proprietary interfaces and protocols supported by the external system.
Application adapters provide an interface to Line-of-Business (LOB) systems like SAP, Siebel, Oracle Financials, PeopleSoft and JD Edwards. Database adapters provide an interface to database systems like Oracle, SQL Server, Sybase and DB2. Transport adapters provide an interface to transport protocols like HTTP and FTP and message-oriented middleware (MOM) like Tibco, Websphere MQ and MSMQ.
The R2 LOB Adapters deliver application, database and transport adapters by implementing a common Adapter Framework, which in turn is built on top of the Windows Communication Framework (WCF). Technically the R2 LOB adapters are exposed as WCF transport channels to clients, enabling connectivity, metadata exchange and business data exchange with external systems.
The R2 LOB adapters make line-of-business applications, databases and messaging platforms visible and interoperable with standard business processes, workflows and .NET applications They promote reusability and “plug ‘n play” across disparate applications. Different programming models can be built on top of the WCF adapter framework giving client programs the choice of programming models based on business needs. ADO.NET, WCF proxy programming and WCF channel (message-level) programming are a few programming models. The adapter framework eases adapter development in terms of providing simplified abstractions that handle common infrastructure and plumbing aspects of adapter building besides providing common runtime services. This enables adapter writers to focus on business logic required to interface with and surface external system functionality. It also empowers partners to develop custom adapters. The choice of WCF is essentially inline with Microsoft’s next generation communication framework optimized for the web services enabled world. It automatically web service enables external systems that are being adapted using R2 LOB adapters.

· BAM interceptors for Windows Workflow Foundation (WF) and WCF

How do I Participate in the BizTalk R2 TAP?
If you are interested in participating in the BTS 2006 R2 TAP please review the Program Description and submit a completed
BizTalk 2006 R2 Nomination Form and a TAP Program Manager will contact you. Once you have been accepted in to the TAP you will be able to download all R2 beta builds.
Nomination forms will be reviewed and BTS 2006 R2 TAP participants will be selected by July 31st, 2006.

What is a TAP (Technology Adoption Program)?
The BizTalk Server 2006 R2 Technology Adoption Program (TAP) is an “early adopter” program intended to validate the quality of the new features included in BTS 2006 R2 as well as give Customers and Partners early access to these features in order to validate functionality and quality prior to release.

In order to provide the best support possible during BTS 2006 R2 TAP we will be limiting the number of customers that we accept into this program so that we can maintain the highest possible quality for our participants.

· Program Participation
Registration for the BTS 2006 R2 TAP program is available by invitation of Microsoft account team members or by submitting a completed Nomination form that is available on the BizTalk Server 2006 R2 TAP website welcome page (also available in Downloads section)

Customers are then selected based on acceptance criteria as follows:
· A funded project that incorporates BizTalk Server 2006 R2 features
· The ability to commit the resources required to design and implement a solution using BizTalk Server 2006 R2 features
· The ability to release the solution to production 6 weeks prior to BizTalk Server 2006 R2 releases
· Provide high-quality feedback on BizTalk Server 2006 R2 features
· Ability to attend regularly scheduled calls (bi-weekly)
· Potential to participate in a Lab Engagement in Redmond, WA

All BizTalk Server 2006 customers are eligible to participate in this Technology Adoption Program and we are interested in your participation if you meet the criteria listed above.

Customers and Partners who enjoy being on the cutting edge of technology and who can benefit from these new features will find value in taking part in this TAP program.

· Program Structure
Nomination - Customers can nominate themselves on the BizTalk Server 2006 R2 Connect website by completing the TAP Nomination Form found on the welcome page (also available in Downloads section). The BTS R2 TAP Team will review all Nomination forms that we receive and will contact candidates as their Nominations are accepted/rejected.

Note that a Premier Support Agreement is required for participation on projects going into production.

Engagement - After being accepted into BizTalk Server 2006 R2 TAP, the TAP Team will work with TAP Participants to review architecture, test, and project plans. During this time most of the documentation and legal paperwork is signed. In addition, the TAP Participant’s expectations of the program are clearly documented and provides a means to clearly evaluate success.

Development / Test – Selected builds will be delivered to TAP Participants for testing and development. Issues brought by TAP Participants are handled by a trained Support Specialist and members of the Product Team. In some cases, developers or testers of a specific feature will work with a TAP Participants to ensure that technical issues are resolved accurately and timely.
Production Roll-Out – TAP Participants should plan on deploying their BTS 2006 R2 project to production no later than 6 weeks prior to the scheduled RTM date and be prepared to sign-off on production worthiness 2 weeks prior to RTM.

For customers that have a premier support agreement, support resources are available “7x24.”

Post-Mortem - When the program draws to a close, your feedback regarding the program in which you took part is critical to our ability to continually improve future programs.