Invio/ricezione di una classe personalizzata da un server ad Android, la classe è come;Android che utilizza MSGPack Core e Jackson Mapper - decodifica la variabile di classe di tipo sconosciuto
import org.msgpack.value.Value;
public class myClass {
public String status;
public Value data;
}
Il problema è che ottengo sempre l'errore;
com.fasterxml.jackson.databind.JsonMappingException: Can not construct instance of org.msgpack.value.Value, problem: abstract types either need to be mapped to concrete types, have custom deserializer, or be instantiated with additional type information
at [Source: [email protected]; line: -1, column: 100] (through reference chain:xxx.xxxxxxxxxx.xxx.xxxxxx.myClass["data"]
Se cambio la variabile "dati" a dire MAP<String, String> data
allora funziona bene, però, i dati sono di un tipo sconosciuto! (beh normalmente HashMap o Array possono essere una stringa, non un'altra classe).
MessagePackFactory factory = new MessagePackFactory();
ObjectMapper mapper = new ObjectMapper(factory);
myClass response = mapper.readValue(inputStream, myClass.class);
Come specificare un tipo sconosciuto?
Perché ora non ho una bella funzione data.getInteger. –
Stavo per suggerire che, buono hai risolto –