Jackson JSON库:在序列化时忽略导致异常的字段



我有一个get_____方法,当调用错误时会抛出异常。(代码是别人写的,我无法更改这部分问题(

有没有办法告诉Jackson尝试序列化,如果发生异常,只需忽略字段(即,不序列化生成异常的字段(,然后继续执行其余的序列化

我已经看到在序列化时有一个忽略NULL值的选项,这很好,但我特别希望在调用get方法后忽略异常。

我不想用@JsonIgnore标记单个字段,因为有时该方法对某些对象有效(在这种情况下,我想序列化成功的get方法的结果(,而对其他一些对象无效(在这种情形下,我希望跳过get方法(。另外,这是劳动密集型的,我宁愿有一个一揽子的解决方案。

EDIT在意识到主题是关于"序列化":

您必须创建一个自定义JsonSerializer
我建议您扩展StdSerializer并捕获返回null的错误(将其与不写null的参数相结合(
也许您可以从FailingSerializer中找到灵感。

基本上,我认为您应该覆盖StdSerializerserialize方法,调用super.serialize捕获所有Exceptions。

最新更新