2011-01-28 71 views
0

我在Tomcat Apache容器中使用GWT和JPA和Hibernate。當我嘗試從獨立的Java應用程序測試我的dao和數據庫連接時,它工作正常。 Howerver,當我在服務器環境中使用它時,有時它的作品有時不會。下面是LOGEVENTS的刪節序列:使用GWT,JPA和Tomcat實例化EntityManagerFactory

org.hibernate.type.BasicTypeRegistry - 添加類型註冊布爾 - > [email protected] INFO org.hibernate.cfg.Environment中 - Hibernate 3.6.0.Final 42937 [btpool0-0] INFO org.hibernate.cfg.Environment -hibernate.properties not found 42940 [btpool0-0] INFO org.hibernate.cfg.Environment - 白代碼提供程序名稱:javassist [btpool0-0] INFO org.hibernate.cfg.Environment - usingJDK 1.4 java.sql.Timestamp處理 43038 [btpool0-0] DEBUG org.hibernate.id.factory.Defa ultIdentifierGeneratorFactor - 註冊IdentifierGenerator策略[UUID2] - > [類 org.hibernate.id.UUIDGenerator] 43069 [btpool0-0] INFO org.hibernate.ejb.Version - 休眠 的EntityManager 3.6.0.Final

43090 [btpool0-0] DEBUG org.hibernate.type.BasicTypeRegistry - 添加類型註冊文本 - > [email protected] [btpool0-0] DEBUG org.hibernate.ejb.Ejb3Configuration - 查找持久性單元: Transactions-optional 43269 [b tpool0-0] DEBUG org.hibernate.ejb.Ejb3Configuration檢測類:true;檢測HBM:真

43285 [btpool0-0] DEBUG org.hibernate.ejb.packaging.AbstractJarVisitor - 搜索在罐子/ PAR映射實體:文件:// XXXXX 43378

[btpool0-0] DEBUG org.hibernate.ejb.packaging.AbstractJarVisitor - 濾波:com.demo.server.hello 43492 [btpool0-0] DEBUG org.hibernate.ejb.packaging.AbstractJarVisitor - 用於com.demo匹配Java元素濾波器。 server.hello 43505

[btpool0-0]調試 org.hibernat e.ejb.Ejb3Configuration - 檢測類:true;檢測HBM:真

43505 [btpool0-0] DEBUG org.hibernate.ejb.Ejb3Configuration - 創建廠: 交易-可選

在此之後我沒有得到任何日誌消息,我的客戶層可以不和數據庫層交談。當我的客戶層是談得來的數據庫層,按照上述日誌條目的條目爲:

1063 [主] DEBUG org.hibernate.cfg.Configuration - 處理的hbm.xml文件

如果您可以指出可能出錯的地方,我會非常感激。我無法弄清楚它的eclipse編譯錯誤,或GWT插件中的一些問題或(很可能)我的編程錯誤。

回答

0

您確定您正在使用JPA嗎?我對GWT並不熟悉,但我認爲它會將您的應用程序部署爲WAR文件。如果是這樣,請檢查WAR文件是否包含META-INF/persistence.xml文件,並從那裏驗證連接詳細信息。

1063 [主] DEBUG org.hibernate.cfg.Configuration - 處理的hbm.xml文件

看來,Hibernate是爲了創造每一個客戶是談得來數據庫時的會話。有時它被稱爲(和工作)的事實表明它不是Hibernate的問題。否則,你會看到一致的行爲。所以,我會仔細檢查在到達Hibernate之前請求是否失敗。例如,我會嘗試在調用Hibernate之前和之後添加一些調試日誌條目。

+0

我試着更改persistence.xml,所做的更改反映出來。除此之外,沒有hbm.xml文件。我認爲hibernate只是爲了確保你沒有使用JPA和本地hibernate的組合。 – vamsee 2011-01-28 15:43:27