Mule 骡子返回500而不是400

Mule 骡子返回500而不是400,mule,http-status,Mule,Http Status,我正在对将调用http出站端点的流进行http调用。出站端点返回一条http.status=400的消息。直到我在流中的最后一刻,标题将显示http.status实际上是400 但是Mule将返回带有http.status=500内部服务器错误的消息 我找到了这个解决方案,但它对我不起作用: 当我在我的http出站端点http.status之前设置此值时,状态将更改为200,这也不正确 我需要做什么才能接收正确的http.status?您可以将http头设置为出站属性,这样您就可以执行以下操

我正在对将调用http出站端点的流进行http调用。出站端点返回一条
http.status=400
的消息。直到我在流中的最后一刻,标题将显示
http.status
实际上是400

但是Mule将返回带有
http.status=500内部服务器错误的消息

我找到了这个解决方案,但它对我不起作用:


当我在我的http出站端点
http.status
之前设置此值时,状态将更改为200,这也不正确


我需要做什么才能接收正确的http.status?

您可以将http头设置为出站属性,这样您就可以执行以下操作

<set-property propertyName="http.status" value="#[message.inboundProperties['http.status']]"/>


在出站HTTP调用之后,以完全相同的状态响应。您还需要http.disable.status.code.exception.check来防止异常,除非您有其他类型的异常处理。

谢谢Anton!将
http.disable.status.code.exception.check与添加
http.status
作为
outboundproperty
相结合,成功了!
<set-property propertyName="http.status" value="#[message.inboundProperties['http.status']]"/>