谷歌云端点中的unicode字符

时间:2014-10-14 22:35:41

标签: google-cloud-endpoints

我正在开发一个应该接受JSON对象的后端,如果它们符合某些条件,则将它们输入数据存储区。我的问题是,当我发送带有unicode字母的json时,我得到了残缺的内容。我已经尝试使用api explorer和Firefox的休息客户端插件

我的端点API方法如下所示:

    @ApiMethod(name = "addObj", httpMethod = "post" , path = "addObj")
    public ArtObj addObj(ArtObj obj)
        throws OAuthRequestException, IOException,IllegalArgumentException
    {

    }

和我的Json看起来如下

{
   someText:"محتوى عربى",
   someEnglish : "English content"
}

根据我在appengine-web.xml

中添加的许多文章
<system-properties>
    <property name="java.util.logging.config.file" value="WEB-INF/logging.properties"/>
      <property name="file.encoding" value="UTF-8" />
    <property name="DEFAULT_ENCODING" value="UTF-8" />
</system-properties>

但是我收到的只是一个解析过的POJO,但是带有乱码的unicode字母和完美的英文。

2 个答案:

答案 0 :(得分:1)

我找到了问题的答案。我正在使用Windows等环境变量 必须将JAVA_TOOL_OPTIONS设置为-Dfile.encoding=UTF8才能设置JVM的默认编码。现在我得到了正确的JSON。

由于

答案 1 :(得分:0)

我在泰语中插入实体面临同样的问题,我的解决方案是在Eclipse上打开项目属性窗口,在“资源/文本文件编码”下单击“其他”并选择“UTF-8”并且它的工作正常。 enter image description here