Congrats to the BizTalk team for getting the ESB Toolkit out the door. This marks a serious milestone in this package. No longer just a CodePlex set of bits (albeit a rich one), but now a supported toolkit (download here) with real Microsoft ownership. Check out the MSDN page for lots more on what’s in the Toolkit.
I’ve dedicated a chapter to the Toolkit in my book, and also recently recorded a webcast on it. You’ll see that online shortly. Also, the upcoming Pro BizTalk 2009 book, which I’m the technical reviewer for, has a really great chapter on it by the talented Peter Kelcey.
The main message with this toolkit is that you do NOT have to install and use the whole thing. Want dynamic transformation as a standalone service? Go for it. Need to resolve endpoints and metadata on the fly? Try the resolver service. Looking for a standard mechanism to capture and report on exceptions? Take a look at the exception framework. And so on.
WOW! Really…..Going back 10 years (thats right there was an even worse version than 2000, BizTalk 1) in BizTalk I have just about every codeplex and 3rd party tool imaginable. The older version of the ESB was great but….Dude….There are 2 major pieces to the ESB Toolkit, the source (which you can compile yourself and extend) and the CORE install (which does compile the same source but uses a different snk so be careful mixing installed CORE GAC assemblies with your compiled source (project reference versus GAC reference)
I have a Windows Server 2008 64bit install with BizTalk 2009 running and have just finished going through the source. I have chosend to implement the exception handling, repair/resubmit, web service operations and the ESB portal. To quote a famous actor “Beauuuutay”.
I had 72 hrs estimated for and ESB exception handling by using the concepts laid out in the BizTalk HOT ROD magazine where we turn on failed message routing for all send and recieve ports, create fault messages in orchestrations inside an exception scope. The premise is this: Create 3 Error Handling orchestrations; 1 for picking up send port generated fault messages, 1 for recieve port fault messages and 1 for the orchestration fault messages. This gives you more leverage to set contextual properties at the right moment and bubble up correct errors.
So back to the ESB, i am 15 hours into my estimate and i am now sending all of my failed messages into the ESBException db, which in turn gives a view of the fault message (which of course contains the original message as well) and all of my custom properties set during my orchestration errors. THIS IS HUGE!!!!! Bye bye HAT and mmc consoles and running queries in the group hub. Since it is all WEB now….and business clients can even see there activities from here as well….slight issues are; still getting the charts showing up blank, i have installed the MSChart but i think my version (ESB 2.0) may still like dundas better. Also the BizTalk explorer OM can only run in 32 bit mode however, the default app pool is set to 64 bit, easy change in IIS to set it 32 mode and your good.
The sample applications (Test Clients!) and source code for the ESB are UNREAL!!!! On a similar vien to the MS Enterprise Library (which is also required) to provide a base library of ESB functionality to extend, which brings me to the repair and resubmit. We all know that infopath can read and display xml easily, the ESB portal not only provides the ability to view and search fault message but opening a message in infopath could let you view even more details, including the original message display using text fields for editing ande providing buttons for resubmittal back to the msg box. Again, “Beauuuutaay”.
I know i am preaching to the choir hear like you really dont know how friggin cool this is, but if you have BizTalk 2009 this is not only the icing on the cake, it is the steak dinner before and the 4 glasses of wine after (I am an expat MCS so full meals are the norm).
I have extended the ESB Toolkit(using the BizTalk hot rod approch) and now have implemented a road map for my client for the entire ESB capabilities matrix (UDDI, Resolvers, Transformers, etc..)….The ESB is a true enterprise service registry my friend and your hard work has made it much MUCH easier for the rest of us as well as our clients.