2012-10-12 70 views
1

有什麼辦法可以將persistence.xml文件的內容放到調用EntityManagerFactory的源代碼中嗎?我試圖構建一個包含persistence.xml中,但是當我從其他項目中調用它,我總是得到這個錯誤的一個項目:EntityManagerFactory的Persistence.xml文件在一個jar文件中

[PersistenceException: No Persistence provider for EntityManager named cassandra_pu] 

我還提取jar文件來檢查XML文件是否包含與否, ;包含在WEB-INF文件夾中。對我來說,這真的很奇怪,因爲persistence.xml已經在jar文件中,爲什麼它會一直詢問xml文件?

回答

0

persistence.xml文件必須位於類路徑的根目錄中。 WEB-INF不在類路徑的根目錄中。如果你想把它放在一個.jar文件中,把它放在WEB-INF/lib中,如果你想把它放在一個.jar文件之外,把它放在WEB-INF/classes中。如果您使用JPA2,則不再需要該文件。

+0

我把它保留在src/META-INF中,當我按照你的說法嘗試時,我甚至無法在構建它之前運行該項目。它說線程「main」中的異常com.impetus.kundera.loader.PersistenceLoaderException:com.impetus.kundera.utils.InvalidConfigurationException:在類路徑中找不到任何META-INF/persistence.xml文件 – Xitrum

相關問題