Работя Tomcat6 локално на Mac OS 10.5.8 Нашите сървъри за постановка и производство са настроили променлива на обкръжението на:
LANG=en_US.utf-8
Сцената и продукцията се изпълняват от CentOS и четат товастойност, когато Java и Tomcat стартира. Въпреки това, не изглежда, че Java чете тази стойност и е по подразбиране за en_US_ISO_85591. На моя локален компютър добавих LANG = en_US.utf-8 към моя .bash_profile файл, защото java & Tomcat работят като мой потребител.
Ако това помогне, ситуацията, в която се намираме, ече имаме бекенд услуга, която доставя xml-форматирани UTF8 данни на друг контролер, който преобразува данните в променлива на ниво страница. По време на процеса на преобразуване XML данните се конвертират във формат ISO_85591, след което се връщат към utf-8 и се разрушава с тази грешка:
Invalid byte 1 of 1-byte utf-8 sequence.
Има ли друг начин да конфигурирате това?
Отговори:
3 за отговор № 1Можете да зададете кодиране на файл за tomcat в променливата на среда CATALINA_OPTS:
cd <tomcat_root>
CATALINA_OPTS="-Dfile.encoding=utf-8"./bin/startup.sh
-1 за отговор № 2
Предлагам ви да прочетете Стартиране на Tomcat на Macintosh OS X и Инсталиране на Apache Tomcat за Mac OS X, в тези уроци ще откриете как да решите проблема си.