Olá estou com seguinte duvida como faço para conseguir um json assim:
descricao : valor
isso não é json válido… o que vc quis dizer é isso?
serializando um HashMap<String,String>, vc teria algo assim:
[ ["rafael", "1"], ["eduardo", "2"] ]
se vc quiser algo diferente disso você pode criar um converter pra sua entidade,
daí pode ficar do jeito que vc quer…
se precisar de ajuda pra fazer esse converter me dá um toque
jingle
é preciso realmente fazer um assim :
{"rafael":"1", "eduardo":"2"}
aquele com map não me adiantou…
consegue me da uma mão pra criar o converter?
Lucas_Cavalcanti
acho que isso resolve:
publicclassMeuMapConverterimplementsConverter{@OverridepublicbooleancanConvert(Classclazz){returnMap.class.isAssignableFrom(clazz);}publicvoidmarshal(Objectobj,HierarchicalStreamWriterwriter,MarshallingContextcontext){writer.startNode("map");Map<?,?>map=(Map<?,?>)obj;for(Entry<?,?>entry:map.entrySet()){writer.addAttribute(entry.getKey().toString(),entry.getValue().toString());}writer.endNode();}publicObjectunmarshal(HierarchicalStreamReaderarg0,UnmarshallingContextarg1){returnnull;// não precisa}}
daí vc só precisa registrar esse converter no xstream:
crie uma classe q estende XStreamJSONSerialization
sobrescreva o método getXStream
chame o super.getXStream(), salve numa variável, e chame o registerConverter(new MeuMapConverter()) nela