Kuldeep Desai
Kuldeep Desai

Reputation: 1

Mule 4 issue while using XPATH

I am using the below xpath expression to extract the String, its not working as expected anyone please help me out here

XPATH Exp:

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

Payload:

<?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>

I am getting:

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

The above arraylist has to be converted into the required format.

Expected Output:

The whole String(As mentioned below) inside the tag

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

Please help me in finding out the required output.

Upvotes: 0

Views: 1342

Answers (1)

machaval
machaval

Reputation: 5059

Hi I would recommend to use directly dataweave instead of XPath.

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

Upvotes: 3

Related Questions