锁定老帖子 主题:java web项目整体异常处理机制
精华帖 (0) :: 良好帖 (9) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-06-10
基本和我使用的一致,另外DAO层是否使用关键还是要看分层情况
|
|
返回顶楼 | |
发表时间:2011-06-10
我现在也是这么处理,包含如果是ajax的处理。我用的是spring mvc
//~ Methods ======================================================================================================== @ExceptionHandler() public @ResponseBody String handle(Exception exception, HttpServletRequest request, HttpServletResponse response) { logger.error(request.getRequestURI() + " 请求失败", exception); ResponseData data = new ResponseData(false, exception.getClass() + ": " + exception.getMessage()); data.setRequestURI(request.getRequestURI()); StackTraceElement[] trace = exception.getStackTrace(); StringBuilder traceContent = new StringBuilder(); for (int i=0; i < trace.length; i++) traceContent.append("\tat " + trace[i]); data.setExecptionTrace(traceContent.toString()); String json = ""; try { json = mapper.writeValueAsString(data); } catch (Exception e1) { e1.printStackTrace(); } if(!(request.getRequestURI().endsWith(".json") || request.getRequestURI().endsWith("Json"))) throw new RuntimeException(exception); response.setStatus(500);//服务端处理失败 response.setContentType("application/json;charset=UTF-8"); return json; } 如果是ajax请求,提示处理: //Ajax请求完成执行。判断Session超时,如果超时或者无效,返回的内容为login.jsp页面的内容,页面包含:AJAX-AccessDeniedException //如果页面包含AJAX-AccessDeniedException,说明session超时或者无效。 Ext.Ajax.on('requestcomplete', function(conn, response, options){ if(options.params['REQUEST_MODE'] == "AJAX" && response.responseText.indexOf("AJAX-AccessDeniedException") != -1) { Ext.Msg.alert('提示', '会话超时,请重新登录!', function(){ window.location = './login'; }); } }); Ext.Ajax.on('requestexception', function(conn, response, options){ //ajax请求,出现异常,弹出窗口提示信息。 //var json = response.responseText.replace("</generated></generated>", ""); var json = response.responseText; var data = Ext.decode(json); Ext.Msg.alert('提示', "请求URI:"+ data.requestURI + "<br>错误信息:"+ data.message + "<br><a href='#'>错误堆栈信息</a>", function(){ }); return false; }); |
|
返回顶楼 | |
发表时间:2011-06-10
楼主说说简单的jsp+javabean架构如何处理异常??
|
|
返回顶楼 | |
发表时间:2011-06-11
首先感谢楼主的分享,这个问题我曾经也思考了一下,但是始终没有找到觉得完美的方法!
|
|
返回顶楼 | |
发表时间:2011-06-11
楼主可否发个简单示例,我们进行扩充与自定义。
|
|
返回顶楼 | |
发表时间:2011-06-11
pml346680914 写道 楼主说说简单的jsp+javabean架构如何处理异常??
可以用Servlet的filter吧~封装一个拦截器 |
|
返回顶楼 | |
发表时间:2011-06-11
itlangqun 写道 楼主可否发个简单示例,我们进行扩充与自定义。
我的这篇文章有源码: http://www.iteye.com/topic/1069749 |
|
返回顶楼 | |
发表时间:2011-06-13
一般都是service记录异常网上抛,struts来跳转 不错 回头整理
|
|
返回顶楼 | |
发表时间:2011-06-13
学到了不少东西啊
|
|
返回顶楼 | |
发表时间:2012-05-29
正是我需要的资料
|
|
返回顶楼 | |