Annotation 기반의 Spring MVC Java 웹 응용 프로그램을 부두 웹 서버 (현재 maven jetty plugin)에서 실행하고 있습니다.
String 도움말 텍스트 만 반환하는 하나의 컨트롤러 메소드로 AJAX 지원을하려고합니다. 리소스는 UTF-8 인코딩이며 문자열도 있지만 서버의 응답은 다음과 같습니다.
content-encoding: text/plain;charset=ISO-8859-1
브라우저가 전송하더라도
Accept-Charset windows-1250,utf-8;q=0.7,*;q=0.7
어떻게 든 스프링의 기본 구성을 사용하고 있습니다.
이 Bean을 구성에 추가하는 힌트를 찾았지만 인코딩을 지원하지 않고 대신 기본 Bean이 사용되기 때문에 사용되지 않았다고 생각합니다.
<bean class="org.springframework.http.converter.StringHttpMessageConverter">
<property name="supportedMediaTypes" value="text/plain;charset=UTF-8" />
</bean>
내 컨트롤러 코드는 다음과 같습니다 (이 응답 유형 변경은 저에게 효과적이지 않습니다).
@RequestMapping(value = "ajax/gethelp")
public @ResponseBody String handleGetHelp(Locale loc, String code, HttpServletResponse response) {
log.debug("Getting help for code: " + code);
response.setContentType("text/plain;charset=UTF-8");
String help = messageSource.getMessage(code, null, loc);
log.debug("Help is: " + help);
return help;
}