persistence.xml中没有在GlassFish部署描述符中(的IntelliJ)
-
27-09-2019 - |
题
我有一个EJB,在我的IntelliJ Web模块,创建5个实体我希望加载到使用注释的数据库。
我去项目设置,下模块,并选择我要添加JPA方面,我知道有一个EJB,Web和JPA方面。我使用的EclipseLink,让我检查下JPA设置,然后我将我的persistence.xml文件,配置文件。
问题是,在部署的时候,它根本不会部署persistence.xml文件,这意味着在部署描述符中选择我的应用程序时,我找不到它在我的GlassFish 3.0服务器。我只找到EJB模块下我的太阳 - 网络ejb.xml。 persistence.xml中是不是WEB模块要么下,但我相信它应该是EJB模块下的反正。
时的打算,我的persistence.xml不应在服务器上加载,这样我可以找到下GF管理控制台XML文件(应用程序 - >我的EJB模块 - >部署描述符)?
如果这不是预期,有没有特别需要我的IntelliJ中做才能让persistence.xml中被部署在服务器上什么吗?也许它尤其我需要的东西和我的JPA方面呢?
感谢您有这方面的反馈意见,我可以ofcourse提供有关我的设置如果neccessary更详细的信息。
解决方案
我只找到EJB模块下我的太阳 - 网络ejb.xml。
这已经怪异。如果我没看错,这就是Web模块的专有部署描述符。
的persistence.xml不在WEB模块下任一,但我相信它应该是EJB模块下无论如何
这一切都取决于你如何打包和部署您的实体,它可以通过多种方式进行(见的您可能需要知道的关于持久性单元包装选项)。
如果您的实体被打包在EJB-JAR中,persistence.xml
必须放置在META-INF
目录。
但是你可以将它们打包的Web模块内,这将是你的情况简单。见上面的链接。
时的打算,我的persistence.xml不应在服务器上加载,这样我可以找到下GF管理控制台XML文件(应用程序 - >我的EJB模块 - >部署描述符)?
我建议检查物理JAR包含META-INF/persistence.xml
。
如果这不是预期,有没有特别需要我的IntelliJ中做才能让persistence.xml中被部署在服务器上什么吗?也许它尤其我需要的东西和我的JPA方面呢?
不能说。也许下面的链接可以帮助:启用JPA支持 。 p>