【发布时间】:2008-12-16 16:36:13
【问题描述】:
我收到异常“此部署中没有默认持久性单元”。我可以以某种方式将单位标记为默认单位吗?(我只有一个持久性单位,所以我宁愿不叫它的名字)
【问题讨论】:
标签: jpa default persistence.xml persistence-unit
我收到异常“此部署中没有默认持久性单元”。我可以以某种方式将单位标记为默认单位吗?(我只有一个持久性单位,所以我宁愿不叫它的名字)
【问题讨论】:
标签: jpa default persistence.xml persistence-unit
不行,你必须叫 PU 的名字。
【讨论】:
您可能是通过代码而不是让容器来管理它。在这种情况下,您必须按名称指定。
我的单元测试代码有这个代码块来做这个。
@Before
public void createEntityManagerFactory() throws IOException {
final Properties p = new Properties();
p.load(getClass().getResourceAsStream("/inmemory.properties"));
emf = Persistence.createEntityManagerFactory("default", p);
}
但是,我的应用程序代码如下所示。
/**
* Injected persistence context.
*/
@PersistenceContext
private EntityManager em;
【讨论】: