问题描述
我们在UAT WAS环境中遇到了一个有趣的问题。部署到DEV(1节点)环境的相同代码可以完美运行。但是,它在具有相同配置的UAT(2个节点)上引发以下异常。唯一的区别是节点数。 如果有人遇到此问题,请告知。
FFDC异常:java.io.NotSerializableException SourceId:com.ibm.ws.session.store.db.DatabaseHashMap.commonSetup ProbeId:2052 Reporter:java.util.Hashtable@47a5b63a java.io.NotSerializableException:test.com.controller.myController
Env(DEV-1节点):WebSphere Platform 9.0.5.3 [BASE 9.0.5.3 f5032008.04] [JAVA8 8.0.6.7 ...] Env(UAT-2节点):WebSphere Platform 9.0.5.3 [BASE 9.0.5.3 f5032008.04] [JAVA8 8.0.6.7 ...]
提前谢谢!
解决方法
可能您已在UAT2环境中配置了会话持久性,并且您的应用程序正在HTTP会话中存储不可序列化的内容。在UAT1中,您只有一台服务器,因此在这种情况下无需会话持久性,因此也不例外。
,我们发现了问题,似乎控制器的数据模型类和父类未实现可序列化。子控制器可能会调用某些超类方法,从而导致此问题