【发布时间】:2012-10-01 14:17:42
【问题描述】:
我们在使用 Tomcat 7 的生产服务器上,无论出于何种原因,管理员都没有为我们设置 CATALINA_OPTS="-Dfile.encoding=UTF-8" 解决方法。
这意味着现在在部署 WAR 文件时,Tomcat 返回乱码而不是对应的 Unicode。
我们也在web.xml 中添加了这个,但无济于事:
<filter>
<filter-name>encoder</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encoder</filter-name>
<url-pattern>*</url-pattern>
</filter-mapping>
我们如何在不派人闯入服务器机房并修改配置的情况下进行管理?
【问题讨论】:
-
如果启用了自动部署,只需将更新的战争放入 webapp 目录,它就会工作。如果没有,你需要请求 tomcat 重启。
-
我的问题是无法访问 Tomcat 或重新启动它。只是我无法为Tomcat设置环境变量。
-
您能否让您的服务器管理员将操作系统默认编码更改为 UTF-8?
-
可以修改tomcat的配置文件吗?
-
@dngfng 不。根据管理员的说法,“不修改操作系统配置至关重要”。
标签: java tomcat web-applications utf-8 tomcat7