Já tive o mesmo problema que você, o xstream não consegue fazer o parse do seu XML para um objeto caso esse objeto não tenha atributos com os mesmos nomes dos nós do seu xml.
A solução que que adotei depois de muita pesquisa foi sobreescrever o método “wrapMapper” do Xstream.
Já tive o mesmo problema que você, o xstream não consegue fazer o parse do seu XML para um objeto caso esse objeto não tenha atributos com os mesmos nomes dos nós do seu xml.
A solução que que adotei depois de muita pesquisa foi sobreescrever o método “wrapMapper” do Xstream.
Basta utilizar o trecho de código abaixo.
XStream xstream = new XStream(new DomDriver()) {
@Override
protected MapperWrapper wrapMapper(MapperWrapper next) {
return new MapperWrapper(next) {
@Override
public boolean shouldSerializeMember(Class definedIn,
String fieldName) {
if (definedIn == Object.class) {
return false;
}
return super.shouldSerializeMember(definedIn, fieldName);
}
};
}
};
Porra, agradeço pelo sua ajuda…
Realmente era exatamente isso que estava procurando…