繁体   English   中英

JPA和derby空指针异常

[英]JPA and derby null pointer exception

我正在尝试使用jpa 2.0和derby进行简单的持久化,但是我一直收到NullPointerException。

异常和实体类-http://pastebin.com/QqXhRdcN

我试图坚持的代码

EntityManager em = emf.createEntityManager();  
  Course c = new Course("cse", 214, "fall", 2010);  
  em.getTransaction().begin();  
  em.persist(c);  
  em.getTransaction().commit();  
  em.close();  

空指针异常发生在上述代码的第一行171行。

提前致谢!

您的EntityManagerFactory在初始化时未正确创建(因此为null ),因此,当您尝试使用它获取EntityManager时会发生NullPointerException

尽管EclipseLink在尝试为异常生成国际化消息时肯定不会因NPE失败(您应该将此日志记录为错误),但跟踪仍然包含有用的信息,如以下粗体所示:

[EL Severe]: 2010-10-23 05:27:14.092--ServerSession(1673653)--java.lang.NullPointerException
    at java.util.ResourceBundle.getBundle(Unknown Source)
    at org.eclipse.persistence.exceptions.i18n.ExceptionMessageGenerator.buildMessage(ExceptionMessageGenerator.java:47)
    at org.eclipse.persistence.exceptions.DatabaseException.unableToAcquireConnectionFromDriverException(DatabaseException.java:376)
    at org.eclipse.persistence.sessions.DefaultConnector.connect(DefaultConnector.java:91)
    at org.eclipse.persistence.sessions.DatasourceLogin.connectToDatasource(DatasourceLogin.java:162)
    at org.eclipse.persistence.internal.sessions.DatabaseSessionImpl.loginAndDetectDatasource(DatabaseSessionImpl.java:579)
    at org.eclipse.persistence.internal.jpa.EntityManagerFactoryProvider.login(EntityManagerFactoryProvider.java:228)
    at org.eclipse.persistence.internal.jpa.EntityManagerSetupImpl.deploy(EntityManagerSetupImpl.java:380)
    at org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.getServerSession(EntityManagerFactoryImpl.java:157)
    at org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManagerImpl(EntityManagerFactoryImpl.java:214)
    at org.eclipse.persistence.internal.jpa.EntityManagerFactoryImpl.createEntityManager(EntityManagerFactoryImpl.java:202)
    ...

您的连接池配置很可能出了点问题,EclipseLink无法从中获取有效的连接。

没有更多有关设置的详细信息,例如persistence.xml ,Tomcat数据源配置以及使用Derby的方式(在服务器模式下),我无法给出更准确的答案。 但这就是外观。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM