【发布时间】:2015-10-15 06:46:20
【问题描述】:
我有一个编排,它接收来自本地休息服务的请求,然后将请求发送到另一个远程休息服务,然后如果远程服务使用 200 HTTP 代码成功返回响应,BizTalk 可以处理响应消息,但如果 HTTP 响应代码不同则 200 BizTalk 无法处理故障响应消息。
BizTalk 日志在事件查看器上显示以下错误。
Details:"System.Net.WebException: The remote server returned an unexpected response: (400) Bad Request.
{"errorMessage":{"message":"En az 1 adres alani gereklidir.","moreInfoURL":"http://paritus.com/kb/api-errors","status":400}}".
在这个问题之后,我在发送端口上添加了一个错误操作,但 BizTalk 仍然无法捕获失败消息。你有什么想法吗?
【问题讨论】:
-
捕获异常部分有什么?你捕捉到 System.Exception 吗?或者你是否抓住了 Fault_1 。Fault_1 中定义了什么?
-
实际上我尝试捕获来自发送端口的 fault_1 消息,但我无法捕获 http 错误响应。如果对捕获故障消息有其他想法,我可以尝试您的解决方案
-
这是在尝试使用 WCF-WebHttp 适配器吗?是的,错误消息不会进入端口上的故障,因为它没有在它创建的 SOAP 异常上设置消息类型。我认为这是一个错误,我已经在我的博客中写过它。您必须将其作为 System.Exception 捕获
-
即使使用 System.Exception,我可以在其中捕获上述错误,但我仍然得到与发送端口相关的暂停可恢复实例。它只是我的吗?
标签: json port biztalk httpresponse fault