4

我有一个想要通过 wso2 ESB 使用的 REST 服务。该服务返回一个 JSON 对象。但是,我希望在 JSON进入 ESB 并得到处理之前对其进行修改。

我已经设法部署了一个自定义类中介,但我不知道如何用它处理消息正文(JSON 对象)。这是正确的方法吗?

我的服务配置目前如下所示:

<proxy xmlns="http://ws.apache.org/ns/synapse" name="ListRm" transports="https,http" statistics="disable" trace="disable" startOnLoad="true">
   <target>
      <outSequence>
         <class name="org.mediator.MyMediator" />
         <send />
         <drop />
      </outSequence>
      <endpoint>
         <address uri="http://xx.xx.xxx.xx:8080/alfresco/s/slingshot/datalists/lists/site/rm/documentLibrary" />
      </endpoint>
   </target>
</proxy>

还有其他方法可以在消息正文进入 ESB 之前对其进行修改吗?

4

1 回答 1

2

在突触中介引擎级别,您无法访问 json 消息。在 JSON 构建器级别,它将 json 消息转换为 xml 消息。因此,您需要访问 xml 元素并在那里进行修改。

messageContext.getEnvelope().getBody().getFirstElement();

您可以获得上面给出的 xml 元素。

于 2012-07-22T12:30:28.830 回答