commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tim Anderson" <t...@intalio.com>
Subject RE: [betwixt][BUG?] Destreaming custom collections using Hyphenated/DecapitalizeNameMapper?
Date Sun, 15 Dec 2002 23:13:50 GMT
Go for it. I didn't include the license out of laziness ;)

> -----Original Message-----
> From: robert burrell donkin
> [mailto:robertburrelldonkin@blueyonder.co.uk]
> Sent: Monday, December 16, 2002 3:34 AM
> To: Jakarta Commons Developers List
> Subject: Re: [betwixt][BUG?] Destreaming custom collections using
> Hyphenated/DecapitalizeNameMapper?
>
>
> thanks.
>
> those unit tests demonstrate the problem fine. fancy donating them to the
> apache software foundation (saves me writing equivalent ones)?
>
> (you didn't include the apache license at the top of each so i thought it
> best to check...)
>
> - robert
>
> On Saturday, December 14, 2002, at 10:31 AM, Tim Anderson wrote:
>
> > Attached is a junit test case which reproduces the problem.
> >
> > Regards,
> >
> > Tim
> >
> >> -----Original Message-----
> >> From: Tim Anderson [mailto:tima@intalio.com]
> >> Sent: Saturday, December 14, 2002 7:50 PM
> >> To: commons-dev@jakarta.apache.org
> >> Subject: [betwixt][BUG?] Destreaming custom collections using
> >> Hyphenated/DecapitalizeNameMapper?
> >>
> >>
> >> Hi people,
> >>     I am trying to destream some XML using betwixt into a
> class structure
> >> which looks like:
> >>
> >> public class Foos {
> >>     // manages a collection of Foo
> >>     public void addFoo(Foo foo) { ... }
> >>     public Iterator getFoos() { .... }
> >> }
> >>
> >> public class Foo {
> >>     // ...
> >>     public void setValue(String value) { ... }
> >>     public String getValue() { ...}
> >> }
> >>
> >> Using the DefaultNameMapper, this streams as:
> >>
> >> <Foos>
> >>   <foo value="a"/>
> >>   <foo value="b"/>
> >> </Foos>
> >>
> >> and destreams fine. However with the
> Hyphenated/DecapitalizeNameMappers,
> >> it doesn't destream correctly - the addFoo() method is not invoked.
> >> Streamed it looks like:
> >> <foos>
> >>   <foo value="a"/>
> >>   <foo value="b"/>
> >> </foos>
> >>
> >> Looking at the debug trace, the following messages from XMLIntrospector
> >> appear:
> >> ....
> >> Processing child
> ElementDescriptor[qname=foos,pname=foos,class=interface
> >> java.util.Iterator,singular=class Foo,updater=MethodUpdater
> >> [method=public
> >> void Foos.addFoo(Foo)]]
> >>
> >> Creating generic rule for recursive elements
> >> ^^^^^^^^^^^^ problem starts here^^^^^^^^^^^^
> >>
> >> Created bean create rule
> >> Descriptor=ElementDescriptor[qname=foos,pname=foos,class=interface
> >> java.util.Iterator,singular=class Foo,updater=MethodUpdater
> >> [method=public
> >> void Foos.addFoo(org.apache.commons.sql.type.Foo)]]
> >> Class=class Foo Path prefix=*/foos
> >> Ignoring duplicate digester rule for path: */foos rule:
> >> BeanCreateRule [path
> >> prefix=*/foos
> >> descriptor=ElementDescriptor[qname=foos,pname=foos,class=interface
> >> java.util.Iterator, ....
> >>
> >> I'm configuring the introspector using:
> >>
> >>         introspector.setAttributesForPrimitives(true);
> >>         introspector.setWrapCollectionsInElement(false);
> >>         introspector.setElementNameMapper(new
> DecapitalizeNameMapper());
> >>
> >> Any ideas/workarounds?
> >>
> >> Thanks,
> >>
> >> Tim
> >>
> >>
> >> --
> >> To unsubscribe, e-mail:
> >> <mailto:commons-dev-unsubscribe@jakarta.apache.org>
> >> For additional commands, e-mail:
> >> <mailto:commons-dev-help@jakarta.apache.org>
> >>
> >    --
> > To unsubscribe, e-mail:
> <mailto:commons-dev-unsubscribe@jakarta.apache.
> > org>
> > For additional commands, e-mail:
> <mailto:commons-dev-help@jakarta.apache.
> > org>
>
>
> --
> To unsubscribe, e-mail:
> <mailto:commons-dev-unsubscribe@jakarta.apache.org>
> For additional commands, e-mail:
> <mailto:commons-dev-help@jakarta.apache.org>
>


--
To unsubscribe, e-mail:   <mailto:commons-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:commons-dev-help@jakarta.apache.org>


Mime
View raw message