首页 > 解决方案 > Jackson objectMapper 反序列化为 TimeZone

问题描述

我在让 Jackson 对象映射器将 JSON 反序列化为具有 TimeZone 字段的对象时遇到问题。

com.fasterxml.jackson.databind.exc.MismatchedInputException: Cannot construct instance of `com.fasterxml.jackson.module.mrbean.generated.java.util.TimeZone` (although at least one Creator exists): no String-argument constructor/factory method to deserialize from String value ('America/New_York')

这是我试图将 json 反序列化为 java 对象的代码部分。

objectMapper.readValue(json, EmailRequest.class)

json = '{"toAddresses":[{"memberId":1,"firstName":"Firstname","lastName":"TestLastbc171f54-50e2-43c7-9640-d5116cdad11c","timeZone":"America/New_York"}],"emailId":"bcebda9c-ff7f-4874-a443-755c4549c187"}'

**EmailRequest.class** 

toAddresses: Set<Member

Member object:
    firstName: String
    lastName: String
    memberId: Int,
    timeZone: java.util.TimeZone

任何想法都非常受欢迎。

标签: javajackson

解决方案


推荐阅读