You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@struts.apache.org by Łukasz Lenart <lu...@googlemail.com> on 2011/07/08 12:15:33 UTC

Re: I am working on extending the iterator tag and I am requesting opinions

Any news on that ?


Regards
-- 
Łukasz
+ 48 606 323 122 http://www.lenart.org.pl/
Warszawa JUG conference - Confitura http://confitura.pl/


2011/6/7 Jason Pyeron <jp...@pdinc.us>:
> Currently the iterator component searched the stack for the iteration target,
> then while iterating it pushes the value to the stack.
>
> In my extension I have support for pre and post traversal of a tree structure.
> The pre and post selectors are OGNL expressions. As such it is needed to have
> the current node in a value stack during resolution of left/pre and right/post
> children for a give node.
>
> The question is begged should it be pushed on for evaluation and then popped off
> after or should it be pushed on before the current value (in between the current
> value and the "action")?
>
> My gut is telling me that push and pop will result in the least surprise for a
> developer using it, as there is no possibility of the node masking an action,
> but this prevents access of the node from inside the iterator except through
> some "status" like option.
>
> -Jason
>
> --
> -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
> -                                                               -
> - Jason Pyeron                      PD Inc. http://www.pdinc.us -
> - Principal Consultant              10 West 24th Street #100    -
> - +1 (443) 269-1555 x333            Baltimore, Maryland 21218   -
> -                                                               -
> -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
> This message is copyright PD Inc, subject to license 20080407P00.
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org


Re: [struts-dev] Re: I am working on extending the iterator tag and I am requesting opinions

Posted by Dave Newton <da...@gmail.com>.
IMO that's too much work for the presentation layer; if someone is
passing nested arrays and expecting the ability to get arbitrary
traversals using OGNL they're barking up the wrong tree.

Dave

On Fri, Jul 8, 2011 at 9:18 AM, Jason Pyeron <jp...@pdinc.us> wrote:
>> -----Original Message-----
>> From: Lukasz Lenart [mailto:lukasz.lenart@googlemail.com]
>> Sent: Friday, July 08, 2011 6:16
>> To: Struts Developers List
>> Subject: [struts-dev] Re: I am working on extending the
>> iterator tag and I am requesting opinions
>>
>> Any news on that ?
>
> Object navigation works nicely, we are using it in production on 2 projects
> right now.
> I am still writing unit tests.
>
> What does not work (because it is ill defined) is navigation on arrays of
> arrays.
>
> Ex: [1,2,3,[4,5],6,[7,[8,9]]]
>
> How should that be navigated? My intended solution is to allow the use of a
> lambda expression in OGNL to "select" nodes to traverse. But I have not been
> able to write a working lambda expression for the above traversal to iterate as
> 1,2,3,4,5,6,7,8,9
>
> When I get that done it will be bulletproof.
>
> -Jason
>
>>
>>
>> Regards
>> --
>> Lukasz
>> + 48 606 323 122 http://www.lenart.org.pl/
>> Warszawa JUG conference - Confitura http://confitura.pl/
>>
>>
>> 2011/6/7 Jason Pyeron <jp...@pdinc.us>:
>> > Currently the iterator component searched the stack for the
>> iteration
>> > target, then while iterating it pushes the value to the stack.
>> >
>> > In my extension I have support for pre and post traversal
>> of a tree structure.
>> > The pre and post selectors are OGNL expressions. As such it
>> is needed
>> > to have the current node in a value stack during resolution of
>> > left/pre and right/post children for a give node.
>> >
>> > The question is begged should it be pushed on for
>> evaluation and then
>> > popped off after or should it be pushed on before the current value
>> > (in between the current value and the "action")?
>> >
>> > My gut is telling me that push and pop will result in the least
>> > surprise for a developer using it, as there is no
>> possibility of the
>> > node masking an action, but this prevents access of the node from
>> > inside the iterator except through some "status" like option.
>> >
>> > -Jason
>> >
>> > --
>> > -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
>> > -                                                               -
>> > - Jason Pyeron                      PD Inc. http://www.pdinc.us -
>> > - Principal Consultant              10 West 24th Street #100    -
>> > - +1 (443) 269-1555 x333            Baltimore, Maryland 21218   -
>> > -                                                               -
>> > -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
>> > This message is copyright PD Inc, subject to license 20080407P00.
>> >
>> >
>> >
>> >
>> ---------------------------------------------------------------------
>> > To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org For
>> > additional commands, e-mail: dev-help@struts.apache.org
>> >
>> >
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org For
>> additional commands, e-mail: dev-help@struts.apache.org
>>
>>
>
>
> --
> -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
> -                                                               -
> - Jason Pyeron                      PD Inc. http://www.pdinc.us -
> - Principal Consultant              10 West 24th Street #100    -
> - +1 (443) 269-1555 x333            Baltimore, Maryland 21218   -
> -                                                               -
> -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
> This message is copyright PD Inc, subject to license 20080407P00.
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
> For additional commands, e-mail: dev-help@struts.apache.org
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org


