2010-12-08 34 views
0

J'utilise XStream pour sérialiser des objets Java en XML. Est-il possible de personnaliser XStream de sorte que lorsqu'il sérialise un objet, il insère un attribut dans l'élément XML racine?Ajouter un attribut lors de la sérialisation d'un objet avec XStream

Disons que je

class A{ 
int foo = 1; 
} 

Je veux XStream sérialiser cas de A à ressembler à:

<A type="text/xml"> 
<foo>1</foo> 
</A> 

Lorsque le texte d'attribut/xml est automatiquement ajouté à l'élément racine.

Mon cas d'utilisation est la sérialisation de mon objet java et son insertion comme élément de contenu dans les documents d'entrée Atom. Le résultat final devrait ressembler à:

<feed> 
<content type="text/xml"> 
<foo>1</foo> 
</content> 
</feed> 

Je n'ai pas besoin d'être capable d'unmarshall l'alimentation. J'ai besoin d'une solution générique qui soit agnostique à la classe de l'objet que je sérialise. Puis-je réaliser ceci avec XStream?

Répondre

1

Les seules méthodes sont les méthodes XStream.useAttributeFor(...). Cela vous obligerait à configurer XStream pour chaque type d'objet que vous utilisez, donc pas agnostique. Donc je ne pense pas que XStream soit l'outil dont vous avez besoin.