我有以下方法:关闭的EntityManager org.datanucleus.exceptions.NucleusUserException
public List<Profile> listProfiles(){
EntityManager em = EMF.get().createEntityManager();
List<Profile> list = null;
try{
Query q = em.createQuery("SELECT p FROM Profile p");
list = (List<Profile>)q.getResultList();
} catch(NoResultException ex){
System.out.println("ERROR CATCHED: " + ex.getMessage());
} finally{
em.close();
}
return list;
}
访问返回列表将抛出一个错误: org.datanucleus.exceptions.NucleusUserException: Object Manager has been closed
一招,我发现是添加则为list.size ()在关闭实体经理之前:
finally{
list.size();
em.close();
}
我应该关闭实体经理吗?还是有我错过的概念?其他
是使用''前'em.close则为list.size()()'好吗? –