【问题标题】:How to create a SOAP message from JSON payload in mule如何在 mule 中从 JSON 有效负载创建 SOAP 消息
【发布时间】:2015-01-16 04:35:36
【问题描述】:

我需要将下面的 json 有效负载转换为肥皂消息并将消息发送给消费者,消费者编辑数据并发送回肥皂消息。

我在肥皂方面做得不多。我只有 REST 经验。在这样的过程中我需要采取哪些步骤?

最好的方法是什么?

[{"salesOrderId":"00004-5-6","saleName":"House Sale","status":"processing"}, {"salesOrderId":"00001-2-3","saleName":"Car Sale","status":"processing"}]

【问题讨论】:

  • 你用什么语言做这个?
  • 谢谢你的回复,我在Mule里做。这是基于java的
  • 不熟悉 Mule 但this question 转换 XML->JSON。也许json.transformers 是你需要的?有一个类JsonToXml 以及here

标签: soap mule


【解决方案1】:

尝试使用 Mule DataMapper。这可以帮助您以更简单的方式将 JSON 转换为 XML。您可以在 Mule 的 Anypoint Studio 中试用。

【讨论】:

    【解决方案2】:

    有多种方法可以执行这种转换,例如:

    路径 - 1

    • Json 到 XML(带有转换器或字符串集有效负载)
    • 使用 XSLT、转换器或字符串集有效负载的 XML 到 SOAP 请求。
    • Send SOAP Request sobre HTTP (POST / Content-type: applicacion/xml / soapAction)

    路径 - 2

    • 使用 Groovy、XSLT 或字符串集负载的 Json 到 SOAP 请求。
    • Send SOAP Request sobre HTTP-OUTBOUND (POST / Content-type: applicacion/xml / soapAction)

    路径 - 3

    • Json 到 SOAP 请求代理(WSDL 到 Java)。
    • Send SOAP Request sobre HTTP-OUTBOUND (POST / Content-type: applicacion/xml / soapAction)

    【讨论】:

    • 感谢您的回复,如果我使用的是 path-2,并且我已将 json 有效负载转换为 xml。我必须创建一个wsdl吗?还是骡子为我做的
    • 1) 获取与服务关联的 WSDL,2) 使用soapUI 来消费它,3) 以 SOAP 请求为基础,填充 json 或其他变量,4) 通过 HTTP SOAP 发送请求.
    【解决方案3】:

    最简单的方法是使用<json:json-to-object-transformer/>JSON 负载中提取 JSON 元素,并将每个节点值存储在 Mule 中的流变量等变量中。
    然后您可以使用 XSLT 创建 SOAP 请求,并将流变量值作为 <mulexml:context-property/>
    传递到 XSLT 参考:- https://developer.mulesoft.com/docs/display/current/XSLT+Transformer
    创建 SOAP XML 后,您可以简单地将它们发布到您的 HTTP 出站端点,指向您需要使用的外部 Web 服务

    【讨论】:

      猜你喜欢
      • 2014-03-04
      • 2013-08-21
      • 2012-06-21
      • 1970-01-01
      • 1970-01-01
      • 2015-07-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多