JDK版本:jdk1.6.0
Tomcat 版本:apache-tomcat-6.0.18
<error-page>
<error-code>401</error-code>
<location>/401.htm</location>
</error-page>
<error-page>
<error-code>403</error-code>
<location>/403.htm</location>
</error-page>
<error-page>
<error-code>404</error-code>
<location>/404.htm</location>
</error-page>
<error-page>
<error-code>500</error-code>
<location>/500.htm</location>
</error-page>
<error-page>
<exception-type>java.lang.Exception</exception-type>
<location>/errorProcess.jsp</location>
</error-page>
模拟出错场景:客户发送请求在先
客户端得到的新闻链接存在 恰好后台管理员客户单击连接前删除了该新闻
向服务器端请求的路径如下:detail.jsp?i=402881e41e743103011e7447faa90005
新闻详细页detail.jsp中处理了该请求 会调用service类处理 在不存在该记录时 hibernate会抛出NotObject异常
疑惑:异常本应该本tomcat截获并处理 跳转到/errorProcess.jsp 进行友好提示 但是事实是:仍会跳转到detail.jsp页面 可想而知这个页面的遭遇是面目全非
期待大家的回复
问题补充:
throne212
hibernate层如下:
public Object findByModelId(Class model,String modelId) {
return this.getHibernateTemplate().load(model, modelId);
}
spring层如下:
public Object findByModelId(Class model,String modelId) throws Exception {
return getBaseDao().findByModelId(model,modelId);
}
我们的整个架构都是将异常集中在spring层进行catch
现在的问题是 整个项目已经接近尾声 需要一个通用的方法
如果为每个dao都增加异常处理 这个工作量相当大 请提供一个简单实用的方法 谢谢