我正在用Jbossas服务器测试基于openshift的简单jsf应用程序。但似乎由于某种原因,日志中出现了错误的编码。。。例如,jsf-bean方法中的一些代码:
System.out.println("перед dao.addTask");
System.out.println("name = " + name); // where name value is "экстраординарно"
在服务器日志中,我们有:
□□□□□□□□□□dao.addTask
name=□□□□□□□□□□□□□□□
当java代码使用utf-8编码时,日志中错误编码的原因是什么?
我认为您必须更新standalone.xml文件中的记录器编码。每个OpenShift应用程序都有.OpenShift目录,其中包含很少的配置文件和其他OpenShift特定的文件。对于JBoss应用程序,.openshift/config目录中有standalone.xml。在standalone.xml 中更新以下内容
<periodic-rotating-file-handler name="FILE">
至
<periodic-rotating-file-handler name="FILE" encoding="UTF-8">
希望这对你有帮助。