Mule直到成功失败表达式不工作

Mule直到成功失败表达式不工作,mule,Mule,我已经给出了我的测试结果,直到成功为止,如下所示,但即使我得到200个响应,它仍试图再次调用流测试 <until-successful maxRetries="2" millisBetweenRetries="1500" failureExpression="#[message.inboundProperties['http.status'] != 200 or 202 or 500]" synchronous="true" doc:name="Until Successful">

我已经给出了我的测试结果,直到成功为止,如下所示,但即使我得到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>

有人能帮我解释一下语法吗?

你的表达是状态!=200 | |状态!=202 这意味着在状态=200的情况下,第二个条件失败,在状态=202的情况下,第一个条件失败

您可以做的是定义:失败是状态!=200和状态=202和状态=五百

failureExpression="#[message.inboundProperties['http.status'] != 200 && #[message.inboundProperties['http.status'] != 202 && #[message.inboundProperties['http.status'] != 500]"

如果我们以这种方式编写failureExpression=[message.inboundProperties['http.status']!=200&&message.inboundProperties['http.status']!=202&&message.inboundProperties['http.status']!=500]
failureExpression="#[message.inboundProperties['http.status'] != 200 || message.inboundProperties['http.status'] !=202]" 
failureExpression="#[message.inboundProperties['http.status'] != 200 && #[message.inboundProperties['http.status'] != 202 && #[message.inboundProperties['http.status'] != 500]"