The BizTalk Server Message Queuing receive function fails while receiving data from BizTalk Server 2004 MSMQT (840715)



The information in this article applies to:

  • Microsoft BizTalk Server 2004 Developer Edition
  • Microsoft BizTalk Server 2004 Enterprise Edition
  • Microsoft BizTalk Server 2004 Partner Edition
  • Microsoft BizTalk Server 2004 Standard Edition

SYMPTOMS

In Microsoft BizTalk Server 2004, if you use BizTalk Message Queuing Adapter (MSMQT) to write documents to a Message Queuing queue, the documents are put in the suspended queue of the destination computer that is running BizTalk Server, and an error message that is similar to the following is logged in the application log of the destination computer:
Event Type: Error
Event Source: BizTalk Server
Event Category: Document Processing
Event ID: 324
Date: 4/7/2004
Time: 4:11:36 PM
User: N/A
Computer: BIZTALKSERVER
Description:
An error occurred in BizTalk Server.
Details: ------------------------------
[0x1439] No parser component recognizes the data. This might be caused by an interchange specification that is missing or not valid,
or it might be caused by data that is not valid. Verify that both the interchange specification (if one is specified) and the data match.
[0x1730] Suspended Queue ID: "{D2F6A000-8738-4D7B-BFE0-2AB55711B1EE}"
[0x0147] The business document that was passed in is not in a recognized format and could not be parsed or decrypted.
For more information, see Help and Support Center at http://support.microsoft.com.
This problem occurs if you write the documents to a Message Queuing queue that is monitored by a BizTalk Server 2000 Message Queuing receive function or by a BizTalk Server 2002 Message Queuing receive function.

CAUSE

This problem occurs if the data that you send from MSMQT to the Message Queuing queue that the Message Queuing receive function is monitoring contains a byte order mark (BOM).

RESOLUTION

Verify that the data that you are sending from MSMQT to the Message Queuing queue that is monitored by the receive function does not contain a BOM. To do this, use one of the following methods:
  • Set the encoding to UTF-16 for the data that you are sending. MSMQT automatically removes any BOM that exists in the UTF-16 encoded data before MSMQT sends the data.
  • Set the encoding to UTF-8 for the data that you are sending and remove the BOM by using a custom pipeline component.

STATUS

This behavior is by design.

REFERENCES

For additional information, click the following article numbers to view the articles in the Microsoft Knowledge Base:

283035 MSMQ receive function may return PassThrough error


Modification Type:MajorLast Reviewed:9/29/2006
Keywords:kbprb KB840715 kbAudDeveloper