首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >访问EntityManager ( openjpa )时出错是自由配置文件

访问EntityManager ( openjpa )时出错是自由配置文件
EN

Stack Overflow用户
提问于 2015-10-19 02:10:33
回答 1查看 3.5K关注 0票数 2

我目前正在WebSphere应用服务器自由配置文件8.5.5.7上开发一个openjpa项目。数据库为MySQL。

在运行时,当我试图访问实体管理器时,会得到如下错误:

由: javax.ejb.EJBException:参见嵌套异常;嵌套异常是: java.lang.Exception:参见嵌套的Throwable at javax.ejb.EJBException. 27 由: com.ibm.ejs.container.util.ExceptionUtil.Exception(ExceptionUtil.java:317)引起: java.lang.Exception:参见嵌套的Throwable at java.lang.Exception. 27由: java.lang.AbstractMethodError:引起的 在com.ibm.ws.jpa.container.v21.internal.JPA21Runtime.createEntityManagerInstance(JPA21Runtime.java:104)的内部课堂上

目前,我正在使用以下dependencies:org.apache.openjpa:openjpa-all-2.4.0

在部署期间,我看到以下堆栈跟踪

err 458应用程序信息默认执行器-线程-16 openjpa.jdbc.JDBC -使用字典类"org.apache.openjpa.jdbc.sql.MySQLDictionary“(MySQL 5.6.25-0ubuntu0.15.04.1,mysql驱动程序mysql-连接器-java-5.0.8(修订本:${svn.Revision} ))。err 502应用程序信息默认执行器-线程-16 openjpa.jdbc.JDBC -连接到MySQL版本5.5使用JDBC驱动程序MySQL-AB JDBC驱动程序版本mysql-连接器-java-5.0.8(修订:${svn.Revision} )。

但是这并不会中止我的部署过程,而且我仍然可以使用我的服务。

在server.xml中添加了以下特性

代码语言:javascript
复制
<featureManager>
    <feature>webProfile-7.0</feature>
    <feature>localConnector-1.0</feature>
    <feature>jndi-1.0</feature>
    <feature>jdbc-4.1</feature>
    <feature>jaxrs-2.0</feature>
    <feature>jpa-2.1</feature>
</featureManager>

假设这是一个兼容性问题,我在2.2.1之前使用了openjpa的旧版本。

禁用server.xml的JPA2.1功能

但运气不好。

如有任何关于上述问题的资料/参考/解决办法,我们将不胜感激。谢谢

更新:感谢您的更新。更新server.xml为

代码语言:javascript
复制
<featureManager>
    <feature>localConnector-1.0</feature>
    <feature>jndi-1.0</feature>
    <feature>jdbc-4.1</feature>
    <feature>jpa-2.0</feature>
    <feature>jaxrs-2.0</feature>
    <feature>jaxrsClient-2.0</feature>
    <feature>ejbLite-3.2</feature>
</featureManager>

这仍然不能选择EntityManager。

错误处理过程中发生错误,请放弃!嵌套异常是: javax.ejb.EJBException:参见嵌套异常;嵌套异常是: java.lang.NullPointerException,同时使用params调用公共void () []。 ERROR SRVE0777E:由应用程序类SRVE0777E java.lang.RuntimeException: org.apache.cxf.interceptor.Fault: nested引发的异常是: javax.ejb.EJBException:参见嵌套异常;嵌套异常是: java.lang.NullPointerException,同时使用params调用公共void () []。 在org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage(AbstractFaultChainInitiatorObserver.java:116)的内部课堂上 由: org.apache.cxf.interceptor.Fault:嵌套异常是: javax.ejb.EJBException:参见嵌套异常;嵌套异常是: 在使用params调用公共void ()时,java.lang.NullPointerException []。 在org.apache.cxf.service.invoker.AbstractInvoker.createFault(AbstractInvoker.java:167) .再多一个 由: javax.ejb.EJBTransactionRolledbackException:嵌套异常是: javax.ejb.EJBException:参见嵌套异常;嵌套异常是: java.lang.NullPointerException在内部类

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-19 14:23:24

您已经指定了JPA2.1,但是OpenJPA不支持JPA2.1。WebSphere中包含的JPA2.1提供程序是EclipseLink。您需要从您的OpenJPA中删除对persistence.xml的引用,并使用默认的EclipseLink (尽管有一些已知行为变化),或者按照Gas的建议,如果要继续使用OpenJPA,则需要将webProfile-7.0和jpa-2.1替换为jpa-2.0。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33205570

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档