gpt4 book ai didi

java - Websphere 与 Oracle DB 部署错误 NosuchMethod

转载 作者:行者123 更新时间:2023-12-02 10:39:27 24 4
gpt4 key购买 nike

我正在尝试在 websphere 8.5.5.13 上部署 war 文件。它连接到 oracle(11g) db,甚至我已经在 websphere 上创建了数据源连接。 oracle db data source 该应用程序正在安装,但是当我尝试启动该应用程序时出现以下错误:

[29/10/18 15:00:49:733 IST] 000001e1 SystemErr R 导致:com.ibm.ws.webcontainer.exception.WebAppNotLoadedException:无法加载 webapp:创建名称为 ' 的 bean 时出错类路径资源[org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaAutoConfiguration.class]中定义的entityManagerFactory':调用init方法失败;嵌套异常是 java.lang.NoSuchMethodError: javax/persistence/Table.indexes()[Ljavax/persistence/Index; (由 org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader@180c62e2 从文件:/C:/Program Files (x86)/IBM/WebSphere/AppServer/plugins/javax.j2ee.persistence.jar 加载)从类 org. hibernate.cfg.annotations.EntityBinder(从文件加载:/C:/Program%20Files%20(x86)/IBM/WebSphere/AppServer/profiles/DefaultAppServer/installedApps/AntivirusServerNode01Cell/cream_war.ear/cream.war/WEB-INF/lib/hibernate-core-5.0.12.Final.jar 由

[29/10/18 15:00:49:733 IST] 000001e1 SystemErr R 引起:org.springframework.beans.factory.BeanCreationException:创建类路径资源中定义的名为“entityManagerFactory”的 bean 时出错[org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaAutoConfiguration.class]:调用init方法失败;嵌套异常是 java.lang.NoSuchMethodError: javax/persistence/Table.indexes()[Ljavax/persistence/Index; (由 org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader@180c62e2 从文件:/C:/Program Files (x86)/IBM/WebSphere/AppServer/plugins/javax.j2ee.persistence.jar 加载)从类 org. hibernate.cfg.annotations.EntityBinder(从文件加载:/C:/Program%20Files%20(x86)/IBM/WebSphere/AppServer/profiles/DefaultAppServer/installedApps/AntivirusServerNode01Cell/cream_war.ear/cream.war/WEB-INF/lib/hibernate-core-5.0.12.Final.jar 由

我还尝试更改 hibernate 和 jpa 的版本,但这也不起作用。但是,当我在不使用 oracle db(使用 h2 或 derby)的情况下部署应用程序时,它可以正常运行。

请帮我解决这个错误。

找不到路径 i have given the context path properly but still giving error

最佳答案

NoSuchMethodError表示 Hibernate 正在尝试调用 javax.persistence.Table 上的方法那不存在。 Table类已从 file:/C:/Program Files (x86)/IBM/WebSphere/AppServer/plugins/javax.j2ee.persistence.jar 加载所以是 WAS 本身提供了不兼容的类。

默认情况下,WAS 8.5.5 使用 JPA 2.0,但 is possible to use JPA 2.1按照描述的步骤 here 。您已经完成了“在应用程序中嵌入第三方持久性提供程序”中描述的大部分步骤。剩下的一步是配置应用程序的类加载器顺序,以便它会优先选择与应用程序捆绑在一起的类,而不是应用程序服务器提供的类。

关于java - Websphere 与 Oracle DB 部署错误 NosuchMethod,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53034667/

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