On 9/29/06, tm jee <[EMAIL PROTECTED]> wrote:
Its doable I guess.

 If we have an Expression parser / converter like Alex pointed out, we could 
have a standard syntax, but it would be more complicated to implement.

 Without an Expression parser / converter, it'd likely to get users confused as 
it depends on what implementation is being used.


This would be indeed a possible drawback, not to mention the confusion
that will arise from the forum posts:

[future-quote]
Q: I have the following in my JSP and it is not working:

<ww:property value="$tralala" />

A: Oh no, you need to write it ${tralala}

A: No, that's not true: you need to write it %{tralala}

A: by the way what expression language are you using?
[/future-quote]

 Either case, I think we should stick with a standard supported implementation 
i guess. Personally, I think that Ognl is still the most powerfull expression 
language. :-)

 Btw, is Ognl so slow? I think there's some caching done to the expression 
evaluation, is that not sufficient to make the performance acceptable as well?


AFAIR, considering that the expressions are already cached (which
represents an improvement on the performance), the next problem is the
value manipulation which is not so performant (though I haven't looked
so deep to suggest some optimizations)

./alex
--
.w( the_mindstorm )p.

 rgds


----- Original Message ----
From: Alexandru Popescu <[EMAIL PROTECTED]>
To: Struts Developers List <dev@struts.apache.org>
Sent: Friday, 29 September, 2006 3:38:45 PM
Subject: Re: Abstracting Ognl from XWork and Struts 2?

On 9/29/06, Don Brown <[EMAIL PROTECTED]> wrote:
> I've been toying with this idea of severing XWork and Struts 2's strict
> dependency to OGNL.  The goal is not necessary to remove OGNL outright,
> but to make it possible to replace it with another expression language.
> I'm happy with OGNL right now, however a couple things - its slow,
> mostly unsupported, doesn't have tool support, and did I mention slow? -
> inspire me to want to start to wean Struts off of it.
>
> How would we do it?
>  1. Pull out a ValueStack interface from OgnlValueStack
>  2. Create an abstract factory, ValueStackFactory, to create the ValueStack
>  3. Pull out an interface from OgnlUtils and create a factory for it
>  4. Replace/abstract the custom type conversion stuff
>
> I've done 1 and 2, compiling and tests passing.  #3 seems pretty easy,
> but the big question mark is #4.  Also, I'd imagine things like our tags
> are tied to the OGNL grammer, which might be interesting.
>
> Again, my goal isn't to remove it completely, but just to make it
> possible to swap it out sometime in the future with JEXL, JSP EL, custom
> OGNL (like Wicket and Stripes have done), WW 1 EL, or BeanUtils EL.  The
> last two might be interesting to assist in migration situations.
>
> What does some of the Webwork veterans think? Is this doable?
>

IMO, this is doable. But I think it may require yet another
abstraction: an expression converter, as the engines you are
mentioning are using different types of syntax. Or, if this is
something that comes in the XValueStack implementation than I guess it
may work too.

./alex
--
.w( the_mindstorm )p.

> Don
>
> ---------------------------------------------------------------------
> 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]

Reply via email to