如何替换 Mule CE 中的数据映射器

how to replace datamaper in Mule CE

我需要将 json 发送到 Web 服务并获得 json 格式的响应。 所以首先我有一个接收数据的 http 连接器,然后我需要一个数据映射器来映射我到达 Web 服务的 json。在第二个流程中,我放置了另一个 http 连接器,它监听 Web 服务并获得响应。实际上我需要的是一个可以替换数据映射器的元素,因为我正在使用社区版本。所以如果有任何代码示例或教程,我将不胜感激。

第一流:

<flow name="Flow1">
        <http:inbound-endpoint exchange-pattern="request-response"
            host="localhost" port="8082" doc:name="HTTP"
            contentType="application/x-www-form-urlencoded" path="getDetails" />
        <json:json-to-object-transformer
            returnClass="java.lang.Object" doc:name="JSON to Object" />
        <set-session-variable variableName="tkn"
            value="#[message.payload.token]" doc:name="token" />
        <set-session-variable variableName="msg"
            value="#[message.payload.msg]" doc:name="message" />

        <logger message="#[sessionVars['tkn']]" level="INFO" doc:name="Logger" />

    </flow>

您可以在自定义组件中进行自己的映射,也可以使用 Smooks to do the transformations. If you choose the latter you can check out this blog post 这样的框架。 HTH.

拉珍,

如果有帮助,请参考以下link。

http://www.mulesoft.org/documentation/display/current/JSON+Module+Reference

您需要按照以下步骤操作:-
1. 从您输入的 Json 请求中提取数据并存储在变量中。
2. 现在,如果您的外部服务是 SOAP,那么您可以使用 XSLT 示例创建 SOAP 请求:- http://bushorn.com/xml-to-xml-transformation-in-mule/
3. 如果您的外部 Web 服务是 REST,您可以使用 Mule Expression transformer 示例为该服务创建 JSON 请求:- http://bushorn.com/json-to-json-transformation-in-mule/