【发布时间】:2016-07-18 15:48:44
【问题描述】:
我在消息流中使用java 在ibm integration bus 中实现缓存解决方案,逻辑实现如下:
-
我建立了基础
class:Deparment:public class Department implements Serializable { // 具有 setter 和 getter 的成员 }
-
我构建了一个
Wrapper class,它定义了一个ArrayList<Department>公共类 CachedDepartment 实现 Serializable { 私有 ArrayList 部门; // 使用 setter 和 getter .... }
我创建了实现
cache解决方案set新value的类 和getvalue
致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时运行,问题出在运行get 功能时。java.lang.ClassCastException:cache.entities.CachedDepartment 与 cache.entities.CachedDepartment 不兼容
我阅读了这个链接ClassCastException when casting to the same class,但我仍然不知道如何在IBM Integration bus 中解决它,它运行在JDK 1.7 上,有什么想法吗???
【问题讨论】:
标签: java serialization esb messagebroker ibm-integration-bus