You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WSO2中Class Mediator中介失败问题求助

问题根源分析

从错误栈的最底层异常可以明确核心问题:

Caused by: Unexpected character (<) at position 0.

自定义类中介器RESTInteractRequestMediator在第44行尝试解析JSON格式数据,但收到的响应内容以<开头,说明目标服务返回的是XML格式内容,而非中介器预期的JSON。

解决方案步骤
  • 直接验证目标端点:绕过WSO2,直接调用报错的端点,查看返回的Content-Type响应头和实际内容,确认是否确实返回XML(比如SOAP响应、错误页面XML等)。
  • 修复自定义中介器逻辑:
    • 在RESTInteractRequestMediator的JSON解析代码(第44行)之前,先判断响应的Content-Type,如果是application/xml或text/xml,先将XML转换为JSON再解析(可使用WSO2内置XML转JSON中介器,或在自定义代码中实现转换)。
    • 如果该端点理应返回JSON,检查目标服务配置,确认是否在特定场景下返回了XML错误信息。
  • 调整WSO2端点配置:为该报错端点单独配置对应的消息构建器(Message Builder)和格式化器(Message Formatter),避免强制用JSON处理器处理XML响应。
  • 添加调试日志:在RESTInteractRequestMediator中添加日志代码,打印收到的原始响应内容,明确目标服务返回的具体XML内容,进一步排查服务端问题。

内容的提问来源于stack exchange,提问作者Wajih Haider

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 03:25:19