WebSphere8.5.5.2中的ClassCasteException

WebSphere8.5.5.2中的ClassCasteException,class,jakarta-ee,exception,casting,Class,Jakarta Ee,Exception,Casting,我在下面的声明中得到了一个例外: function axxxxx(X resource) { ((SimpleConnectionImpl)resource).somefunction();// getting classcaste exception here } 我检查了资源的运行时值,发现它是org.java。SimpleConnectionImpl@ao4d0323。它仍然无法进行类型转换。其中asSimpleConnectionImpl也在同一个包中 你有什么建议吗?Inst

我在下面的声明中得到了一个例外:

function axxxxx(X resource)
{
    ((SimpleConnectionImpl)resource).somefunction();// getting classcaste exception here
}
我检查了资源的运行时值,发现它是
org.java。SimpleConnectionImpl@ao4d0323
。它仍然无法进行类型转换。其中as
SimpleConnectionImpl
也在同一个包中


你有什么建议吗?InstanceOff运算符在此也返回false。当我执行
getclass()
时,它返回相同的类名。

在类路径上可能有两个版本的同一个JAR。确保完整应用程序中所有JAR工件(EAR、WAR等)包含的所有依赖项中只有一个包含SimpleConnectionImpl的JAR版本


更准确地说,您希望在单个类加载器下只有一个给定类的副本。删除所有工件的重复类是J2EE环境中部署的一个重要部分,它可以减少此类错误,这些错误有时会导致产品化。

谢谢。我认为这应该是原因所在。我今天会检查这个。谢谢你的建议。当然!如果在构建中使用Maven,通常可以通过在依赖项导入中使用
元素来解决此问题。因此,如果A依赖于B依赖于C,您可以在A的POM中的B上的
中排除C,那么C将只是B中包装的一部分,这可能更接近您想要的。