在spring mvc RESTful控制器中返回404而不是406的无效内容类型

时间:2013-12-26 18:56:07

标签: rest spring-mvc

我正在使用Spring 3.0.5创建一个RESTful控制器。我已经指定了我愿意接受的内容类型,但发现如果请求与其他内容一起发送,我得到的是404而不是预期的406.有人可以指出我缺少的内容吗?

@Controller
@RequestMapping("/hello")
public class HelloWorldController {

    @RequestMapping(value="/{name}", method=RequestMethod.GET, headers="accept=application/json")
public @ResponseBody Map<String, String> sayHello(@PathVariable("name") String username) {
    Map<String,String> result = new HashMap<String,String>();
    result.put("greeting", "Hello "+username);
    return result;
}
}

如果我发送带有“accept = application / json”标题的请求,一切正常。但是,标题为“accept =”text / xml“的请求将返回404。

谢谢!

- 约翰

1 个答案:

答案 0 :(得分:0)

这是我的评论,作为完整性的答案。

我建议您升级到3.1及更高版本。这些处理程序处理问题似乎已得到解决。

相关问题:https://jira.springsource.org/browse/SPR-10085