Hi Jan, looks like you stumbled in a weird bug that requires more time for me to get it adjusted - can you switch to rules binder ATM until I come up with a fix? TIA, Alles Gute! -Simo http://people.apache.org/~simonetripodi/ http://twitter.com/simonetripodi
On Thu, Mar 6, 2014 at 5:26 PM, Jan Fröhlich <[email protected]> wrote: > Hi Simo, > > I created a small maven project with 2 test cases inside. One works but is > ugly, the other fails but would be great. > As I don't want to spam this mailing list I uploaded it to our webserver as > ZIP file. > > You can download it from > http://www.infomotion.de/download/objectcreate-test.zip > > I didn't comment it at all, but tried to give it speaking names. > Looking forward for your feedback. > > Thank you for your help so far! > > Jan > > -----Ursprüngliche Nachricht----- > Von: [email protected] [mailto:[email protected]] Im Auftrag > von Simone Tripodi > Gesendet: Donnerstag, 6. März 2014 16:43 > An: Commons Users List > Betreff: Re: [digester] Multiple paths mapped to one object > > Hi Jan, > could you submit a testcase, please? > I will have a look at it and get back with a solution ASAP :) Alles Gute, > -Simo > > > http://people.apache.org/~simonetripodi/ > http://twitter.com/simonetripodi > > > On Thu, Mar 6, 2014 at 1:09 PM, Jan Fröhlich > <[email protected]>wrote: > >> Hi Simone, >> >> this is something I already tried. >> First: >> With a single @ObjectCreate for each table it works fine. >> Then: >> Changing only to @ObjectCreate.List - without any other >> modifications I get an error saying that there is no setter Method in >> the table class. >> Second: >> The @SetProperty attribute "pattern" is mandatory. >> >> Maybe this is something version dependent? I use >> <dependency> >> <groupId>org.apache.commons</groupId> >> <artifactId>commons-digester3</artifactId> >> <version>3.2</version> >> </dependency> >> >> Jan >> >> -----Ursprüngliche Nachricht----- >> Von: [email protected] [mailto:[email protected]] Im >> Auftrag von Simone Tripodi >> Gesendet: Donnerstag, 6. März 2014 12:05 >> An: Commons Users List >> Betreff: Re: [digester] Multiple paths mapped to one object >> >> Hi Jan, >> >> there's no kind of magic, just annotate the class fields as: >> >> @ObjectCreate.List(value = { >> @ObjectCreate(pattern = "*/HTABLE"), >> @ObjectCreate(pattern = "*/VTABLE"), >> @ObjectCreate(pattern = "*/XTABLE") >> }) >> public class Table { >> >> @SetProperty // you can omit the 'attributeName' since it is the >> same as in the attribute >> private String name; >> >> @SetProperty(attributeName = "x") >> private Long posX; >> >> @SetProperty(attributeName = "y") >> private Long posY; >> >> @BeanPropertySetter(pattern = "*/rows") >> private Long rows; >> >> } >> >> please let us know if it works! :) >> Alles Gute! >> -Simo >> >> http://people.apache.org/~simonetripodi/ >> http://twitter.com/simonetripodi >> >> >> On Wed, Mar 5, 2014 at 11:55 AM, Jan Fröhlich >> <[email protected]>wrote: >> >> > Hi all, >> > >> > given an XML with something like >> > <REPORT> >> > <XTABLE name="Table1" x="1200" y="2250"> >> > <rows>10</rows> >> > </XTABLE> >> > <VTABLE name="Table2" x="1400" y="2250"> >> > <rows>14</rows> >> > </VTABLE> >> > <HTABLE name="Table3" x="1600" y="2250"> >> > <rows>17</rows> >> > </HTABLE> >> > </REPORT> >> > >> > I would like to map all nodes (XTABLE, VTABLE and HTABLE) to one >> > class Table and set the properties. >> > While learning digester I created a class for each tag, but now I >> > want to improve that. >> > >> > For the class itself the following should work >> > @ObjectCreate.List(value = { >> > @ObjectCreate(pattern = "*/HTABLE"), >> > @ObjectCreate(pattern = "*/VTABLE"), >> > @ObjectCreate(pattern = "*/XTABLE") >> > }) >> > public class Table { >> > private String name; >> > private Long posX; >> > private Long posY; >> > private Long rows; >> > >> > } >> > >> > But how should I annotate the properties as I have to set the >> > pattern attribute to all @SetProperty annotations and the pattern is >> > different for all of them. >> > >> > Any help appreciated. >> > >> > Jan >> > >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [email protected] >> For additional commands, e-mail: [email protected] >> >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
