Websphere 8.5.5.2中的ClassCasteException

时间:2015-04-27 01:01:28

标签: class java-ee exception casting

我在下面的语句中得到classCasteException:

function axxxxx(X resource)
{
    ((SimpleConnectionImpl)resource).somefunction();// getting classcaste exception here
}

我检查了资源的运行时值,发现它是org.java.SimpleConnectionImpl@ao4d0323。仍然无法进行类型转换。其中SimpleConnectionImpl也在同一个包中。

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

1 个答案:

答案 0 :(得分:0)

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

更准确地说,您希望在单个类加载器下只有一个给定类的副本。删除所有工件的类副本是J2EE环境中部署的重要部分,可以减少这些错误,有时可以将其投入生产。