我在mulesoft的http请求者中点击多个url
For example:-abc.com
def.com
ghy.com
xyz.com
但是" def.com"我正在连接超时错误(没有响应代码即将发生)我知道因为网站已关闭但是一旦我收到此错误,我的流程就停止了,而不是前进到另一个网站,即" ghy.com"等。
如果特定网站连接超时,你能告诉我如何继续处理流程
我尝试过捕获异常策略,但我发现了这个异常,但无法继续流程。
答案 0 :(得分:1)
执行以下操作。
catch异常应该处理私有流上的错误,当它返回到原始流(调用流)时,它应该继续处理。
修改强>
这就是我的意思。 test2Flow是主要流程,然后你在那里得到了foreach
组件。它将称为私人流程。
私有流执行HTTP请求调用,其中URL来自有效负载。它具有捕获异常策略来处理来自此HTTP请求的错误。
此处,当私有流内发生错误时,foreach
循环不应停止。
<http:request-config name="HTTP_Request_Configuration" host="#[payload.url]" port="#[payload.port]" doc:name="HTTP Request Configuration"/>
<flow name="test2Flow">
<!--get list -->
<foreach doc:name="For Each">
<flow-ref name="payload" doc:name="Flow Reference"/>
</foreach>
</flow>
<flow name="test2Flow1">
<http:request config-ref="HTTP_Request_Configuration" path="/" method="GET" doc:name="HTTP"/>
<!-- store response -->
<catch-exception-strategy doc:name="Catch Exception Strategy">
<logger level="INFO" doc:name="Logger"/>
</catch-exception-strategy>
</flow>