日期:2014-05-16  浏览次数:20327 次

Spring Json View之错误处理和异常处理

错误处理

错误处理是在控制器增加一些公共或字段级别的错误(绑定结果集)到Model后触发的。?

  1. 配置
  2. HttpStatusError
  3. ModelFlagError?
  4. 自主实现JsonErrorHandler

?

1. Spring配置文件:view.xml

把错误(公共级别的和字段级别的)配置好后转换成一个json字符串,所有注册的Json错误处理会按它们被添加的顺序来触发。

?

下列是JsonErrorHadnders的实现:

?

HttpStatusError

通过response.setStatus(errorCode)设置一个新返回状态;一些Ajax框架比如prototype.js中触发成功状态使用返回状态编码是200299,失败状态使用>=300,

默认编代码为311。

?

ModelFlagError

Model里增加一个简单键值对。一些Web2.0 表现层框架需要一个标记来判断服务器端的操作是否成功或失败。比如Ext框架需要一个failure=true 或者success=true。

默认标记是failure=true。

?

<beans>

<bean name="jsonView" class="org.springframework.web.servlet.view.json.JsonView">

<property name="jsonErrors">

<list>

<ref bean="statusError" />

<ref bean="modelflagError" />

</list>

</property>

</bean>

<bean name="statusError"

class="org.springframework.web.servlet.view.json.error.HttpStatusError"/>

<bean name="modelflagError"<