Теперь дни я, имеющими опыт Js разборе .Ны имеет много практики с collection.I имеют Json СтрокуНевозможно разобрать JSON с картой, ObjectMapper
{
"time":1352113682,
"api_version":"1",
"firstname":"abc",
"lastname":"xyz",
"company":"Cool Apps",
"email":"[email protected]"
}
Я сделал класс
public class AuthenticateUser implements Serializable{
// Response when Successfully Login
public String time;
public String api_version;
public String firstname;
public String lastname;
public String company;
public String email;
}
и пытается разобрать его, как этот
Map<String, AuthenticateUser> map=null;
ObjectMapper mapper=new ObjectMapper();
try{
map=mapper.readValue(result,new TypeReference<Map<String, AuthenticateUser>>(){});
Set<String> keys=map.keySet();
for (String key : keys) {
System.out.println(map.get(key).time);
System.out.println(map.get(key).api_version);
System.out.println(map.get(key).firstname);
System.out.println(map.get(key).lastname);
System.out.println(map.get(key).company);
System.out.println(map.get(key).email);
}
}catch (Exception e) {
e.printStackTrace();
}
Но получаешь эту ошибку
com.fasterxml.jackson.databind.JsonMappingException: не удается создать значение типа [простой тип, класс AuthenticateUser] из интегрального числа JSON; no one-int-arg constructor/factory method at com.fasterxml.jackson.databind.deser.std.StdValueInstantiator.createFromInt (StdValueInstantiator.java:316) at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserializeFromNumber (BeanDeserializer.java:427) at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize (BeanDeserializer.java:119) at com.fasterxml.jackson.databind.deser.std.MapDeserializer._readAndBindStringMap (MapDeserializer.java: 429) at com.fasterxml.jackson.databind.deser.std.MapDeserializer.deserialize (MapDeserializer.java:310) at com.fasterxml.jackson.databind.deser.std.MapDeserializer.deserialize (MapDeserializer.java:26) at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose (ObjectMapper.java:2577) на com.fasterxml.jackson.databind.ObjectMapper.readValue (ObjectMapper.java:1817) в Driver $ 1.Run (Driver.java:140)