我已经给了我,直到成功如下,但即使我得到200响应,它也试图调用流程"测试"再回来。
<until-successful maxRetries="2" millisBetweenRetries="1500" failureExpression="#[message.inboundProperties['http.status'] != 200 or 202 or 500]" synchronous="true" doc:name="Until Successful">
<flow-ref name="test" doc:name="test"/>
</until-successful>
如果我只用这种方式给出一个代码就可以了。
<until-successful maxRetries="2" millisBetweenRetries="1500" failureExpression="#[message.inboundProperties['http.status'] != 200]" synchronous="true" doc:name="Until Successful">
<flow-ref name="test" doc:name="test"/>
</until-successful>
我也尝试过如下表达式,但不能正常工作
failureExpression="#[message.inboundProperties['http.status'] != 200 || message.inboundProperties['http.status'] !=202]"
有人可以帮我解释语法
答案 0 :(得分:1)
你的表情说Status!= 200 ||状态!= 202 这意味着,如果状态= 200,则第二个条件失败;如果状态= 202,则第一个条件失败
你可以做的是定义:失败是当状态!= 200 AND状态!= 202 AND状态!= 500
!passed