1. 问题描述:

引擎升级到v2.7.1-RELEASE之后: 镜像地址:harbor.devcenter.gushen.sieiot.com/iidp/sie-gushen-iidp-server:v2.7.2-RELEASE

跨APP调用遇到异常:

{
    "result": null,
    "id": "guid",
    "error": {
        "code": 0,
        "message": "com.sie.snest.engine.api.servlet.HttpServletResponse cannot be cast to java.util.List",
        "data": {
            "name": "java.lang.ClassCastException",
            "debug": "java.lang.ClassCastException: com.sie.snest.engine.api.servlet.HttpServletResponse cannot be cast to java.util.List\n\tat com.sie.snest.engine.data.RecordSet.search(RecordSet.java:185)\n\tat n"
        }
    },
    "jsonrpc": "2.0"
}

2. 问题原因:

  1. 边车版本不对,边车版本需要同时升级到v2.1.2.RELEASE,因为边车v2.1.2.UAT对响应进行了压缩,返回的http header:contentType=application/octet-stream,触发了引擎的一个bug,导致直接返回了流
String contentType = response.header("content-type");
              if (StringUtils.isNotBlank(contentDisposition) || StringUtils.containsIgnoreCase(contentType, "application/octet-stream")) {

3. 解决方式:

1.升级边车版本:v2.1.2.RELEASE 镜像地址:harbor.devcenter.gushen.sieiot.com/iidp/distributed-engine:v2.1.2.RELEASE

2.升级镜像版本到:v2.7.2-HOTFIX.038

后端 v2.7.2-HOTFIX.038
更新日期: 2025-02-13
引擎版本: v2.7.1-HOTFIX.027

<dependency>
  <groupId>com.sie.meta</groupId>
  <artifactId>sie-snest-engine</artifactId>
  <version>v2.7.1-HOTFIX.027</version>
</dependency>

镜像地址: harbor.devcenter.gushen.sieiot.com/iidp/sie-gushen-iidp-server:v2.7.2-HOTFIX.038

下载地址: http://idp.chinasie.com/download/repository/sie-gushen-iidp-server-v2.7.2-HOTFIX.038.tar