gpt4 book ai didi

java - 使用 Websphere 共享库时 Hibernate java.lang.ClassCastException : _$$_javassist_856 cannot be cast to javassist. util.proxy.Proxy

转载 作者:行者123 更新时间:2023-11-30 07:14:19 25 4
gpt4 key购买 nike

Websphere 8.0.0.11

Hibernate 4.2.21.Final

我发现了很多关于同一问题的问题,但没有一个对我有用。

如果我在 Websphere 中部署该应用程序,它就可以正常工作。

但是我们定义了一个共享库,其中包含所有第三方库(spring、hibernate、javassist 等),以便我们的 WAR 更薄。

通过这种方式,我们在部署过程中将瘦 WAR 与该 Websphere 共享库关联起来。

重点是,当我们以这种方式部署应用程序时,会抛出 ClassCastException Hibernate 异常 _$$_javassist_856 无法转换为 javassist.util.proxy.Proxy

我已经在 websphere 控制台中检查了加载的 jar,并且在类路径中只能看到一个 javassist jar (3.18.1-GA)。

为什么会发生这种情况?

更新

我还尝试使用 PARENT_FIRST 和 PARENT_LAST 类加载。

更新2

我刚刚发现 Websphere 正在加载它自己的 javassist jar:

URL location = ProxyFactory.class.getProtectionDomain().getCodeSource().getLocation(); 
logger.info("{}", location);

它打印:file:/opt/IBM/WebSphere/AppServer/plugins/javassist.jar

最佳答案

在尝试了我在 S.O. 上找到的几乎所有内容之后。但没有成功,我决定将 Hibernate 降级到版本 4.1.12.Final。这是与 Websphere 8.x 兼容的最大 4.x 版本。

关于java - 使用 Websphere 共享库时 Hibernate java.lang.ClassCastException : _$$_javassist_856 cannot be cast to javassist. util.proxy.Proxy,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38695700/

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