EclipseLink到Hibernate的迁移

时间:2011-10-12 10:16:29

标签: hibernate jboss

我正在尝试将为Glassfish3 + EclipseLink构建的企业应用程序迁移到JBoss7 + Hibernate。

当我尝试启用我的应用程序时,持久性单元无法启动,抛出此异常

ERROR [org.jboss.msc.service.fail] (MSC service thread 1-5) MSC00001: Failed to start service jboss.persistenceunit."app-logic.ear/domain-jpa-ejb.jar#dataspace-PU": org.jboss.msc.service.StartException in service jboss.persistenceunit."app-logic.ear/domain-jpa-ejb.jar#dataspace-PU": Failed to start service
        at org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1780)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) [:1.6.0_26]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) [:1.6.0_26]
        at java.lang.Thread.run(Thread.java:662) [:1.6.0_26]
Caused by: java.lang.NullPointerException
        at org.hibernate.annotations.CacheConcurrencyStrategy.fromAccessType(CacheConcurrencyStrategy.java:52)
        at org.hibernate.cfg.AnnotationBinder.determineCacheConcurrencyStrategy(AnnotationBinder.java:1038)
        at org.hibernate.cfg.AnnotationBinder.buildCacheMock(AnnotationBinder.java:1005)
        at org.hibernate.cfg.AnnotationBinder.determineCacheSettings(AnnotationBinder.java:962)

你有什么类似的事吗?对我来说似乎很奇怪,抛出了NullPointerException。我试图在CacheConcurrencyStrategy的第52行检查什么,但它似乎无法抛出这样的异常。

请注意,我没有使用任何持久性提供程序特定的注释。

由于

2 个答案:

答案 0 :(得分:0)

似乎某些库更新修复了这个问题。无论如何,如果有人有类似的问题,请告诉我。我对这个问题到底感兴趣。

答案 1 :(得分:0)

hibernate 4.1中的先前错误已得到修复。尽管如此,我在4.2上遇到了类似的问题,JBoss7.1 /也许和你的一样。

在persistence.xml中,我已经设置了

<shared-cache-mode>ENABLE_SELECTIVE</shared-cache-mode>

AND NEED指定

<property name="hibernate.cache.use_second_level_cache"
                value="true" />

否则,我得到

Caused by: java.lang.NullPointerException
        at org.hibernate.annotations.CacheConcurrencyStrategy.fromAccessType(CacheConcurrencyStrategy.java:52)

我希望这可以帮助其他人吗?!