Я пробовал вещи весь день, но не могу найти правильное решение.Моя проблема: я разрабатываю приложение на основе Spring MVC в своем локальном Tomcat.В моей базе данных MySQl
установлена кодировка UTF-8
, все содержимое там отображается правильно при использовании phpMyAdmin.Также вывод в файлах LOG, использующих log4j
в catalina.out, работает нормально.
Мои страницы JSP настроены на
<!-- encoding -->
<%@ page contentType="text/html; charset=UTF-8" %>
<%@ page pageEncoding="UTF-8" %>
Также хорошо отображаются данные на моем JSP.Я также могу отправлять данные из моего контроллера без вмешательства в БД с помощью специальных символов, например
String str = "UTF-8 Test: Ä Ö Ü ß è é â";
logger.debug(str);
mav.addObject("utftest", str);
, которые правильно отображают в журнале и на странице jsp в браузере .
НО: при наличии специальных символов непосредственно в моем файле JSP, например, для текста в заголовках, это не работает.FF и Google Chrome отображают странные символы, но сообщают, что страница имеет формат UTF-8.При переключении на латиницу символы становятся все более и более странными.
Та же проблема при отображении текстовых токенов из моего файла messages.properties, хотя при щелчке правой кнопкой мыши Eclipse сообщает, что будет использоваться UTF-8.
Я немного растерялся и не знаю, где сейчас проверить.
Резюме:
- Хранилище БД в порядке
- Вывод БД включенJSP в порядке
- Вывод на JSP напрямую контролер формы в порядке
- даже чтение в формах в порядке
- .properties файлы и JSP текст не в порядке !!!
Есть идеи?Я действительно ценю и советы.