将Spring从3.2迁移到4.1.1:JSON序列化遇到麻烦


问题内容

我最近将项目从Spring 3迁移到Spring 4.1.1。我还将杰克逊从版本1迁移到版本2.3.0。

现在,在使用无效响应的控制器时遇到问题

@RequestMapping(value="toto", method="POST")
public @ResponseBody void myController() {
//content
}

在运行时,调用它时会出现以下形式的异常:

Failed to evaluate serialization for type [void]: java.lang.IllegalStateException: Failed to instantiate standard serializer (of type com.fasterxml.jackson.databind.ser.std.NullSerializer): Class com.fasterxml.jackson.databind.ser.BasicSerializerFactory can not access a member of class com.fasterxml.jackson.databind.ser.std.NullSerializer with modifiers "private"

我想知道是否有人遇到过类似的问题或对什么地方有想法。

提前致谢。


问题答案:

如果要使用void返回类型,则需要使用以下方法注释该方法@ResponseStatus(value = HttpStatus.OK)

@RequestMapping(value = "/usage")
@ResponseStatus(value = HttpStatus.OK)
public void doSomething(HttpServletRequest request, ...