[英]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.