【发布时间】:2026-01-30 03:45:02
【问题描述】:
我在 weblogic 上部署了 jersey REST 通道。所有方法都配置为返回 JSON 数据。泽西在里面使用杰克逊。这种方法之一一直在工作并返回正确的数据,但另一个返回“null”。从字面上看,这意味着“null”被写在屏幕上。但是该方法绝对不会返回 null,因为我记录了所有内容。
似乎没有错误,因为日志中没有打印错误,并且我在 log4j 配置中为根记录器设置了“信息”级别。所以我有点迷茫 - 不知道当没有错误报告并且简单地返回 null 时会出现什么问题。任何人都可以帮忙吗?如何至少找出问题所在?
--编辑--
在我的情况下,这是由于响应类字段中缺少 getter/setter 引起的。有一个构造函数,它被 GSON 使用,但不是 jersey/jackson。但令人讨厌的是,这个工具只是返回 null 并没有抛出任何异常。所以,问题是,如何调试此类错误,是否可以强制 jersey/jackson 打印他们发现的问题,而不是这种幼稚的行为;)
【问题讨论】:
-
哪个工具返回空值?构造函数与序列化 JSON 有什么关系(它们仅用于反序列化,即在读取 JSON、创建对象时)?
-
但是,一般来说,从数据绑定返回 null 并没有错;或写入值为“null”的 JSON。究竟应该抛出什么,为什么?你有代码示例吗?这里实际的具体问题是什么?
标签: java json weblogic jersey jackson