繁体   English   中英

Vaadin JPAContainer不起作用

[英]Vaadin JPAContainer doesn't work

我创建了一个像我的论文一样的Web应用程序应用程序。 该应用程序使用了整个Java EE 6堆栈:JPA2,EJB,JSF,RichFaces...。

现在,我正在尝试将应用程序的UI从RichFaces更改为Vaadin。 第一个问题开始于使用JPA容器。 我无法获得entitymanager的实例。

这是我的persistence.xml

<?xml version="1.0" encoding="UTF-8"?>
  <persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation=" http://java.sun.com/xml/ns/persistence
    http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
  <persistence-unit name="primary">

  <jta-data-source>java:jboss/VaadinDS</jta-data-source>

  <class>org.mypackage.entity.Utente</class>
  <class>org.mypackage.entity.Indirizzo</class>
  <class>org.mypackage.entity.Paese</class>

  <properties>
     <!-- Properties for Hibernate -->
     <property name="hibernate.hbm2ddl.auto" value="create" />
     <property name="hibernate.show_sql" value="false" />
  </properties>
 </persistence-unit>
</persistence>

这是我的singelton类,我要在其中获取entitymanager的i实例

public class Utility {

private static EntityManager entityManager;

public Utility() {
    // TODO Auto-generated constructor stub
}

public static EntityManager getInstance(){

    if(entityManager == null)
        entityManager = JPAContainerFactory.createEntityManagerForPersistenceUnit("primary");

    return entityManager;

}
 }

但不起作用,我总是显示以下错误:

[com.vaadin.server.DefaultErrorHandler] (http-localhost-127.0.0.1-8080-1) : java.lang.NullPointerException

我在哪里错?

您的persistence.xml文件需要具有方言属性

另外,如果您将jabcontainer与hibernate一起使用,则还需要vaadin书解释的2件事:每个请求模式使用一个实体管理器,以及在实体提供程序上使用hibernate延迟加载委托。 如果您需要更多帮助,我将继续更新此答案。

暂无
暂无

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

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