gpt4 book ai didi

rest - BizTalk Server 2013 休息错误处理

转载 作者:行者123 更新时间:2023-12-04 15:41:51 25 4
gpt4 key购买 nike

我正在使用 BizTalk Server 2013 WCF-WebHttp 适配器来调用 REST API SalesForce。
当我收到不同于 200 的 HTTP 状态代码时,我的编排捕获了 SystemException,但我仍然有一个发送端口实例暂停。
是否有任何“ native ”解决方案来避免发送端口实例暂停?
我读了这篇文章:
BizTalk Server: REST Services Error Handling

但是对于 WCF-WebHttp 适配器,CustomBinding 选项不可用。
我试图添加错误消息,但我还没有找到合适的类型来捕获这个异常。

你有什么主意吗 ?

最佳答案

不幸的是,没有

该文章有更新版本 BizTalk Server 2013 R2: Handle exceptions from REST services in Orchestration

您必须将发送端口设置为 WCF-Custom 并使用自定义绑定(bind),然后从 WCF-WebHttp 重新创建所有设置。

更多细节请关注。

更新:
将编排中的异常作为系统异常捕获是好的,然后您可以检查错误以查看它是否是业务异常,例如如果您在执行创建或更新并获得 404 之前查询对象是否存在于 RESTful 服务中。

但是,您必须做更多的事情来阻止端口上的 Suspended 消息。

1) 停止端口上的 Suspended 消息 Enable Routing for Failed messages on the Send Port。

2)然而,这意味着它将转到您用于处理失败消息的任何框架,从而导致为业务异常引发大量错误

为了防止这种情况,您要么需要调整异常处理程序上的过滤器表达式,要么在异常处理框架中设置规则以忽略这些消息。

例如,我们使用 ESB 异常处理框架并调整规则以排除特定的发送端口。

ESB All.Exceptions port
ESB 异常处理框架 All.Exceptions 端口

3)但是,您仍然需要其他内容订阅失败的消息以使它们消失,我们使用自定义的空适配器和过滤器来订阅错误。这意味着错误只会出现在编排中。

NULL Adapter filter expression

NULL 适配器过滤器表达式

关于rest - BizTalk Server 2013 休息错误处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36986973/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com