Spring MVC错误:此请求标识的资源仅能够生成响应


问题内容

当我在浏览器中调用此URL时:

http://localhost:8080/app/foo.json

Spring在此错误消息中以406状态代码响应:

该请求标识的资源只能根据请求“接受”标头()生成特性不可接受的响应。

但是,我已经定义了我的内容协商视图解析器,如下所示:

<bean class="org.springframework.web.servlet.view.ContentNegotiatingViewResolver">
    <property name="favorPathExtension" value="true" />
    <property name="ignoreAcceptHeader" value="true" />

    <property name="mediaTypes">
        <map>
            <entry key="json" value="application/json"/>
            <entry key="html" value="text/html"/>
        </map>
    </property>
</bean>

我的控制器的定义如下:

@Controller
@RequestMapping(value = "/foo")
public class ToowootController {

    @RequestMapping(method = GET)
    @ResponseBody
    public FooDTO index() {
        // return fooDTO
    }

}

有什么想法我做错了吗?


问题答案:

看起来问题是在这种情况下,我没有添加所有必需的依赖项jackson-mapper-asl。我认为仅添加jackson-core-asl就足够了。