我有幾個jar文件(tasks.jar,calendar.jar,user.jar,authentication.jar),這些jar文件包含persistence.xml文件在他們每一個裏面。所有這些persistence.xml文件具有相同的持久性單元名稱,例如「TASK_MANAGER」。
我的問題是,我可以將這些jar文件添加到JSF web項目的lib文件夾中,並通過託管會話bean(它再次使用JPA實體管理器)和持久性單元名稱'TASK_MANAGER'使用它們。例如:如何將幾個jar文件和peristence.xml文件合併到一個jsf項目中
//All the imports go here (import com.app.model.task) etc....
@ManagedBean
@RequestScoped
public class TaskController{
//Access the entity manager and work with their methods here
}
我知道,通過http://docs.oracle.com/javaee/6/tutorial/doc/bnbqw.html
如果你在一個JAR文件,該文件將包含在WAR或EAR文件 打包持久化單元,JAR文件應位於 無論是
- 一個WAR
- EAR文件的庫目錄的WEB-INF/lib目錄
但我的問題是我可以做到這一點與多個persistence.xml文件。
因爲在Eclipse中,當我試圖實現這一點時,只加載了最終jar文件的持久性文件,我知道這是因爲當我嘗試運行該應用程序時,其他實體無法識別。
如何將多個persistence.xml文件包含到一個項目中。
我檢查了這些已Configure persistence units to be available in several jars of an ear和https://stackoverflow.com/questions/23398636/combining-entities-across-jars-in-a-single-persistence-xml-file。