我正在使用 Eclipse Juno、Glassfish 3.1.2 和 MySQL 5.1。
我正在构建一个简单的 EJB & JSF 应用程序。我创建了以下 Eclipse 项目:
- appEAR <-- EAR 文件
- appEJB <-- 包含 UserService.java EJB
- appJPA <-- 包含 UserDAO.java EJB 和 User.java 对象
- appWeb <-- 包含 index.jsp
它现在只是一个骨架,但我可以部署应用程序并查看 index.jsp
接下来,我尝试将以下内容添加到 UserDAO ...
@PersistenceContext
EntityManager em;
但是当应用程序尝试重新发布时,它给了我错误:
'Publishing to GlassFish 3.1.2 at localhost...' has encountered a problem. cannot Deploy appEar
没有其他细节。
当我删除两行 @PersistenceContent 代码时,应用程序再次部署。
另外,appJPA 项目中的 persistence.xml 文件如下:
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" 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">
<persistence-unit name="appJPA">
<class>app.model.User</class>
</persistence-unit>
</persistence>
请帮助......我错过了什么?我比较卡。