Ganesh Narayanan's BizTalk Hints

MCTS

  Home  |   Contact  |   Syndication    |   Login
  11 Posts | 0 Stories | 4 Comments | 0 Trackbacks

News

Archives

Monday, December 19, 2011 #

What’s in a BizTalk Host:

  1. Thread Management
  2. Memory Management
  3. Service Isolation
  4. Exception Configuration
  5. Failed Message Management
  6. Message Tracking
  7. Composite Execution Tracking
  8. Composite State Management
  9. Load Balancing
  10. Fail-over
  11. Throttling
  12. Scale-out Configuration
  13. Scripting and Programmability APIs
  14. Regulatory Compliance
  15. Archiving and Purging
  16. Disaster Recovery
  17. Utilization/Performance Tracking
  18. Health Monitoring
  19. Availability Monitoring
  20. Multi-environment Deployment Model
  21. Configuration Management
  22. Identity and Impersonation

Extracted from a Microsoft Canada Presentation prepared by Peter Kelcey


Wednesday, July 07, 2010 #

This has been blogged by others previously. I am adding this here for my reference:

/*[local-name()='Fault']/*[local-name()='Detail' or local-name()='detail']/* |/*[not(local-name()='Fault')]

 

 


Friday, July 02, 2010 #

 

Here is the expression for WCF.InboundBodyPathExpression to be used in the Expression Editor for ExecuteReaderResponse for a Dynamic WCF SQL Adapter:

msgQuery(WCF.InboundBodyLocation)="UseBodyPath";

msgQuery(WCF.InboundBodyPathExpression)="/*[local-name()='ExecuteReaderResponse']/*[local-name()='ExecuteReaderResult']/*[local-name()='DataSet']/*[local-name()='diffgram']/NewDataSet";

msgQuery(WCF.InboundNodeEncoding)="XML";

 

 

 


Thursday, July 01, 2010 #

This has been blogged several times already. I am making this entry here for my reference.

Steps to enable basic ESB 2.0 Exception handling in an orchestration:

  1. Create Multipart message type “Fault” with “Body” of type Microsoft.Practices.ESB.ExceptionHandling.Schemas.Faults.FaultMessage
  2. Create new message msgFault with above type
  3. Create Exception Handler sysEx of type System.SystemException
  4. Construct message with following expressions:
//Create Fault Exception Message
msgFault = Microsoft.Practices.ESB.ExceptionHandling.ExceptionMgmt.CreateFaultMessage();
 
//Set Fault Properties
msgFault.Body.FailureCategory = "Category of failure";
msgFault.Body.FaultCode = "ERROR";
msgFault.Body.FaultDescription = sysEx.Message;
msgFault.Body.FaultSeverity = Microsoft.Practices.ESB.ExceptionHandling.FaultSeverity.Error;
 
//Add Message to the Fault Message
Microsoft.Practices.ESB.ExceptionHandling.ExceptionMgmt.AddMessage(msgFault, MessageCreatedOutsideScope);
 
References to be added:
 
Microsoft.Practices.ESB.ExceptionHandling
Microsoft.Practices.ESB.ExceptionHandling.Schemas.Faults

Thursday, September 03, 2009 #

Until the days of Biztalk 2006R2, the SQL Port was Static only and did not support dynamic ports.

BizTalk 2009 fully supports Dynamic SQL Ports, both for the regular out-of-the-box SQL Adapter and the new WCF SQL adapter.

For the regular SQL Adapter (which is being deprecated by microsoft), three new Message Context properties are available:

(SQL.ResponseDocumentRootElementName)

(SQL.DocumentTargetNamespace)

(SQL.ConnectionString)

Configuring these properties, together with

(Microsoft.XLANGs.BaseTypes.Address)="SQL://" +Servername/ + Databasename/

creates a fully functional Dynamic SQL Adapter.

For the WCF SQL adapter, follow the steps in the link:

http://msdn.microsoft.com/en-us/library/dd788439(BTS.10).aspx


Saturday, July 04, 2009 #

The newest version of Virtual PC seems to have several interesting features. See the Microsoft Comparison here.

To install this version, the Processor needs to have Hardware Virtualization capabilities. Not all processors have this capability. The list of processors with Hardware Virtualization is available
here.

If you are about to buy a new Notebook or PC to run virtual machines, it may be a good idea to consider this before making a decision.

Saturday, June 20, 2009 #

 
I had to go through several Blogs and spend several hours trying to configure my BizTalk project to use Client Certificate Mapping, SSL, and WsHttp Adapter.

These are the steps that were needed to make this combination work:

1. Enable Anonymous Access in IIS for the Web Site

2. Setup Certificate Mapping in IIS

3.Enable "Require SSL"

4. Edit the Web.Config file and make sure that the System.ServiceModel looks like this:

<system.serviceModel>
    <bindings>
        <wsHttpBinding>
            <binding name="CertificateWithTransport">
                <security mode="Transport">
                    <transport clientCredentialType="Certificate" />
                </security>
            </binding>
        </wsHttpBinding>
    </bindings>
    <behaviors>
        <serviceBehaviors>
            <behavior name="ServiceBehaviorConfiguration">
                <serviceDebug httpHelpPageEnabled="false" httpsHelpPageEnabled="true" includeExceptionDetailInFaults="true" />
                <serviceMetadata httpGetEnabled="false" httpsGetEnabled="true" />
            </behavior>
        </serviceBehaviors>
    </behaviors>
    <services>
        <!-- Note: the service name must match the configuration name for the service implementation. -->
        <service name="Microsoft.BizTalk.Adapter.Wcf.Runtime.BizTalkServiceInstance" behaviorConfiguration="ServiceBehaviorConfiguration">
            <!--<endpoint name="HttpMexEndpoint" address="mex" binding="mexHttpBinding" bindingConfiguration="" contract="IMetadataExchange" />-->
            <!--<endpoint name="HttpsMexEndpoint" address="mex" binding="mexHttpsBinding" bindingConfiguration="" contract="IMetadataExchange" />-->
            <endpoint name="HttpsMexEndpoint" address="mex" binding="wsHttpBinding" bindingConfiguration="CertificateWithTransport" contract="IMetadataExchange" />
        </service>
    </services>
</system.serviceModel>

5. In the BizTalk Adapter Settings, make sure that you select "Transport" and "Certificate".

 

Saturday, November 15, 2008 #

Today I found that in BizTalk, there is a maximum limit for the number of characters that can be sent in an XML element. The limit is 50,000,000 chars.

Wednesday, October 15, 2008 #

When consuming a WCF Service in BizTalk, I came across the error: The action is invalid or unrecognized.

The reason was that when I created the logical Request/Response port for the service in the orchestration, I used a new port type.

When generating the files for consuming the service, BizTalk had automatically created a Port Type for the Request/Response port. When I used this port type, the error went away.


Friday, September 19, 2008 #


The "Allow Early Termination" property in Flat File Schema allows the last element before (CR/LF) to be shorter than specified.

Even though it is not documented anywhere, we can find that it also allows the last element to be longer than the specified characters.