on 01-11-2011 8:40 AM
Hi ,
We have a scenario where couple of messages coming from SAP system to XI are failing in XI due to the below error.
javax.xml.transform.TransformerException: com.sap.engine.lib.xml.parser.ParserException: Invalid char #0xb(:main:, row:466, col:9598) at com.sap.engine.lib.jaxp.TransformerImpl.transform(TransformerImpl.java:249) at com.sap.aii.ibrun.server.mapping.MappingTransformer.transform(MappingTransformer.java:153) at com.sap.aii.ibrun.server.mapping.XSLTMapping.executeStep
Please find below the invalid character in payload before Unfortunately.
There is no requirement to
check the wheel nut tension in procedure PRC-MP-004. Unfortunately,
this creates complacency that the indicators are accurate.
Can some one let me know how these kind of characters can be handled by mapping with out correction from source
Hi,
You can use Java mapping before actual mapping to remove the invalid characters from the payload.
refer:
http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/9420 [original link is broken] [original link is broken] [original link is broken]
OR even try this
SAP Note: 1004368
Regards,
Aravind
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
> SAP Note: 1004368
According to this note, a vertical tab is not allowed and in fact, XSLT does not cosider this character as whitespace:
http://www.w3.org/TR/xslt#strip
So I was wrong in my previous answer.
Apply the above mentioned note, that should help.
ascii 11 (char #0xb) is a vertical tab = whitespace and should not cause troubles. Which PI version do you use?
If you have PI 7.1, try to select "use SAPXMLToolkit" in operation mapping.
If you do not find a solution, report to SAP.
Edited by: Stefan Grube on Jan 11, 2011 10:16 AM
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi
You can handle this with the file encoding.
or
you can also use the standard repleceString function available.
Input field----->
Constant(*)-->replace string function--->target field
Constant(a)---->
Note:
constant(*)----> set the constant as *
constant(a)---->set the constant as a or your new value.
Regards
Pothan
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
78 | |
10 | |
9 | |
7 | |
6 | |
6 | |
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.