0

我正在尝试升级到 Jersey 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模块等),因此在不知道哪些部分有趣的情况下很难发布相关代码。

4

0 回答 0