我正在使用一个使用注解进行映射的hibernate 3.6项目,现在我将它迁移到hibernate 5.1,并且我将这个运行时异常 非实体对象实例传递给了evict 下面是对evict的调用
HibernateUtils.getSession().evict(origProject.getProbidinfo());
HibernateUtils.getSession().evict(origProject);
下面是引发异常的 DefaultEvictEventListener.class 的代码
EntityPersister persister = null;
final String entityName = persistenceContext.getSession().guessEntityName( object );
if ( entityName != null ) {
try {
persister = persistenceContext.getSession().getFactory().getEntityPersister( entityName );
}
catch (Exception ignore) {
}
}
if ( persister == null ) {
throw new IllegalArgumentException( "Non-entity object instance passed to evict : " + object );
}
在我的休眠 5.1 中,持久化器为空。如果不清楚,我可以提供更多详细信息