“找不到名为'product'的持久性单元”

问题描述 投票:8回答:4

我最近完成了本教程:“http://static.springsource.org/docs/Spring-MVC-step-by-step/”,但现在我希望它能与Hibernate和注释一起使用。我知道我很接近,但我遇到了障碍,我无法理解。我在Spring论坛上发布了我的代码here。我非常感谢任何帮助。谢谢

我正在尝试将注释和休眠结合到其中,但我遇到了一个问题,我无法弄明白。我一直收到“找不到名称'产品'的持久性单位”的错误。任何帮助将不胜感激。

java hibernate spring tomcat jpa
4个回答
25
投票

你需要一个META-INF/persistence.xml,与<persistence-unit name="product">See here

(我通常把它放在WEB-INF/classes/META-INF。如评论中所述,maven你可以把它放在src/main/resources/META-INF


2
投票

这是文件persistence.xml的一个示例

<persistence 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"
         version="2.0">
<persistence-unit name="poduct"  transaction-type="RESOURCE_LOCAL">
</persistence-unit>
</persistence>

如果您使用Maven项目,请在“src / main / resources / META-INF”中创建此文件。


2
投票

我遇到了同样的问题,不得不手动编辑Web部署程序集配置,以指示/META-INF/persistence.xml部署在WEB-INF/classes/下(附加的img中的红色框是手动编辑的)


1
投票

我也有同样的问题。但是当你使用ide(例如eclipse)并在ide中配置你的服务器时。当您对该部分进行asosiate并重新启动服务器时,由于检测到使用了持久性单元,因此总是会出现相同的错误,您需要删除该部分服务器并部署到oldway。进入控制台并安装你的项目和工作!

另一种是当您在wls中检查诊断时,您需要说明哪个用户是jdbc的所有者,只需选择并检查(例如,AdminServer)并再次保存并检查!

:d

© www.soinside.com 2019 - 2024. All rights reserved.