on 06-16-2016 5:02 PM
Hi everyone,
I have a little question. On my integration project I'm trying to filter the informations of the incoming payload. For this I'm using a Filter with an XPath expression that match my needs (I'm trying to get a full node). After the Filter, the Content Modifier serve me to insert the node coming from the Filter in a well formed XML style :
<?xml version="1.0" encoding="UTF-8"?>
<SALESORDER_CREATEFROMDAT202>
${in.body}
</SALESORDER_CREATEFROMDAT202>
The ECC send back an error (SRT_CORE/131), but I managed to understand why without solving it.
The problem is the XPath expression or the way XPath is interpreted by HCI.
Let me explain my point : if your XPath is //foo/text(), the result is the textual value of a foo element. If you write //foo or //foo/node() you get a foo element.
Here is my problem with the behavior of XPath in HCI, I tried to get a node, and with ${in.body} insert it in the XML of the Content Modifier. When checking in transaction SRTUTIL, it just concatenate all textual value of my payload, discarding all the tags.
Do anyone know if it's standard behavior, or not ?
Best regards,
Julen.
Hi,
First of all, thank you both for answering me. I tried the solution (switch Node to Nodelist), and made a log before the Filter and after the Filter. The problem is after the Filter, the payload is empty !
So in output I have my XML structure but ${in.body} is empty, making ECC to raise an Exception.
Please find in attachment the log files, one of the payload before the Filter and one after.
Here is my Xpath expression, followed by the content modifier.
For obvious reasons, I think the Filter is not working well, but I don't understand why...
Best regards,
Julen.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
I see an extra Type at the end of your namespace. The namespace should be, xmlns:ns1=http://sap.com/xi/XI/SplitAndMerge
Hi Julen
I don't have a tenant to try this out, but can you try changing the Value Type of the filter to either Node or Nodelist to see if there is any difference in the output.
Regards
Eng Swee
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Eng Swee is bang On. Make sure your Filter Has NodeList selected!
If you only see the data and not the XML Tags, you have the Filter Type selected as String.
I just tried what you are trying and this is how it seems to work for me with Nodelist...
Integration Flow with Filter and Content Modifier
Filter Settings
Content Modifier Settings
Input Payload to Integration Flow
Output Of Filter Step
Output of Content Modifier Step
Regards,
Bhavesh
User | Count |
---|---|
83 | |
23 | |
11 | |
9 | |
8 | |
5 | |
5 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.