【问题标题】:Mule 4 issue while using XPATH使用 XPATH 时的 Mule 4 问题
【发布时间】:2018-12-13 08:17:48
【问题描述】:

我正在使用下面的 xpath 表达式来提取字符串,它没有按预期工作任何人请在这里帮助我

XPATH Exp:

XmlModule::xpath('/*:ExecuteXMLStringResponse/*:ExecuteXMLStringResult',payload.^raw,{})]"

有效载荷:

<?xml version="1.0" encoding="UTF-8"?>
<ExecuteXMLStringResponse xmlns="http://tempuri.org/">
<ExecuteXMLStringResult>
&lt;?xml version="1.0"?&gt;&lt;DCResponse&gt;&lt;Status&gt;Success&lt;/Status&gt;&lt;Authentication&gt;&lt;Status&gt;FirstTimeLogIn&lt;/Status&gt;&lt;Token&gt;646d9300-7341-41a0-9c0f-05a40c3f2b94&lt;/Token&gt;&lt;/Authentication&gt;&lt;ResponseInfo&gt;&lt;ApplicationId&gt;23429782&lt;/ApplicationId&gt;&lt;SolutionSetInstanceId&gt;b08cc093-c735-4435-b7b9-beef1c10dd23&lt;/SolutionSetInstanceId&gt;&lt;CurrentQueue&gt;&lt;/CurrentQueue&gt;&lt;/ResponseInfo&gt;&lt;ContextData&gt;&lt;Field key="RiskClass"&gt;C&lt;/Field&gt;&lt;/ContextData&gt;&lt;/DCResponse&gt;</ExecuteXMLStringResult></ExecuteXMLStringResponse>

我得到:

'¬í ava.util.ArrayListx Ò ™ Ça '

上面的arraylist必须转换成需要的格式。

预期输出:

标签内的整个字符串(如下所述)

&lt;?xml version="1.0"?&gt;&lt;DCResponse&gt;&lt;Status&gt;Success&lt;/Status&gt;&lt;Authentication&gt;&lt;Status&gt;FirstTimeLogIn&lt;/Status&gt;&lt;Token&gt;646d9300-7341-41a0-9c0f-05a40c3f2b94&lt;/Token&gt;&lt;/Authentication&gt;&lt;ResponseInfo&gt;&lt;ApplicationId&gt;23429782&lt;/ApplicationId&gt;&lt;SolutionSetInstanceId&gt;b08cc093-c735-4435-b7b9-beef1c10dd23&lt;/SolutionSetInstanceId&gt;&lt;CurrentQueue&gt;&lt;/CurrentQueue&gt;&lt;/ResponseInfo&gt;&lt;ContextData&gt;&lt;Field key="RiskClass"&gt;C&lt;/Field&gt;&lt;/ContextData&gt;&lt;/DCResponse&gt;

请帮我找出所需的输出。

【问题讨论】:

  • 我刚刚edited your question,改进了它的格式,或者its quality,以帮助人们理解您的问题,并帮助您获得适当的答案。但是您仍然需要添加更多信息才能让您的问题得到解决。
  • 谢谢...我已经编辑和更新回来.....
  • 我认为元素名称中没有前缀(命名空间),因此您可以将其更新为:'//ExecuteXMLStringResponse/ExecuteXMLStringResult' 并首先使用双 /。如果没有再次运行,则检查默认命名空间声明。
  • 谢谢阿玛伦德拉。在使用给定的解决方案 '¬í ava.util.ArrayListx �Ò ™ Ça �' 后,我将字符串作为数组列表的一种形式............如何转换此数组列表到所需的值....
  • 为什么不直接output application/java --- payload.ExecuteXMLStringResponse. ExecuteXMLStringResult

标签: xml xpath mule dataweave mule-esb


【解决方案1】:

您好,我建议直接使用 dataweave 而不是 XPath。

%dw 2.0
output application/java 
--- 
payload.ExecuteXMLStringResponse.ExecuteXMLStringResult

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-04
    • 2020-09-03
    • 2022-11-18
    相关资源
    最近更新 更多