本文算是spring mvc4:异常处理 后续篇章,普通页面出错后可以跳到统一的错误处理页面,但是ajax就不行了,ajax的本意就是不让当前页面发生跳转,仅局部刷新,从而改善用户体验,基本思路是:把异常转换成json数据返回,这样ajax的回调函数,就能解析出错误原因。
一、如何区分ajax请求与普通请求
打开firefox的调试工具观察一下:
普通的页面请求
jquery发起的ajax请求
对比一下,可以发现jquery发生的ajax请求,Request Headers里多出了x-requested-with,用它就可以判断是否ajax请求。
二、struts2框架
a) 先定义一个ajax通用异常
1 package com.cnblogs.yjmyzz.exception; 2 3 public class AjaxException extends Exception { 4 5 private static final long serialVersionUID = -8503861588580421151L; 6 7 public AjaxException(String message) { 8 super(message); 9 } 10 11 }