spring mvc如何处理表单类型转换错误
领域对象包含一个Integer类型的值,在spring的form表单中如果输入错误的字符串,比如“abc”,那么会报错The request sent by the client was syntactically incorrect.这肯定是个类型转换的异常,那么如何捕获这个异常并且重新跳转到表单的编辑页面?
pludes
9 years, 1 month ago
Answers
根据楼主的报错,我猜测抛出的异常应该是org.springframework.beans.TypeMismatchException,这是SpringMVC报的错误。"The request sent by the client was syntactically incorrect."这应该是apache封装之后显示的错误信息。对于spring抛出的这种异常,使用
@ExceptionHandler({ TypeMismatchException.class })
@ResponseBody
public String ParameterErrorExceptionHandeler(RuntimeException exception, HttpServletRequest request)
throws IOException {
××××××
return 。。。
}
就能接收到那个异常。当然你也可以在web.xml里面配置400异常页面,或者如果你使用了springMVC的Resolve,也可以在viewResolve里面配置400错误页面。
Arikado
answered 9 years, 1 month ago