java - XStream : any way to convert xml to map, preserving types based off xsd? -


i found plenty of examples converting xml map need preserve types of values based on info in xsd, want map object string, date, integer etc... based on xsd says.

any way this?

my current approach: (which string values)

public class myconverter implements converter {      public boolean canconvert(class clazz) {          return abstractmap.class.isassignablefrom(clazz);     }      public void marshal(object value, hierarchicalstreamwriter writer, marshallingcontext context) {          abstractmap map = (abstractmap) value;         (object obj : map.entryset()) {             map.entry entry = (map.entry) obj;             writer.startnode(entry.getkey().tostring());             object val = entry.getvalue();             if ( null != val ) {                 writer.setvalue(val.tostring());             }             writer.endnode();         }     }      public object unmarshal(hierarchicalstreamreader reader, unmarshallingcontext context) {          map<string, object> map = new hashmap<string, object>();          while (reader.hasmorechildren()) {             reader.movedown();              string key = reader.getnodename();              string value = reader.getvalue();             map.put(key, value);              reader.moveup();         }          return map;     }  } 


Comments

Popular posts from this blog

inversion of control - Autofac named registration constructor injection -

verilog - Systemverilog dynamic casting issues -

ios - Change Storyboard View using Seague -