У меня есть приложение Java, развернутое на сервере Jboss.У меня есть проблема с символом «€» (и я думаю, что другие) В моей местной среде, у меня нет этой проблемы, но в среде разработки.У меня есть JSP, с кодировкой и кодировкой в UTF-8.У меня есть Jboss с этим набором свойств:
client.encoding.override="UTF8"
org.apache.catalina.connector.USE_BODY_ENCODING_FOR_QUERY_STRING="true"
В моем источнике есть фильтр с:
servletRequest.setCharacterEncoding("UTF-8");
servletResponse.setContentType("text/html; charset=UTF-8");
И если я разверну свое решение, эта инструкция вернет "UTF8"
Charset.defaultCharset().displayName()
Но когда я отправляю символ «€», появляется запрос: значение = 0% E2% 82% AC
Все выглядит нормально, но символ, который печатает вывод:0 €
Символ закодирован в Windows-1252
С этой инструкцией все в порядке:
String out = new String(mvp.getBytes(Charset.forName("Windows-1252")), Charset.forName("UTF-8"));
Но мне нужночтобы знать, как может быть проблема. Спасибо