如何在MULE中打入Flow的中间并将消息返回给客户端..?

时间:2012-01-13 05:10:31

标签: java break mule flow

我有一个如下所示的流程:

<flow name="MetaService">
    <http:inbound-endpoint address="http://localhost:8000/jcore/meta"  
transformer-refs="HttpParams" responseTransformer-refs="JavaObjectToJson">
    </http:inbound-endpoint>

    <component class = "com.java.Meta">
    <component class = "com.java.Meta2"

</flow>

此流程首先进入我的第一个组件类:“ com.java.Meta ”。无论我从这个java类中“返回”成为我的第二个组件类的输入:“ com.java.Meta2 ”。


现在我想做的是:

我想在“ Meta ”类中检查“有效负载”中的内容,如果它不存在,那么我想返回 Java HashMap 到客户端(以JSON的形式),包含 错误 键。

如果它存在,那么我想将相同的“有效负载”返回到第二个组件类“ Meta2 ”。

我怎样才能实现这个目标.. ??

1 个答案:

答案 0 :(得分:1)

将第二个组件包装在选择路由器中,返回当前消息,其map负载包含“error”键。

您可以使用Groovy表达式:

#[groovy:payload.containsKey('error')]