バックグラウンド
トランザクションを受け取り、(スキーマを使用して) XML メッセージに変換し、Azure Service Bus Queue に渡す Web サービスを Azure で作成しました。
XML オブジェクトをキューに移動する前に、XML オブジェクトを文字列に逆シリアル化しました。これは、BizTalk サービスが XML オブジェクトを逆シリアル化できないためです。
キューのすべての構成は問題ないようで、メッセージは次のようになります。
<?xml version="1.0" encoding="utf-8"?> <QueueTransaction xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" TransactionID="1040" TransactionType="MyAirtimeTest1" Amount="123456" Status="NEW" TransactionDate="1/28/2015 12:00:00 AM" xmlns="http://MMBTService.TransactionSchema" />
Service Bus Queue Source、Xml One-Way Brodge、および One-Way External Service EndPoint を使用して BizTalk サービス メッセージ フローを作成します (エンドポイントは WCF Web サービスです)。
ソース XML データを Web サービス スキーマにマップする 2 つのスキーマがあります。
Request Message Type (Source Schema) を選択し、Validate のみを True に設定し、すべての Enrich と XMLTransform の MAP を無効にしました。
エラーが発生しました
すべてを展開した後、BizTalk サービスの追跡に移動すると、次のエラーが表示されます:ルート レベルのデータが無効です。行 1、位置 1。
私はこれを数日間経験し、メッセージをブリッジ構成に逆シリアル化する際の細部をすべてチェックしましたが、問題を見つけることができません。
アドバイスやヘルプをいただければ幸いです。