commons-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jan Fröhlich <Jan.Froehl...@infomotion.de>
Subject AW: [digester] Multiple paths mapped to one object
Date Wed, 12 Mar 2014 15:02:59 GMT
Hi Simo,

I already did the switch to rules binder and will stay with it.
Thanks for your efforts.

Regards
Jan
-----Ursprüngliche Nachricht-----
Von: simone.tripodi@gmail.com [mailto:simone.tripodi@gmail.com] Im Auftrag von Simone Tripodi
Gesendet: Mittwoch, 12. März 2014 10:37
An: Commons Users List
Betreff: Re: [digester] Multiple paths mapped to one object

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 <Jan.Froehlich@infomotion.de> 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: simone.tripodi@gmail.com [mailto:simone.tripodi@gmail.com] 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 <Jan.Froehlich@infomotion.de>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: simone.tripodi@gmail.com [mailto:simone.tripodi@gmail.com] 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
>> <Jan.Froehlich@infomotion.de>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: user-unsubscribe@commons.apache.org
>> For additional commands, e-mail: user-help@commons.apache.org
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
> For additional commands, e-mail: user-help@commons.apache.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
For additional commands, e-mail: user-help@commons.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@commons.apache.org
For additional commands, e-mail: user-help@commons.apache.org

Mime
View raw message