none
Inbound XML Messages From WCF-SQL Adapter vs. Old SQL Adpater RRS feed

  • Question

  • I have a receive port that uses the BizTalk SQL Adapter to call a stored procedure and return the result set as XML, as described in Richard's post.  It works great, but I would like to migrate this to the WCF-SQL Adapter.  I have configured the WCF-SQL adapter to use the same root node and namespace that the SQL adapter does.  The messages are getting debatched, but I'm getting the following error: 

    A message received by adapter "WCF-SQL" on receive location "rcvOutbound944_WCF-SQL" with URI "mssql://dibs853w7lt/BZTSQLSERVER/DataWarehouse480?" is suspended.
     Error details: An output message of the component "Unknown " in receive pipeline "Microsoft.BizTalk.DefaultPipelines.XMLReceive, Microsoft.BizTalk.DefaultPipelines, Version=3.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" is suspended due to the following error:
         The disassembler cannot retrieve the document specification using this type: "HDR". This is because the schema is not deployed correctly. .

     

    Is there something special that needs to be done when migrating to the WCF-SQL adapter?

    Tuesday, December 20, 2011 5:36 PM

Answers

  • It seems the problem was that once the individual xml messages were debatched, there was no namespace assigned to them.  Example:

    <HDR xmlns="">
    <OrderDate>2007-01-16T00:00:00</OrderDate>

    ...

    ...

    I was able to fix this by adding the following to my stored proc:

    WITH XMLNAMESPACES (default 'http://SQLRecOut944Doc')

     

    The messages now come across with a namespace and everything works fine.  Example:

    <HDR xmlns="http://SQLRecOut944Doc">
    <OrderDate>2007-01-16T00:00:00</OrderDate>

    ...

    ...

    SKGuru's post was really helpful with the schema generation, debatching, and port configuration associated with this.

    Wednesday, December 28, 2011 7:06 PM

All replies