GlassFishとEclipseを使ってJSFの学習をしています。サーバ立ち上げ時や、コンソールに日本語を出力した際に文字化けが発生していたので調査しました。結果、無事に解決することが出来たので情報を共有します。
環境
- Windows7(64bit)
- Eclipse4.3
- Java 1.8.0_40
- GlassFish4.1
- JSF2.2
現象
サーバ立ち上げ時に下記のようなログが出力されますが文字化けが発生。
2015-04-30T02:07:50.540+0900|情報: �R���e�L�X�g ‘/jsf’ �� Mojarra 2.2.7 ( 20140610-1547 https://svn.java.net/svn/mojarra~svn/tags/2.2.7@13362) �����������܂�
対応方法
{GlassFishインストールディレクトリ}/glassfish/domains/domain1/config/domain.xml
に「-Dfile.encoding=UTF-8」を追加
java-configの中にjvm-optionsを指定している箇所があるので任意の場所に以下一行を追加します。
<jvm-options>-Dfile.encoding=UTF-8</jvm-options>
私は、java-configの一番下に追加しました。
<java-config classpath-suffix="" debug-options="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=9009" system-classpath=""> ・・・省略・・・ <jvm-options>-Dcom.ctc.wstx.returnNullForDefaultNamespace=true</jvm-options> <jvm-options>-Dfile.encoding=UTF-8</jvm-options> </java-config>
設定を保存してサーバを起動したところ文字化けが無事解消されていました。
2015-04-30T02:18:43.594+0900|情報: コンテキスト ‘/jsf’ の Mojarra 2.2.7 ( 20140610-1547 https://svn.java.net/svn/mojarra~svn/tags/2.2.7@13362) を初期化します