我在glassfish上有一个Web应用程序,其中包含一些使用JPA构建的数据库调用。但是,每当我重新部署Web应用程序时,我都会收到一个ClassCastException,当我尝试检索项目时,无法将com.item.DBItem强制转换为com.item.DBItem。
public DBItem findActiveItemId(String itemid){
EntityManager em = getEntityManager();
try{
Query q = em.createQuery("SELECT c from DBItems c WHERE c.itemId = :cid AND c.active = 1");
q.setParameter("cid", itemid);
return (DBItem)q.getSingleResult();
}catch(javax.persistence.NoResultException nre){
return null;
}finally{
em.close();
}
}
重新启动glassfish可以解决这个问题,但为什么会这样呢?