Failed to load resource:the server reponded with a status of 406(Not Acceptble)問題の解決策

5250 ワード

SpringMVCを使う時、私達はよくControllerの中で一つの対象を返して、jsonの方式でビューに伝えます。Failed to load resource:the server reponded with a status of 406(Not Accepttable)に遭遇する可能性があります。
この問題を引き起こす可能性はいくつかありますが、これに遭遇したのはjsonの転換の問題です。私たちはSprigMVCのプロファイルに下記の構成を追加すればいいです。
<mvc:annotation-driven>
    <mvc:message-converters>
        <bean
            class="org.springframework.http.converter.ByteArrayHttpMessageConverter" />
        <bean class="org.springframework.http.converter.FormHttpMessageConverter" />
        <bean
            class="org.springframework.http.converter.xml.SourceHttpMessageConverter" />
        <bean
            class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter"/>
        <bean class="org.springframework.http.converter.StringHttpMessageConverter">
            <constructor-arg index="0" value="UTF-8" />
        bean>
    mvc:message-converters>
mvc:annotation-driven>
もちろん関連のjarカバンを導入します。ここで使っているのはmavenです。必要な依存は以下の通りです。
<dependency>
    <groupId>org.codehaus.jacksongroupId>
    <artifactId>jackson-mapper-aslartifactId>
    <version>1.9.13version>
dependency>
<dependency>
    <groupId>com.fasterxml.jackson.coregroupId>
    <artifactId>jackson-annotationsartifactId>
    <version>2.6.3version>
dependency>
<dependency>
    <groupId>com.fasterxml.jackson.coregroupId>
    <artifactId>jackson-coreartifactId>
    <version>2.6.3version>
dependency>
<dependency>
    <groupId>com.fasterxml.jackson.coregroupId>
    <artifactId>jackson-databindartifactId>
    <version>2.6.3version>
dependency>
jackson-mapper-asl-1.9.13 jar jackson-cored-asl-1.3.jar jackson-annotations-2.3.3.jar jackson-core-26.31.jar jackson-core-jackson-databind-2.6.3.jarをMavenでダウンロードする時は遅すぎます。私がアップロードしたリソースを直接使用できます。http://download.csdn.net/detail/lianjiww/9740986 この資源をダウンロードして直接地元のMaven倉庫に入ればいいです。