0

出于测试原因,我希望在 spring-mvc-controller 中有一个方法签名,其返回值应该被 spring 忽略:

@RequestMapping(value = "/{uuid}", params = "question", method = RequestMethod.POST)
@ResponseBody
public IAnswer saveAnswer(UiAnswer json, @PathVariable String uuid, @RequestParam("question") String question, HttpServletResponse response) {}

这是一个后请求,控制器接收数据并response.setStatus(HttpServletResponse.SC_OK);在一切正常时仅响应。

  • 随着@ResponseBody它死于内部服务器错误 500
  • 没有@ResponseBodyspring试图解决视图
  • 作为void返回值,它工作正常

我可以告诉 spring 忽略我返回的对象吗?谢谢!

4

1 回答 1

0
@RequestMapping(value = "/{uuid}", params = "question", method = RequestMethod.POST)
@ResponseBody
public void saveAnswer(UiAnswer json, 
                       @PathVariable String uuid, 
                       @RequestParam("question") String question, 
                       HttpServletResponse response) {
    doSaveAnswer(json, uuid, question, response);
}

protected IAnswer doSaveAnswer(UiAnswer json, 
                               String uuid, 
                               String question, 
                               HttpServletResponse response) {
    // your original code here
}

然后单元测试doSaveAnswer()

于 2012-04-21T11:16:46.057 回答