gpt4 book ai didi

java - ibm 集成总线中具有相同类型和缓存的 ClassCastException

转载 作者:行者123 更新时间:2023-12-02 03:45:50 25 4
gpt4 key购买 nike

我正在 ibm integration bus 中实现缓存解决方案使用java消息流内部的逻辑实现如下:

  1. 我 build 了基地class :Deparment :

    public class Department Implements Serialized {//具有 setter 和 getter 的成员 }

  2. 我构建了一个Wrapper class定义 ArrayList<Department>

    公共(public)类 CachedDepartment 实现可序列化 { 私有(private) ArrayList 部门; //使用 setter 和 getter .... }

  3. 我创建了实现 cache 的类解决方案setvalue并发送至get value

set :

MbGlobalMap globalMap = MbGlobalMap.getGlobalMap(globalMapName);
globalMap.put(key, value);

get :

CachedDepartment cacheddept = null;
MbGlobalMap globalMap = MbGlobalMap.getGlobalMap(globalMapName);
cacheddept = (CachedDepartment) globalMap.get(key);
  • 我创建了 jar文件并将其放在classLoader上目录及其设置 cache 时的运行,问题出在运行获取功能时。

    java.lang.ClassCastException:cache.entities.CachedDepartment 与cache.entities.CachedDepartment 不兼容

  • 我读了这个链接ClassCastException when casting to the same class但我仍然不知道如何解决IBM Integration bus运行于 JDK 1.7有什么想法吗???

    最佳答案

    我认为问题在于包含 CachedDepartment 和 Department 类的项目仍在 IIB Java 项目的项目引用中,这使得 Toolkit 将其部署到集成服务器,但该项目只应部署到共享服务器-类目录。

    因此,从 IIB Java 项目的项目引用和 Java 构建路径中删除包含缓存实体的项目,并将其作为外部 JAR 添加到 Java 构建路径下的库中。

    更多详细信息请参见:

    https://developer.ibm.com/integration/blog/2013/10/17/how-to-store-logical-message-tree-data-in-the-global-cache-using-jaxb-in-ibm-integration-bus-v9/

    关于java - ibm 集成总线中具有相同类型和缓存的 ClassCastException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36312258/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com