Chcę wiedzieć, jak skonfigurować środowisko Java do kodowania w UTF-8.
Zasadniczo mam strony JSP wyświetlane z pewnym tekstem arabskim, ale nie wydają się poprawnie kodować.
Po uruchomieniu stron w IDE działa dobrze, ale na serwerze, na którym są hosta, po prostu wyświetla je jako znaki zapytania. Chcę tylko wiedzieć, jak ustawić środowisko java lub tomcat Apache do kodowania UTF-8.
Każda pomoc zostanie doceniona.Ustawienie środowiska Java (Apache Tomcat) do kodowania UTF-8
Odpowiedz
Masz kilka ogólnych ustawień z różnych poziomów oddziaływania:
(1) Skonfiguruj swoją stronę JSP
do wyświetlania treści w UTF-8 (miejsce na górnym strony JSP)
<%@page pageEncoding="utf-8" %>
(2) Ustaw domyślne kodowanie znaków UTF-8 (java system property)
-Dfile.encoding="utf-8"
(3) Skonfiguruj serwer aplikacji do kodowania parametrów żądania w UTF-8 (w conf/server.xml)
<connector .... URIEncoding="utf-8" />
(4)Tell browser treść jest w UTF-8 (miejsce w html sekcja HEAD
)
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8' />
te kroki zostały szczegółowo wyjaśnione w starym poście http://stackoverflow.com/ pytania/138948/how-to-get-utf-8-working-in-java-webapps –
Gdzie mam zastosować punkt (2)? – Mush
@Mush, jako argument do uruchomienia serwera, zwykle poprzez ustawienie zmiennej 'JAVA_OPTS =" - D ... "' np. W skrypcie startowym lub jako zmienna systemowa ('export JAVA_OPTS =" .. "") . –
w obrębie katalogu projektu: musisz mieć folder o nazwie „font” w tym foler skopiować arabskie czcionki, będzie to nosić swoją drogę do znaków na serwerze też ....
Musisz edytować /config/web.xml Odkomentuj ten filtr: setCharacterEncodingFilter
<!-- A filter that sets character encoding that is used to decode -->
<!-- parameters in a POST request -->
<filter>
<filter-name>setCharacterEncodingFilter</filter-name>
<filter-class>org.apache.catalina.filters.SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<!-- The mapping for the Set Character Encoding Filter -->
<filter-mapping>
<filter-name>setCharacterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
pokrewnego stanowisko może pomoc http://stackoverflow.com/questions/138948/how-to-get-utf-8-working-in-java-webapps –