Hi Roland I'm afraid sticking with your custom Converter is the best option I see.
On Tue, Aug 28, 2012 at 11:50 PM, Roland Roberts <[email protected]>wrote: > I have a hierarchy of objects that includes things like > > Map<String,my.pkg.Component> componentMap; > > What I would like to have come out for this is > > <component name="fred"> > ...component serialization... > </component> > > What I get with the "usual" annotation set up is > > @XStreamImplicit(itemFieldName="component") > Map<String,my.pkg.Component> componentMap; > > <component> > <string>fred</string> > <my.pkg.Component> > ...component serialization... > </my.pkg.Component> > </component> > > I can almost get what I want by doing something that is probably not > something that was designed :-) > > @XStreamImplicit(itemFieldName="component", keyFieldName="name") > Map<String,my.pkg.Component> componentMap; > > <component> > ...component serialization... > </component> > > However, as you can see, I've completely lost the key at that point. > > I realize that putting the key as an attribute is a problem for > unmarshalling since the key type is lost. In this case, I don't care > because I won't be unmarshalling (really, never). at least never back into > the types from which this output was derived. > > I can, of course, write a custom Converter (and I have one), but I was > hoping I could throw away some code and just use annotations. Is there any > hope of adding support for this type of conversion? I could probably even > live with something that includes fields I don't care about like > > <component key="fred" keyType="string"> > ... > </component> > > That is, forcing the map key to be named "key" and forcibly adding a field > to aid unmarshalling. > > roland > > -- > PGP Key ID: 66 BC 3B CD > Roland B. Roberts, PhD RL > [email protected] 6818 Madeline > [email protected] Brooklyn, NY 11220 > >
