>>>>> "James" == James Turner <[EMAIL PROTECTED]> writes:

    James> On Sat, 4 Jan 2003, Martin Cooper wrote:
    >> If you want to do this, I'd rather see it happen in the html-el taglib
    >> than the regular html taglib. Struts-EL already depends on 
    >> JSTL, and is
    >> designed to work in cooperation with it, so it's a much more 
    >> natural fit
    >> than trying to sneak JSTL functionality into the regular tags.

    James> I mildly disagree.  EL is to allow struts HTML tags to use EL syntax.
    James> This deals with letting the standard tags find JSTL looping constructs.
    James> As is, you can "*almost* entirely eliminate all the Struts tags except
    James> for the HTML tags in favor of JSTL substitutes, since only the HTML tags
    James> deal with things like actions.  By implementing this, we can eliminate
    James> having to use the logic taglibs at all.  And the change is pretty darn
    James> innocuous, here's the revisted code from BaseHandlerTag, which works
    James> very nicely.  Note that I'm not even referencing org.apache stuff.  And
    James> the JSTL stuff is only ever invoked if it fails to find the Iterate tag.

    James> One thing I'm considering is caching the classes and methods so that the
    James> reflection doesn't need to happen on every invokation.

Sigh.  The balance of architectural purity with convenience.  It looks like
what you've implemented is about the best you can do (you should implement
reflection object caching, as you mention).  It directly pollutes the Struts
code with references to the JSTL, albeit not at compile time.  Is that a
problem?  Who knows?

Can anyone envision any other situations in the Struts code where indirect
references to the JSTL would be convenient?  That, at least, could give us some
additional perspective on this.

-- 
===================================================================
David M. Karr          ; Java/J2EE/XML/Unix/C++
[EMAIL PROTECTED]   ; SCJP; SCWCD




--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to