如何闯入MULE中的流程中间并将消息返回给客户端..?

发布于 2024-12-26 07:21:32 字数 808 浏览 1 评论 0原文

我在 MULE 中有一个流程,如下所示:

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

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

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

I have a Flow in MULE like below :

<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>

This flow first enters my first component class : "com.java.Meta" . And whatever i "return" from this java class becomes the input for my second component class : "com.java.Meta2".


Now what i want to do is like :

I want to check for something in "payload" in class "Meta" and if it does not exist, then i want to return a Java HashMap to client (in form of JSON) containing the error key.

And if it exist, then i want to return the same "payload" to second component class "Meta2".

How can i achieve this..??

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

半衾梦 2025-01-02 07:21:32

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

您可以使用 Groovy 表达式:

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

Wrap your second component in a choice router, returning the current message its map payload contains the "error" key.

You can use a Groovy expression:

#[groovy:payload.containsKey('error')]
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文