Estoy usando GSON 1.4 y serializando un objeto con dos genéricos arraylist<myObject>
de la siguiente manera String data = Gson.toJson(object, object.class)
. Cuando desirialize que hago gson.fromJson(json, type);
genéricos deserializantes con gson
tristemente consigo
java.lang.IllegalArgumentException: No se puede establecer java.util.ArrayList campo ... a java.util.LinkedList
¿Por qué es eso? El documento GSON señala que si serializo con el parámetro object.class, admite genéricos. ¿alguna idea? Gracias.
mi clase es:
public class IndicesAndWeightsParams {
public List<IndexParams> indicesParams;
public List<WeightParams> weightsParams;
public IndicesAndWeightsParams() {
indicesParams = new ArrayList<IndexParams>();
weightsParams = new ArrayList<WeightParams>();
}
public IndicesAndWeightsParams(ArrayList<IndexParams> indicesParams, ArrayList<WeightParams> weightsParams) {
this.indicesParams = indicesParams;
this.weightsParams = weightsParams;
}
}
public class IndexParams {
public IndexParams() {
}
public IndexParams(String key, float value, String name) {
this.key = key;
this.value = value;
this.name = name;
}
public String key;
public float value;
public String name;
}
Hola, gracias por la ayuda. Mi objeto no es genérico, sino que contiene dos listas de arreglos. ¿cómo debería usar el tipo?() {} getTrype no funciona :-( –
Jeb
Tipo Tipo = new TypeToken
por cierto:.. Dos ArrayList con dos objetos differnet acabo de cambiar a una lista y la lista –
Jeb
@ user450602: editar el post y añadir código de su objeto y sus listas de arreglos. No quiero adivinar nada. – darioo