RE: [struts-dev] Re: I am working on extending the iterator tag and I am requesting opinions

Posted by Jason Pyeron <jp...@pdinc.us>.
> -----Original Message-----
> From: Lukasz Lenart [mailto:lukasz.lenart@googlemail.com] 
> Sent: Friday, July 08, 2011 6:16
> To: Struts Developers List
> Subject: [struts-dev] Re: I am working on extending the 
> iterator tag and I am requesting opinions
> 
> Any news on that ?

Object navigation works nicely, we are using it in production on 2 projects
right now.
I am still writing unit tests.

What does not work (because it is ill defined) is navigation on arrays of
arrays.

Ex: [1,2,3,[4,5],6,[7,[8,9]]]

How should that be navigated? My intended solution is to allow the use of a
lambda expression in OGNL to "select" nodes to traverse. But I have not been
able to write a working lambda expression for the above traversal to iterate as
1,2,3,4,5,6,7,8,9

When I get that done it will be bulletproof.

-Jason

> 
> 
> Regards
> --
> Lukasz
> + 48 606 323 122 http://www.lenart.org.pl/
> Warszawa JUG conference - Confitura http://confitura.pl/
> 
> 
> 2011/6/7 Jason Pyeron <jp...@pdinc.us>:
> > Currently the iterator component searched the stack for the 
> iteration 
> > target, then while iterating it pushes the value to the stack.
> >
> > In my extension I have support for pre and post traversal 
> of a tree structure.
> > The pre and post selectors are OGNL expressions. As such it 
> is needed 
> > to have the current node in a value stack during resolution of 
> > left/pre and right/post children for a give node.
> >
> > The question is begged should it be pushed on for 
> evaluation and then 
> > popped off after or should it be pushed on before the current value 
> > (in between the current value and the "action")?
> >
> > My gut is telling me that push and pop will result in the least 
> > surprise for a developer using it, as there is no 
> possibility of the 
> > node masking an action, but this prevents access of the node from 
> > inside the iterator except through some "status" like option.
> >
> > -Jason
> >
> > --
> > -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
> > -                                                               -
> > - Jason Pyeron                      PD Inc. http://www.pdinc.us -
> > - Principal Consultant              10 West 24th Street #100    -
> > - +1 (443) 269-1555 x333            Baltimore, Maryland 21218   -
> > -                                                               -
> > -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
> > This message is copyright PD Inc, subject to license 20080407P00.
> >
> >
> >
> > 
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org For 
> > additional commands, e-mail: dev-help@struts.apache.org
> >
> >
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org For 
> additional commands, e-mail: dev-help@struts.apache.org
> 
> 


--
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-                                                               -
- Jason Pyeron                      PD Inc. http://www.pdinc.us -
- Principal Consultant              10 West 24th Street #100    -
- +1 (443) 269-1555 x333            Baltimore, Maryland 21218   -
-                                                               -
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
This message is copyright PD Inc, subject to license 20080407P00.

 


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@struts.apache.org
For additional commands, e-mail: dev-help@struts.apache.org