0

我在 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 ”中的“ payload ”中的某些内容,如果它不存在,那么我想将包含错误键的Java HashMap(以JSON 的形式)返回给客户端。

如果它存在,那么我想将相同的“ payload ”返回给第二个组件类“ Meta2 ”。

我怎样才能做到这一点..??

4

1 回答 1

1

将您的第二个组件包装在选择路由器中,返回当前消息,其映射有效负载包含“错误”键。

您可以使用 Groovy 表达式:

#[groovy:payload.containsKey('error')]
于 2012-01-13T16:36:22.017 回答