2017-12-03 17 views
0

BizTalkを初めて使用しているため、WCFサービスを使用して独自のスキーマとオーケストレーションを作成しました。 WCFサービスを公開し はその後、すべての物事はうまくいったが、私は、BizTalk Server管理者予期しないメッセージの種類が予想される種類と一致しませんBizTalk

XLANG/sのエンジンイベントログエントリに、私はこの例外を取得していますSOAP UIから発行されたサービスを実行しているとき:キャッチされない例外が(参照します下記の「内部例外」)は、サービス「BizTalkEmployeeInfo.BizTalk_Orchestration1(8e85552e-b611-e6a6-655f-b3b58002a88d)」のインスタンスを中断しました。 サービスインスタンスは、管理上再開または終了するまで中断されたままです。 インスタンスを再開すると、インスタンスは最後の永続状態から継続し、同じ予期しない例外を再スローする可能性があります。
のInstanceId:eb2b7522-db03-40f0-9cfa-28509fea03b0
形名:
ShapeId:からスロー
例外:セグメント-1、進捗-1
内部例外:受信予期しないメッセージタイプ 'http://schemas.xmlsoap.org/soap/envelope/#Faultは' と一致しません。予想されるタイプ 'http://tempuri.org/#EmployeeDetailsFormattedResponse'。

例外の種類:UnexpectedMessageTypeException 出典:Microsoft.XLANGs.Engine ターゲットサイト:ボイドVerifyMessage(Microsoft.XLANGs.Core.Envelope、可能System.String、Microsoft.XLANGs.Core.Context、Microsoft.XLANGs.Core.OperationInfo ) 次は、Microsoft.XLANGs.Core.PortBinding.VerifyMessage(Envelope env、String typeName、Context cxt、OperationInfo op)で例外が発生した場所を識別するスタックトレースです。 at Microsoft.BizTalk.XLANGs.BTXEngine.BTXPortBinding .VerifyMessage(Envelope env、String typeName、Context cxt、OperationInfo op) 、Microsoft.BizTalk.XLANGs.BTXEngine.BTXLogicalPortBinding.VerifyMessage(Envelope env、String typeName、Context cxt、OperationInfo op)(Microsoft Corporation、その関連会社またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。 Microsoft.XLANGs.Core.SegmentScheduler.RunASegmentでBizTalkEmployeeInfo.BizTalk_Orchestration1.segment1(StopConditions STOPON) でMicrosoft.XLANGs.Core.PortBase.GetMessageId(サブスクリプションのサブスクリプション、セグメントcurrentSegment、コンテキストCXT、エンベロープENV &、CachedObject位置) (セグメントs、StopConditions stopCond、例外& exp)

誰かがここでお手伝いできますか?

+0

Sanorayaは、あなたが電話しているサービスから障害メッセージを受け取っていると言いました。あなたはそれをコード化する必要があります(時折の例外/停止を処理するために)が、あなたはそれを常に取得している場合、あなたは明らかに正しくサービスを呼び出すことはありません。しかし、あなたが間違ったことを診断するのに役立つ情報を私たちに提供したことはありません。 – Dijkgraaf

答えて

1

Webサービスが例外をスローします。つまり、http://schemas.xmlsoap.org/soap/envelope/#Faultタイプのメッセージですが、BizTalkメッセージング/オーケストレーションエンジンでは、その処理方法がわかりません。 soap例外を処理するために送信ポートとオーケストレーションを設定する必要があります。詳細はこちらを参照してください。 https://blogs.msdn.microsoft.com/biztalknotes/2013/02/12/how-to-handle-fault-message-in-biztalk-server/

0

fiddlerを使用すると便利です。送信ポートで、フィドラーをプロキシに設定します。 biztalkからの通信は、プロキシとして機能するときに、フィドラーによって記録され、記録されます。 BizTalkの障害が隠している応答を簡単に表示できます。

関連する問題