Проблема кодировки тела ответа SpringMVC3.0 - PullRequest
1 голос
/ 02 марта 2012

набор символов по умолчанию для @ResponseBody iso-8859-1, как перейти на utf8?

Конфигурация ниже не работает.

<bean class = "org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
        <property name = "messageConverters">
            <list>
                <bean class = "org.springframework.http.converter.StringHttpMessageConverter">
                    <property name = "supportedMediaTypes">
                        <list>
                        <value>text/plain;charset=UTF-8</value>
                        </list>
                    </property>
                </bean>
            </list>
        </property>
    </bean>

Ответы [ 2 ]

3 голосов
/ 19 августа 2012

Вы можете добавить yield = "text / plain; charset = UTF-8", чтобы запросить отображение

@RequestMapping(value = "/rest/create/document", produces = "text/plain;charset=UTF-8")
@ResponseBody
public void create(Document document, HttpServletRespone respone) throws UnsupportedEncodingException {

    Document newDocument = DocumentService.create(Document);

    return jsonSerializer.serialize(newDocument);
}

см. Этот блог для получения более подробной информации

0 голосов
/ 03 марта 2012

Если вы используете tomcat, вам также необходимо указать URIEncoding="UTF-8" для <Connector> в конфигурации Tomcat server.xml, как описано здесь:

http://wiki.apache.org/tomcat/FAQ/CharacterEncoding#Q8

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...