java - Can not convert json to Model -


i have json url. need convert json model

{     "somefield": 3,     "datesfield": ["2017-08-19",     "2017-08-20",     "2017-08-26",     "2018-12-30"] } 

i create models mapping

@data @noargsconstructor private class response{     @jsonproperty("somefield")     private int somefield;     @jsonproperty("datesfield")     private datesfield datesfield; }  @data @noargsconstructor private class datesfield{     private string[] strings; } 

try convert

objectmapper mapper = new objectmapper(); dates dates = mapper.readvalue(forobject, response.class); 

i error when try convert:

can not deserialize instance of packeg.datesfield out of start_array token

the json attributed incorrect according model. there no array of datesfield type array of strings within datesfield object.

your object json equivalent shall be:

{     "somefield": 3,     "datesfield": {         "strings":["2017-08-19",          "2017-08-20",          "2017-08-26",          "2018-12-30"]      } } 

or other way, if need adapt json response, change model suggested @xenteros to:

@data @noargsconstructor private class response{     @jsonproperty("somefield")     private int somefield;     @jsonproperty("datesfield")     private string[] datesfield; } 

also, note java code map response should changed from:

dates dates = mapper.readvalue(forobject, response.class); 

to

response response = mapper.readvalue(forobject, response.class); 

Comments

Popular posts from this blog

What is happening when Matlab is starting a "parallel pool"? -

angular - DownloadURL return null in below code -

php - Cannot override Laravel Spark authentication with own implementation -