2017-02-06 15 views
0

このエラーが発生しました。使用されるスキーマはグローバルスタンダードであり、私のコントロール下にはありません。フルでBizTalkエラー:受信パイプラインの実行中にエラーが発生しました。ドキュメントタイプが指定されたスキーマと一致しません

エラーメッセージ:

There was a failure executing the receive pipeline: "Microsoft.BizTalk.DefaultPipelines.XMLReceive, Microsoft.BizTalk.DefaultPipelines, Version=3.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" Source: "XML disassembler" Receive Port: "[receive port name]" URI: "[url to imput xml]" Reason: Document type "[namespace]#[envelope root element name]" does not match any of the given schemas."

マイセットアップ: 私はメッセージをデバッチするXMLReceiveパイプライン用封筒スキーマを持っています。私はそれを達成するために受信場所のEnvelopeSpecNamesでアセンブリ情報を指定しました。私はスキーマプロパティEnvelope = Yesを設定し、ルートリファレンスを指定しました(スキーマには多くのルート要素があるため)。 PropertySchemaを使用して、後で処理するために使用するエンベロープの一部のプロパティをプロモートし、すべての参照が正しいように見えます。

エラーメッセージで参照されるスキーマがBizTalkによって認識されている(チェックされているdb、既存のものと重複していないもの)。あらゆる場所で再コピー&ペーストして、すべての単一の名前を確認しました。同じエラーで全く新しい環境にアプリケーションをインポートすることを確認しました。

私は何が欠けていますか?

以前の理論では、エラーは間違った情報を与えていましたが、プロパティスキーマへの参照によって引き起こされたものでしたが、すべてがチェックアウトしていました。私の現在の理論は、エラーは完全に他の何かについてです - しかし、何が!

答えて

2

実際にこの質問を投稿してから約10秒後に、理論は解の明示的な構造に体現されました:体xpath。

ので、要約すると、指定する必要があります。 - 封筒=はい(エンベロープメッセージなどのメッセージを処理するためのBizTalkを伝えるために) - ルート要素(エンベロープの正しいルート要素を与える) - ボディのxpath(すなわちのxpathエンベロープ内のコンテンツメッセージへの表現)

これは誰にでも役立ちます。

関連する問題