泽西+杰克逊1.9.11 UTF8问题

时间:2014-05-13 13:03:38

标签: java json jersey jackson

我使用泽西WS(2.5)与杰克逊1.9.1.1,我有编码问题。

我正在测试这个文字:

őúüóöüáű.sqadaud121.-.űúóüóaé í

当我返回纯文本时,没关系。

当我手动将其作为JSON返回时,(因此我将[和]添加到String并将@Produces设置为MediaType.APPLICATION_JSON,这是完美的。在这种情况下,我仍然返回String。

但是当我使用Pojo时,它会中断。参见:

@GET
@Path("/testUTF")
@Produces(MediaType.APPLICATION_JSON)
public TestEntity testUTF() {
    TestEntity te = new TestEntity();
    te.setTestText("őúüóöüáű.sqadaud121.-.űúóüóaé í");
    return te;
}

这将输出完全断开的字符串。确切地说:

{"testText":"Q������q.sqadaud121.-.q����a� �"}

这让我意识到这是杰克逊的一个问题。我无法更新到Jackson 2.x,因为它是用Java7构建的,我们仍然使用Java6。 任何人都有任何想法?

到目前为止我已尝试过:

1)设置@Produces(" application / json; charset = UTF-8") - 没有效果 2)创建一个CharsetResponseFilter并在那里设置charset - 没有效果

0 个答案:

没有答案
相关问题