1. 前言
- 传入PI的XML包含特殊字符时 XSD Mapping会异常,导致数据异常(某次接口升级,新增字段后发现的异常)
- XML逃逸处理请参考:XML: escape sequences
2. 解决方法
- 对端传入的XML参数中使用 <![CDATA[]]> 将传入的数据包起来(注意 <![CDATA[]]> 中 < 需替换为 < > 需替换为 >)
- PI Message Mapping中对字符串进行Replace处理
3. 效果
- 特殊字符串被正确处理传入到SAP
XXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXXXXXXXXXXXXXXXX