收到的意外消息类型与预期类型Biztalk不匹配

时间:2017-12-03 04:37:44

标签: biztalk biztalk-2009

我是Biztalk的新手,我已经使用了WCF服务并创建了自己的架构和业务流程。 然后发布了WCF服务,一切顺利,但是当我从SOAP UI运行已发布的服务时,我在Biztalk服务器管理员中获得此异常

  

xlang / s引擎事件日志条目:未捕获的异常(请参阅下面的'内部异常')已暂停服务实例' BizTalkEmployeeInfo.BizTalk_Orchestration1(8e85552e-b611-e6a6-655f-b3b58002a88d )&#39 ;.   在管理恢复或终止之前,服务实例将保持暂停状态。   如果恢复,实例将从其上一个持久状态继续,并可能重新抛出相同的意外异常   InstanceId:eb2b7522-db03-40f0-9cfa-28509fea03b0
  形状名称:
  ShapeId:
  抛出异常:段-1,进度-1
  内部异常:收到意外消息类型' http://schemas.xmlsoap.org/soap/envelope/#Fault'与预期类型不匹配' http://tempuri.org/#EmployeeDetailsFormattedResponse'。

     

异常类型:UnexpectedMessageTypeException   资料来源:Microsoft.XLANGs.Engine   目标站点:Void 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)中发生异常的位置      在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.BizTalk.XLANGs.BTXEngine.BTXPortBase.VerifyTransport(Envelope env,Int32 operationId,Context ctx)      在Microsoft.XLANGs.Core.Subscription.Receive(Segment s,Context ctx,Envelope& env,Boolean topOnly)      在Microsoft.XLANGs.Core.PortBase.GetMessageId(订阅订阅,Segment currentSegment,Context cxt,Envelope& env,CachedObject位置)      在BizTalkEmployeeInfo.BizTalk_Orchestration1.segment1(StopConditions stopOn)      在Microsoft.XLANGs.Core.SegmentScheduler.RunASegment(Segment s,StopConditions stopCond,Exception& exp)

有人可以帮忙吗。

2 个答案:

答案 0 :(得分: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/

答案 1 :(得分:0)

调试这些的一种非常方便的方法是使用fiddler。在您的发送端口中设置fiddler作为代理。来自biztalk的通信经过,当它充当代理时,由小提琴手记录。您可以轻松查看BizTalk故障隐藏的响应。