|
About the June 2007 Community Release
This release focuses on refactoring the CTP build to accommodate the augmentation of existing features, as well as the addition of new features to be included within the final release targeted for October 2007.
Some of the changes for this release are:
· The project namespace changes from Microsoft.BizTalk.ESB to Microsoft.Practices.ESB
· All schemas follow W3C schema conventions for namespace, such as http://schemas.microsoft.biztalk.practices.esb.com/jms/system-properties
· Installation scripts and instructions for manual installation are provided
· All samples now install into the GlobalBank.ESB BizTalk application instead of their own individual applications
· The following components have been rebuilt to work with the BizTalk Server 2006 R2 Beta 2 and Release Candidate builds:
◦ JMS Pipeline Component
◦ Namespace Pipeline Component
◦ Exception Management API, InfoPath form and Pipeline component
◦ Transformation Service, Helper and Agent
◦ JMS Samples
◦ Exception Management Samples
◦ Namespace Samples
· This release contains several updates to integrate with .NET version 3.0:
◦ The Transformation Service is exposed as both an ASMX and a WCF service
◦ The Exception Management Fault Service is exposed as both an ASMX and a WCF service
◦ The UDDI helper class now uses native WCF calls and the features of .NET version 3.0. There is no longer a dependency on the Microsoft UDDI service (Microsoft.Uddi.dll)
· There are a number of fixes for components and services included in this release. For more details, see:
◦ Fixes for the Exception Management API
◦ Fixes for the Transformation Service
◦ Fixes for the JMS Component
◦ Fixes for the Namespace Component
◦ Fixes for the SetContext Component
Note: Although all other components in this release will compile and work with BizTalk Server R2, they still require some re-work. In addition, the ESB Exception Portal does not change in this release, and therefore the Exception Management Framework has not been tested with the older portal. The next community release will contain a prototype of the new portal.
Fixes for the Exception Management API
· The Exception Management API now supports exceptions that occur in child orchestrations executed using the CALL shape. For example:
◦ Orchestration A calls Orchestration B
◦ Orchestration B contains exception handling code that invokes the CreateFaultMessage method and assigns a fault message
◦ An exception occurs in Orchestration B and the ESB Exception Framework should publish the message
◦ The execution path no longer fails and causes an error within the CreateFaultMessage method
· InfoPath form rendering exceptions from the ESB Fault Processor pipeline no longer cause an error when scrolling through context properties
· The ESB processor pipeline now includes whitespace support in the reader
· The properties for the fault schema change in this release. There is no promotion of FaultDescription, and the description now accepts more than 255 characters
· Extension of the existing property schema supports additional internal error information
· The schema namespace changes, and the InfoPath template has been renamed
· Class references replace the string references for the context property name and namespace used when accessing context properties
· This release supports MIME-type detection for the body of a message
· Failed Message Routing scenarios now support flat files and binaries
· Streaming is implemented for large files
· Correct identification of the send port now occurs in one way messaging scenarios
· There is support for two-way messaging scenarios, such as the typical SOAP request-response cycle
· All project versions are now 1.0.0.1
· The native BTS stream libraries replace all custom streaming classes
· A new ContextProperties class allows pipeline components to access property information
· The orchestration time stamp in now expressed in UTC
· A new WCF-based Web Service exposes fault information
· All references to http://org.kp.esb.engine and the "bootcamp" namespaces in InfoPath schemas are removed
· New scripts update the Resources folder in the BizTalk Server application, and generate an MSI based on the resource artifact files
· Minor modifications to the code catch more exceptions, in particular by checking for null references
· The component detects non-HTML and non-text content, and encodes these as base-64 strings
· The reporting schema and InfoPath template now contain a MIME-type property
· There is support for rendering the content of XML CDATA sections
· The schema type for the content block within the reporting template changes from Any to CDATA
Fixes for the Transformation Service
· The Transformation Service now throws a null exception if the mapName parameter is null.
· The Transformation Service now has no dependency on the Microsoft UDDI service (Microsoft.Uddi.dll).
Fixes for the JMS Component
· The strong name key file binding now occurs during the linking phase so that the Manifest phase does not invalidate the signature of the assemblies.
· The component now uses the Microsoft.Practices.ESB.snk key file included with the source.
· The JMS Sample uses a new Queue Manager name, and only four queues.
Fixes for the Namespace Component
· The NamespaceException now inherits from ApplicationException, which corrects the issue where exceptions appear in the Event Log as "Reason: Unknown"
· Corrections to processing of the ExtractionXPath property solve previous extraction issues
· A new validation routine introduced prior to pipeline processing ensures that required properties are set at runtime
· Regular expressions now check that separator property value is valid (or is empty), that namespaces are not in the reserved range (ns0 to ns6), and that the specified namespace prefix is alphanumeric
· The component now checks that either the XPath or NamespaceBase property is set
· The component now compares the existing and the new namespaces, and just returns the original message to the pipeline if they are the same
· The component no longer raises an exception if the XPaths property is null, which allow the use of a static namespace if required
· Various string comparisons carried out within the component have been corrected
Fixes for the SetContext Component
· The component uses an updated namespaces for property schemas
· The component now exposes EndpointUddiServer and MapUddiServer properties
· The component now contains logic that ensures the value of a SOAP header is not overwritten by a property value provided in the pipeline instance rather than in the SOAP header
· There are several new trace statements that output the resolved endpoint |