我将 JPA 项目用作动态 web 项目中的 jar。
在我的项目中的某个时刻,我收到java.lang.ClassNotFoundException: javax.persistence.Persistence错误。
operation = RepositoryFactory.getRepositoryFactory()
.getUserRepository().add(feedbackverantwoordelijke);
public boolean add(User user) {
EntityManagerFactory emf = HibernateRepositoryFactory
.getEntityManagerFactory();
EntityManager em = emf.createEntityManager();
EntityTransaction tx = em.getTransaction();
tx.begin();
User tempUser = null;
try {
// checking if the entity is already in the repository
if (user.getId() != null) {
tempUser = em.find(User.class, user.getId());
//delete
System.out.println(user.getId());
//
}
// if no persist the entity
if (tempUser == null) {
em.persist(user);
} else {
// if so, get the differences and persist them
tempUser.setPassword(user.getPassword());
tempUser.setUserName(user.getUserName());
tempUser = em.merge(user);
}
} catch (Exception e) {
logging.error("Deze melding trad op bij het toevoegen van een user"
+ " :" + e);
}
tx.commit();
em.close();
emf.close();
return true;
}
注意:Feedbackverantwoodelijke 扩展了用户
这在我的 JPA 项目中非常有效。但是当我从动态 web 项目中的 JPA jar 调用它时,我得到了错误。
在我的动态网络项目中运行它时,我似乎缺少一个 jar('s)。通常所有 jar 都在我的 JPA 项目中,我可以在我的 JPA 项目中进行所有 CRUD 操作??
我必须在我的动态 Web 项目中加载一些 jar 吗?如果是这样,我必须将它们放在我的 WEB-INF/lib 文件夹中吗?
我还在我的 JPA 项目和网络邮件 jar 中使用了 joda-time jar。我必须将这些 jar 也放在我的动态 webproject 中吗?
谢谢回复