attempt to create delete event with null entity 分析及解决
srtuts,spring连续删除的问题
很明显 你删除了 一条不存在的记录 这种错误 可能是你ID传值有误 还有可能就是你重复提交 删了一次 第二次 接着删 肯定报错了
1. 描述
删除一个对象后,按F5刷新 ,出现错误。MyEclispe控制台下异常显示:
java.lang.IllegalArgumentException: attempt to create delete event with null entity
并且浏览器地址还是指向那个被删除的对象。如删除id=30的实体后,浏览器地址为 http://122.204.85.183:8080/PKJava/delete.do?id=30
2. 分析
请参照:http://fengzi015.spaces.live.com/blog/cns!fc609e3f70f965cf!247.entry
返回查询结果部分的问题,也就是说,是:删除记录之后返回的记录集没有刷新。删除的实体在结果集中没有清除。在刷新页面时,将前一form提交的内容都作为hidden又全传了回来,且是不断累加的。
3. 解决方法
在转到新界面时,刷新界面。
srtuts,spring连续删除的问题
很明显 你删除了 一条不存在的记录 这种错误 可能是你ID传值有误 还有可能就是你重复提交 删了一次 第二次 接着删 肯定报错了
1. 描述
删除一个对象后,按F5刷新 ,出现错误。MyEclispe控制台下异常显示:
java.lang.IllegalArgumentException: attempt to create delete event with null entity
并且浏览器地址还是指向那个被删除的对象。如删除id=30的实体后,浏览器地址为 http://122.204.85.183:8080/PKJava/delete.do?id=30
2. 分析
请参照:http://fengzi015.spaces.live.com/blog/cns!fc609e3f70f965cf!247.entry
返回查询结果部分的问题,也就是说,是:删除记录之后返回的记录集没有刷新。删除的实体在结果集中没有清除。在刷新页面时,将前一form提交的内容都作为hidden又全传了回来,且是不断累加的。
3. 解决方法
在转到新界面时,刷新界面。
只需要修改sttruts.xml中delete action的配置。在delete action的<forward />中加入一个参数redirect="true"。 redirect默认值是false。
我的解决方案:在删除的时候需要做个判断,当删除对象不为空时,才执行删除操作!
public void deleDepartment(Serializable serializable) {
// TODO Auto-generated method stub
Department department = this.findDepartmentById(serializable);
if(department != null){//防止二次删除问题
this.getHibernateTemplate().delete(department);
}
}