Go for it. I didn't include the license out of laziness ;) > -----Original Message----- > From: robert burrell donkin > [mailto:[EMAIL PROTECTED]] > 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:[EMAIL PROTECTED]] > >> Sent: Saturday, December 14, 2002 7:50 PM > >> To: [EMAIL PROTECTED] > >> 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:[EMAIL PROTECTED]> > >> For additional commands, e-mail: > >> <mailto:[EMAIL PROTECTED]> > >> > > -- > > To unsubscribe, e-mail: > <mailto:[EMAIL PROTECTED]. > > org> > > For additional commands, e-mail: > <mailto:[EMAIL PROTECTED]. > > org> > > > -- > To unsubscribe, e-mail: > <mailto:[EMAIL PROTECTED]> > For additional commands, e-mail: > <mailto:[EMAIL PROTECTED]> >
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>