Exception上的Java SpringMVC错误对象

时间:2012-12-04 14:25:05

标签: java spring-mvc error-handling jackson

我有一个函数既是HTTP端点又是我在Java程序中调用的函数:

@RequestMapping(method = RequestMethod.GET)
public @ResponseBody MyObject getObject(final HttpServletRequest request, final HttpServletResponse response)

问题在于错误处理。功能我想错误:

  • 从Java内部调用的函数:抛出异常
  • 从HTTP调用的函数:返回错误json对象

试图找出最佳方法。想过刚刚返回一个Java.lang.Object,但那是很多的转换和类型检查。

1 个答案:

答案 0 :(得分:1)

从Web调用它时添加一个Spring异常处理程序,然后让处理程序返回您的JSON。

更好的方法可能是将功能重构为服务方法,然后您可以让HTTP调用以自己的方式处理异常,并且内部调用可以根据需要处理它。

修改

第二种方法也会更容易测试。