反序列化时的NPE,从2.25.2升级泽西2.26

时间:2018-01-16 12:15:37

标签: serialization nullpointerexception jersey jersey-client genson

我正在尝试升级到泽西岛2.26。我添加了所需的新hk2依赖项:

    <dependency>
        <groupId>org.glassfish.jersey.inject</groupId>
        <artifactId>jersey-hk2</artifactId>
    </dependency>

我使用的是jersey-bom 2.26。

我使用Genson进行JSON绑定,如下所示:

    Genson genson = new GensonBuilder().withBundle(new JAXBBundle()).setSkipNull(true).create();
    rc.register(new GensonJaxRSFeature().use(genson));

以前,一切都运行良好,现在我的一些测试失败了,有点神秘的NPE:

java.lang.NullPointerException
    at org.eclipse.yasson.internal.serializer.DeserializerBuilder.isJsonValueEvent(DeserializerBuilder.java:155)
    at org.eclipse.yasson.internal.serializer.DeserializerBuilder.build(DeserializerBuilder.java:110)
    at org.eclipse.yasson.internal.Unmarshaller.deserializeItem(Unmarshaller.java:56)
    at org.eclipse.yasson.internal.Unmarshaller.deserialize(Unmarshaller.java:50)
    at org.eclipse.yasson.internal.JsonBinding.deserialize(JsonBinding.java:45)
    at org.eclipse.yasson.internal.JsonBinding.fromJson(JsonBinding.java:85)
    at org.glassfish.jersey.jsonb.internal.JsonBindingProvider.readFrom(JsonBindingProvider.java:99)

有趣的是,如果我从Eclipse运行它就可以了。

有没有人有调试/排除故障的提示?这是一个相当大的项目(使用rest-client模块等),因此很难在不知道哪些部分有趣的情况下发布相关代码。

0 个答案:

没有答案