Hi, js wrote:
> trying to create CodeType and child Code classes from this xml with Codes > in alphabetical order based upon <codeValue> You can't. That's not what a FieldKeySorter is for. Such an implementation defines the sequence of the fields (incl. inherited) of a specific type i.e. you can "sort" "codeValue" and "description" for the members of Code.class. However, a SortableFieldKeySorter requires the defined sequence for *all* fields of the type, otherwise it complains with a StreamException. > > <codeType> > <codeTypeValue>AddressType</codeTypeValue> > > - > <file:///C:/myFiles/sustain/documentation/conversion/newDawn/xmlCodeFiles/codes/AddressType.xml#> > <codes> > - > <file:///C:/myFiles/sustain/documentation/conversion/newDawn/xmlCodeFiles/codes/AddressType.xml#> > <code> > <codeValue>B</codeValue> > <description>Business</description> > </code> > > - > <file:///C:/myFiles/sustain/documentation/conversion/newDawn/xmlCodeFiles/codes/AddressType.xml#> > <code> > <codeValue>CON</codeValue> > <description>Confidential Address</description> > </code> > </codes> > </codeType> > > > > CodeType codeType = new CodeType(); > XStream xstream = new XStream(new StaxDriver()); > SortableFieldKeySorter sorter = new SortableFieldKeySorter(); > sorter.registerFieldOrder(Code.class, new String[] { "codeValue" > }); xstream = new XStream(new PureJavaReflectionProvider(new > FieldDictionary(sorter))); > > try { > xstream.alias("codeType", CodeType.class); > xstream.alias("code", Code.class); > codeType = (CodeType)xstream.fromXML(xml.getInputStream()); > } > catch { ... } > > jars: > xstream-1.4.7.jar > xpp3_min-1.1.4c.jar > xmlpull-1.1.3.1.jar > > if i comment out: > xstream = new XStream(new PureJavaReflectionProvider(new > FieldDictionary(sorter))); > > it works. > > otherwise, all is null in CodeType > > whats the most basic way to enable sorting in Xstream? Apart from the sequence of fields, XStream does not sort its output. You may apply a stylesheet to perform the sorting in a post-processing step: http://xstream.codehaus.org/manual-tweaking-output.html#Procesing_XSLT Cheers, Jörg --------------------------------------------------------------------- To unsubscribe from this list, please visit: http://xircles.codehaus.org/manage_email