SAP Integration Suite Splitter报错:prolog中存在意外字符'{'
解决SAP Integration Suite中Splitter模块报"Unexpected character '{' (code 123) in prolog"错误的排查方案
针对你遇到的Splitter模块报错问题,即便传入XML无{字符且格式正常,可从以下几个方向排查:
检查Splitter模块的格式配置
确认Splitter的输入消息格式是否被误设为JSON。部分场景下模块默认或被错误配置为JSON解析模式,即便传入XML也会用JSON解析器处理,触发该错误。需进入模块配置,将消息格式明确设置为XML,同时关闭可能存在的「自动消息类型检测」功能——若XML存在不可见BOM字符,自动检测逻辑可能误判为JSON格式。验证消息传输过程的完整性
- 在Splitter前添加Log模块,输出完整消息内容(含HTTP头部与正文),排查是否有前置模块(如Content Modifier、Router)意外修改消息,添加了JSON前缀/后缀或不可见异常字符。
- 检查HTTP请求的
Content-Type头部是否为application/xml或text/xml。若头部被设为application/json,即便正文是XML,集成套件仍会调用JSON解析器处理。
排查Splitter的XPath配置
确认Splitter使用的XPath表达式无语法错误,避免混入JSON路径语法(如误用{)。可先用最简XPath(如//row)测试,排除表达式本身的问题。清理旧消息触发干扰
若为异步集成场景,检查消息队列或持久化存储中是否存在未处理的旧JSON消息,这些消息可能被误触发导致报错。清空相关队列后重新发送测试XML消息。
内容的提问来源于stack exchange,提问作者Ken King
相关产品推荐
相关产品推荐

