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

部署CApp至Service Catalog时遭遇格式错误JSON异常

问题分析与解决方案

问题描述

使用VS Code MI扩展、Integration Studio(均为4.3.0版本)向4.0.0版本的远程WSO2 Micro Integrator服务器的Service Catalog部署服务时,触发以下JSON解析异常:

INFO {ServiceCatalogDeployer} - Executing Service Catalog deployer for CApp : hello_1.0.0.car
Exception in thread "pool-16-thread-2" com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Use JsonReader.setLenient(true) to accept malformed JSON at line 1 column 22 path $
    at com.google.gson.JsonParser.parseReader(JsonParser.java:76)
    at com.google.gson.JsonParser.parseString(JsonParser.java:51)
    at com.google.gson.JsonParser.parse(JsonParser.java:115)
    at org.wso2.micro.integrator.initializer.utils.ServiceCatalogUtils.getAllServices(ServiceCatalogUtils.java:314)
    at org.wso2.micro.integrator.initializer.serviceCatalog.ServiceCatalogDeployer.run(ServiceCatalogDeployer.java:61)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
    at java.base/java.lang.Thread.run(Thread.java:1623)
Caused by: com.google.gson.stream.MalformedJsonException: Use JsonReader.setLenient(true) to accept malformed JSON at line 1 column 22 path $
    at com.google.gson.stream.JsonReader.syntaxError(JsonReader.java:1659)
    at com.google.gson.stream.JsonReader.checkLenient(JsonReader.java:1465)
    at com.google.gson.stream.JsonReader.doPeek(JsonReader.java:551)
    at com.google.gson.stream.JsonReader.peek(JsonReader.java:433)
    at com.google.gson.JsonParser.parseReader(JsonParser.java:71)

核心原因

你的猜测完全正确:版本差异是导致异常的直接原因。WSO2 MI的Service Catalog功能在4.0.0到4.3.0版本间存在显著的API和数据格式迭代,4.3.0版本的工具生成的Service Catalog元数据JSON结构、字段定义与4.0.0版本服务器的解析逻辑不兼容,触发了JSON格式解析错误。

解决方案

  • 降级本地工具版本:将VS Code MI扩展、Integration Studio、本地MI服务器统一降级到4.0.0版本,确保与远程服务器版本完全一致,这是最可靠的兼容方案,能直接消除格式不匹配问题。
  • 手动调整CAR包元数据(仅临时应急):若无法降级,可解压CAR包,找到Service Catalog相关的JSON配置文件(通常命名为service-catalog.json或类似),对照4.0.0版本的规范调整JSON结构和字段后重新打包部署,但该方法操作繁琐,容易引入新问题。
  • 升级远程服务器(若有权限):将远程MI服务器升级到4.3.0版本,统一全链路版本,既解决当前兼容问题,还能使用新版本的功能优化。

内容的提问来源于stack exchange,提问作者ido omer

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.15 23:43:18