Tôi đang có trong ứng dụng web Spring MVC Java được chú thích của mình chạy trên máy chủ web jetty (hiện đang có trong plugin maven jetty).
Tôi đang cố gắng thực hiện một số hỗ trợ AJAX với một phương thức điều khiển chỉ trả về văn bản trợ giúp Chuỗi. Tài nguyên ở dạng mã hóa UTF-8 và chuỗi cũng vậy, nhưng phản hồi của tôi từ máy chủ đi kèm với
content-encoding: text/plain;charset=ISO-8859-1
ngay cả khi trình duyệt của tôi gửi
Accept-Charset windows-1250,utf-8;q=0.7,*;q=0.7
Tôi đang sử dụng cấu hình mặc định của mùa xuân
Tôi đã tìm thấy một gợi ý để thêm bean này vào cấu hình, nhưng tôi nghĩ rằng nó chỉ không được sử dụng, bởi vì nó nói rằng nó không hỗ trợ mã hóa và một cái mặc định được sử dụng thay thế.
<bean class="org.springframework.http.converter.StringHttpMessageConverter">
<property name="supportedMediaTypes" value="text/plain;charset=UTF-8" />
</bean>
Mã điều khiển của tôi là (lưu ý rằng thay đổi loại phản hồi này không hoạt động đối với tôi):
@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;
}