【问题标题】:How can I send an empty node as part of a SOAP request in mule studio?如何在 mule studio 中发送一个空节点作为 SOAP 请求的一部分?
【发布时间】:2015-06-21 20:53:14
【问题描述】:

我正在尝试使用 Web 服务连接器在 mule studio 中配置流程。端点期望的 SOAP 主体如下所示:

<soapenv:Body>
  <v4:readFields>
     <filter>
        <type>?</type>
        <id>?</id>
        <name>
           <operator>?</operator>
           <value>?</value>
        </name>
     </filter>
     <pageNumber>?</pageNumber>
  </v4:readFields>
</soapenv:Body>

&lt;filter&gt; 节点本身是必需的,但内容是可选的,所以我想让我的流程发送如下正文:

<soapenv:Body>
  <v4:readFields>
     <filter />
     <pageNumber>1</pageNumber>
  </v4:readFields>
</soapenv:Body>

有没有办法设置消息负载来发送这个请求?

运行 Anypoint Studio 5.1.0、Mule ESB 3.6。
我当前的流程配置:

<flow name="GetFieldInfo">
    <http:listener config-ref="localhost" path="/fields" doc:name="HTTP"/>
    <enricher source="#[payload]" target="#[flowVars.sessionId]" doc:name="GetSessionId">
        <flow-ref name="GetSessionId" doc:name="Login"/>
    </enricher>
    <data-mapper:transform config-ref="Xml_loginResponse__To_Xml_sessionHeader_" input-ref="#[flowVars[&quot;sessionId&quot;]]" target="#[message.outboundProperties[&quot;soap.sessionHeader&quot;]]" doc:name="Set Session Header"/>
    <ws:consumer config-ref="BrontoAPI" operation="readFields" doc:name="Web Service Consumer"/>
    <echo-component doc:name="Echo"/>
</flow>

【问题讨论】:

  • 骡版?流配置?
  • 添加了问题的版本和当前配置。
  • 谢谢!真的很难知道这里发生了什么,尤其是在执行命中ws:consumer 时没有看到消息有效负载是什么。 Mule目前发送什么?带有空子元素的 filter 元素?
  • 使用该配置它会中断,因为有效负载为空。 (流程中的丰富器和数据映射器仅接触肥皂头,而不是消息有效负载)。如果我使用变量-> 数据映射器在肥皂正文中设置 pageNumber,它将因“无法验证参数过滤器”而中断。调试器只是将我的有效负载显示为字节数组,所以我不知道实际发生了什么。
  • 什么会使有效载荷无效?如果您在ws:consumer 之前添加logger,它会将有效负载记录为空吗?

标签: soap mule mule-studio


【解决方案1】:

您可以使用 mule 解析模板发送带有可变数据的静态 xml

样本:

<soapenv:Body>
 <v4:readFields>
 <filter />
 <pageNumber>#[payload]</pageNumber>
 </v4:readFields>
</soapenv:Body>

你可以在这里找到文档https://developer.mulesoft.com/docs/display/current/Parse+Template+Reference

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-06-26
    • 2011-06-07
    • 2014-06-23
    • 1970-01-01
    • 2014-05-31
    • 2015-08-23
    • 1970-01-01
    相关资源
    最近更新 更多