Apache Tomcat 服务器(在 Linux 机器中)区域设置和 Unicode 字符替换为“?”
Apache Tomcat Server (in Linux Machine) Locale & Unicode Characters Replaced with '?'
我有一个 java spring MVC 应用程序,它接受来自客户端的请求并将 Json 数据发送回客户端。 Json 数据包含 Unicode 字符。该应用程序在我的开发机器上运行良好(Linux mint,Apache Tomcat)但是当我在其他服务器上部署生成的 war 文件时( Ubuntu,相同的 Apache Tomcat 版本),响应正文中的所有波斯语 Unicode 字符已替换为“?”
这是我在浏览器中从 Apache Tomcat 获得的响应主体示例
> { "id": 5186, "title": "magh", "respubdate": "2015-10-05",
> "acceptdate": "2015-09-28", "author": "??? ?????",
> "subject_category_id": 109, "subject_category_name": "???? ????",
> "comment": null, "event_title": "????? ???????? ? ????? ??????",
> "orgunit_child_name": "???? ?", "orgunit_parent_name": "????????
> ?????? ??????? ? ????????" }
我也设置了
<Connector port="8080"
URIEncoding="UTF-8"
/>
在 Apache Server.xml 中 Tomcat,但没有任何改变。
Apache Tomcat 版本:7.0.6
我找到了解决方案。当我 运行
locale -a
在开发和生产机器上。我看到机器上安装的本地人之间的差异。我在生产机器上安装了丢失的语言环境(语言)包,一切似乎都很好;)
我有一个 java spring MVC 应用程序,它接受来自客户端的请求并将 Json 数据发送回客户端。 Json 数据包含 Unicode 字符。该应用程序在我的开发机器上运行良好(Linux mint,Apache Tomcat)但是当我在其他服务器上部署生成的 war 文件时( Ubuntu,相同的 Apache Tomcat 版本),响应正文中的所有波斯语 Unicode 字符已替换为“?”
这是我在浏览器中从 Apache Tomcat 获得的响应主体示例
> { "id": 5186, "title": "magh", "respubdate": "2015-10-05",
> "acceptdate": "2015-09-28", "author": "??? ?????",
> "subject_category_id": 109, "subject_category_name": "???? ????",
> "comment": null, "event_title": "????? ???????? ? ????? ??????",
> "orgunit_child_name": "???? ?", "orgunit_parent_name": "????????
> ?????? ??????? ? ????????" }
我也设置了
<Connector port="8080"
URIEncoding="UTF-8"
/>
在 Apache Server.xml 中 Tomcat,但没有任何改变。
Apache Tomcat 版本:7.0.6
我找到了解决方案。当我 运行
locale -a
在开发和生产机器上。我看到机器上安装的本地人之间的差异。我在生产机器上安装了丢失的语言环境(语言)包,一切似乎都很好;)