Mule 4 проблема при использовании XPATH - PullRequest
0 голосов
/ 13 декабря 2018

Я использую приведенное ниже выражение 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 �'

Приведенный выше массив должен быть преобразован в требуемый формат.

Ожидаемый результат:

Вся строка (как упомянуто ниже) внутри тега

&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;

Пожалуйста, помогите мне найти требуемый результат.

1 Ответ

0 голосов
/ 14 декабря 2018

Привет, я бы рекомендовал использовать напрямую dataweave вместо XPath.

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