Re: [Simple-support] Question
Brought to you by:
niallg
|
From: Tamás B. <bar...@gm...> - 2012-03-28 07:07:34
|
Hi, And how can I set a custom converter? @ElementMap(entry="parameter", key="name", attribute=true, inline=true, required=false) @Convert(MapConverter.class) protected Map<String, Object> parameters = new HashMap<String, Object>(); Methods of MapConverter aren't called. Tamás On 28 March 2012 06:46, Niall Gallagher <gal...@ya...> wrote: > Hi, > > I would have to take a look at the TreeStrategy to see what is happening. > In the meantime you can always write a custom Converter to handle this > particular map. > > Niall > > --- On *Tue, 27/3/12, Tamás Barta <bar...@gm...>* wrote: > > > From: Tamás Barta <bar...@gm...> > Subject: [Simple-support] Question > To: sim...@li... > Received: Tuesday, 27 March, 2012, 7:07 AM > > Hi, > > I would like to serialize a properties map like this: > > @ElementMap(entry="parameter", key="name", attribute=true, > inline=true, required=false) > protected Map<String, Object> parameters; > > If this map has an Integer or String object then everything is ok. > If I put a String[] object to the map then I got the following exception: > > 03-27 16:01:46.283: java.lang.NullPointerException > 03-27 16:01:46.283: at > org.simpleframework.xml.strategy.TreeStrategy.write(TreeStrategy.java:191) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Source.setOverride(Source.java:394) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Traverser.write(Traverser.java:235) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.CompositeValue.write(CompositeValue.java:189) > 03-27 16:01:46.283: at > > org.simpleframework.xml.core.CompositeInlineMap.write(CompositeInlineMap.java:250) > 03-27 16:01:46.283: at > > org.simpleframework.xml.core.CompositeInlineMap.write(CompositeInlineMap.java:225) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Composite.writeElement(Composite.java:1331) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Composite.writeElement(Composite.java:1314) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Composite.writeUnion(Composite.java:1194) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Composite.writeElements(Composite.java:1165) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Composite.writeSection(Composite.java:1071) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Composite.write(Composite.java:1042) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Composite.write(Composite.java:1019) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Traverser.write(Traverser.java:236) > 03-27 16:01:46.283: at > > org.simpleframework.xml.core.CompositeInlineList.write(CompositeInlineList.java:268) > 03-27 16:01:46.283: at > > org.simpleframework.xml.core.CompositeInlineList.write(CompositeInlineList.java:245) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Composite.writeElement(Composite.java:1331) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Composite.writeElement(Composite.java:1314) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Composite.writeUnion(Composite.java:1194) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Composite.writeElements(Composite.java:1165) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Composite.writeSection(Composite.java:1071) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Composite.write(Composite.java:1042) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Composite.write(Composite.java:1019) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Traverser.write(Traverser.java:236) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Traverser.write(Traverser.java:208) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Traverser.write(Traverser.java:186) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Persister.write(Persister.java:1187) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Persister.write(Persister.java:1169) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Persister.write(Persister.java:1147) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Persister.write(Persister.java:1266) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Persister.write(Persister.java:1248) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Persister.write(Persister.java:1229) > 03-27 16:01:46.283: at > org.simpleframework.xml.core.Persister.write(Persister.java:1208) > > > It seems that the TreeStrategy.writeArray method returns null when try > to call Class<Objecŧ>.getComponentType. > > Is there a solution to serialize a String array or a collection inside > this map? > > Thanks, > Tamas > > > > -- > Tamás > > ----------------------------------- > Check it: http://bartat.hu > > > ------------------------------------------------------------------------------ > This SF email is sponsosred by: > Try Windows Azure free for 90 days Click Here > http://p.sf.net/sfu/sfd2d-msazure > _______________________________________________ > Simple-support mailing list > Sim...@li...<http://mc/compose?to=...@li...> > https://lists.sourceforge.net/lists/listinfo/simple-support > > -- Tamás ----------------------------------- Check it: http://bartat.hu |