java - 部署期间的 Hibernate 异常

标签 java hibernate tomcat vaadin

我在我的 vaadin 项目中使用 hibernate 4.3.6。 每次我对源代码进行更改时,都希望再次构建应用程序并将新源代码自动部署到 Tomcat。换句话说,Tomcat 应该重新加载它的上下文。

问题是在这个操作期间hibernate抛出一个错误:

GRAVE: Exception loading sessions from persistent storage
org.hibernate.HibernateException: registry does not contain entity manager factory: myproject
at org.hibernate.jpa.internal.EntityManagerFactoryRegistry.getNamedEntityManagerFactory
(...)

在那条日志之后,我得到:

24/09/2014 13:14:43 org.apache.catalina.core.StandardContext reload
INFO: Reloading Context with name [/myproject] is completed

但是,我无法继续使用该网站,因为我收到一条消息说 session 已丢失。

我的问题是:这个 hibernate 异常是什么,我该如何解决?

编辑: 仅当我在 session 中存储 JPA 实体时才会发生此错误,例如:已登录的用户

最佳答案

我不知道有什么方法可以在 Tomcat 中获得您想要的东西,除了 JRebel。 Vaadin 的工作人员自己使用和推荐。有关 Vaadin+JRebel 的有趣信息的链接:http://zeroturnaround.com/blog/jrebel-case-study-vaadin-eliminates-redeploys-and-saves-10-of-development-time/

如果将来您决定使用 Jetty 而不是 Tomcat,您可以按照此处的建议进行设置并动态重新加载应用程序:https://blog.oio.de/2012/08/23/dynamic-reloading-of-vaadin-applications-with-maven-and-eclipse/

关于java - 部署期间的 Hibernate 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26021985/

相关文章:

java - 断开连接前终止进程

java - 使用 LocalDate 类计算指定天数的日期差异

java - 如何设计一个具有基类中没有的功能的子类?

java - Hibernate二级缓存和Hudson

Java: 'tenured'内存与permgen相同吗?

java - Android MediaPlayer 重叠运行

java - hibernate:使用 Criteria API 进行左外连接,可以吗?

java - spring tx :advice and spring aop pointcut 之间的区别

java - 定义自定义事件/操作/请求以重置 Java Web App 中 session 超时的计时器?

java - Tomcat7安全样本如何调用login.jsp?