在 REST 客户端中反序列化 JsonObject
Deserializing JsonObject in REST client
我在反序列化从 returns javax.json.JsonObject
的剩余端点获取的 javax.json.JsonObject
时遇到问题。
我正在使用 TomEE 7.0.2 网络配置文件。
稍微调试后,我发现异常来自Johnzone JsonObject implementation,使用方法JsonObject.getJsonObject(name)
时是NullPointerException
。
来自 JsonObject 的 javadoc,它说如果没有找到 name
的映射,方法不应抛出异常。安装它应该 return null
。
Json 反序列化意味着有点通用,有时并非所有映射都存在。这对我来说是个问题,因为 JsonObject.getJsonObject(name)
在第三方库中被调用。
我是否误解了抛出此 NullPointerException
的原因?当应用程序 war 在 TomEE 服务器中为 运行 时,是否有使用另一个 javax.json.JsonObject
实现的解决方法?
这是因为您捕获的变量类型错误。请尝试使用 var。
您可以在读取实际值之前使用 containsKey 测试是否存在。
我在反序列化从 returns javax.json.JsonObject
的剩余端点获取的 javax.json.JsonObject
时遇到问题。
我正在使用 TomEE 7.0.2 网络配置文件。
稍微调试后,我发现异常来自Johnzone JsonObject implementation,使用方法JsonObject.getJsonObject(name)
时是NullPointerException
。
来自 JsonObject 的 javadoc,它说如果没有找到 name
的映射,方法不应抛出异常。安装它应该 return null
。
Json 反序列化意味着有点通用,有时并非所有映射都存在。这对我来说是个问题,因为 JsonObject.getJsonObject(name)
在第三方库中被调用。
我是否误解了抛出此 NullPointerException
的原因?当应用程序 war 在 TomEE 服务器中为 运行 时,是否有使用另一个 javax.json.JsonObject
实现的解决方法?
这是因为您捕获的变量类型错误。请尝试使用 var。
您可以在读取实际值之前使用 containsKey 测试是否存在。