come impostare UTF8 lang su Tomcat / Java in esecuzione su Mac OS 10.5.8?
-
12-09-2019 - |
Domanda
Io corro Tomcat6 localmente su Mac OS 10.5.8. I nostri server di gestione temporanea e di produzione hanno messa a punto una variabile di ambiente di:
LANG=en_US.UTF-8
stage e corsa di produzione su CentOS e leggere questo valore quando Java e Tomcat si avvia. Tuttavia, non sembra che Java è la lettura di questo valore ed è inadempiente a en_US_ISO_85591. Sulla mia macchina locale, ho aggiunto LANG = en_US.UTF-8 per il mio file .bash_profile, perché Java e Tomcat sono in esecuzione come il mio utente.
Se aiuta, la situazione che sta eseguendo in è che abbiamo un servizio di back-end che fornisce i dati UTF8 XML in formato a un altro controller che converte i dati in una variabile a livello di pagina. La sua durante il processo di conversione a livello locale che i dati XML viene convertito nel formato ISO_85591, poi di nuovo a UTF-8, e rompe con questo errore:
Invalid byte 1 of 1-byte UTF-8 sequence.
C'è un altro modo per configurare questo?
Soluzione
È possibile impostare codifica dei file per Tomcat nella variabile d'ambiente CATALINA_OPTS:
cd <tomcat_root>
CATALINA_OPTS="-Dfile.encoding=UTF-8"./bin/startup.sh