A random collection of epiphanies, thoughts and problem solutions pertaining to .NET and BizTalk.

Friday, October 15, 2004

This Assembler cannot retrieve document specification by using this type: "http://tempuri#request"


Event Type: Error
Event Source: BizTalk Server 2004
Event Category: BizTalk Server 2004
Event ID: 5720
Date: 14/10/2004
Time: 18:19:46
User: N/A
Computer: yourhost
Description:
There was a failure executing the send pipeline:
"Microsoft.BizTalk.DefaultPipelines.XMLTransmit"
Source: "XML assembler"
Send Port: "SQL://server/db/" Reason: This Assembler cannot retrieve
document specification by using this type: "http://tempuri#request".


SOLUTIONS: This is noramlly caused by the failure of BizTalk's message engine to derive the unique type from the deployed Xml Schema. Type generated by the schema will have the format of "namespace#typename". For example, if you have defined your xmlns=http://myproject and you have an root element called item. The fully qualified element type derived by the BizTalk will be: http://myproject#item. So your responsibility is to make sure:


  • Indeed you have this schema and desired root element defined

  • You don't have two or more elements with the exact same name and same namespace deployed. This includes all schemas previously deployed to the BizTalkMgmtDb. You could find the Xml namespaces are saved in the bt_XmlShare and bt_XmlShareReference tables in the BizTalkMgmtDb


Tuesday, October 12, 2004

BizTalk: 'ActiveView.ColumnAxis' is null or not an object


HAT failed to run properly, it complains about the snap in. You need download Office 2000 Web Components:
download from here

A Microsoft Distributed Transaction Coordinator problem prevented connection to the Configuration database. Exception from HRESULT: 0x8004D00E


Follow these steps:



  1. Make sure host and server can ping each other

  2. Make sure DTC service is up and running

  3. Check out kbid 839187
    SET HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC\TurnOffRpcSecurity = 1

  4. If your DEV BizTalk server is on a Windows XP box with SP2 installed, take a look at this article by Florin Lazar: XP SP2 and Transactions

BizTalk: Type "http://www.w3.org/2001/XMLSchema:char" is not declared or not a simple type

If you use the datatype char(1) in the stored procedure, it will bomb when you try to generate XML schema in the "add SQL adapter wizard".


It turns out to be a BizTalk bug. You can still use char(1) and it will just work fine after applying the following fix. By default, the schema returned by SQL XML is XDR (XML data Reduced). You can observe this from the Query Analyzer. This reduced schema is not used by BizTalk; BizTalk uses the xsd. BizTalk relies on the XDRToXSD.xslt to transfrom the xdr generated by SQL Server to the desired xsd format. There's a problem in the XDRToXSD.xslt (this file locates in "C:\Program Files\Microsoft BizTalk Server 2004\"). To fix this problem change the following line:



<xsl:template match="@dt:type[.='char']" mode="convert-datatype">xs:char</xsl:template>
to:
<xsl:template match="@dt:type[.='char']" mode="convert-datatype">xs:string</xsl:template>


Thus, char(1) or char will be mapped to a xs:string. Actually, the default http://www.w3.org/2001/XMLSchema namespace has no xs:char build-in type. If you look at the following picture of the build in XMLSchema type hierachy you will find there's no xs:char.





For details about the XMLSchema build in data type click here.

Followers