The other two tag features I like are:
(a) being able to define tags in a separate file (in JSP 2.0). This could
be done with Velocimacros in Velocity, if only the system supported a
"request" type scope instead of "page" only.
(b) supporting nexted tags. I think of DisplayTag and how you can specify
column info as subtags within the overall display table tag.
On 3/14/06, Nathan Bubna <[EMAIL PROTECTED]> wrote:
>
> On 3/13/06, Serge Knystautas <[EMAIL PROTECTED]> wrote:
> > On 3/3/06, Nathan Bubna <[EMAIL PROTECTED]> wrote:
> > > yeah, i'm interested in this stuff. in what little free time i have
> > > these days, i've been half-heartedly fussing around with sprucing up
> > > Veltag and adding tools support. since we've been using jsp at work a
> > > lot more lately (much to my irritation), i've got increasing interest
> > > in integrating Velocity and JSP in both directions. one of the
> > > reasons we're using jsp more is because of a few tags we need.
> >
> > Nathan,
> >
> > So, I've got a page faker page context and have velocity able to
> > invoke a tag. The basics are there, but I have questions I wanted to
> > bounce off of you:
> >
> > 1. I don't see how I can use tags with body content. Freemarker
> > syntactally supports tag invocations similar to a foreach loop, but
> > without changing velocity's syntax, I can't see any way to provide
> > similar capabilities. Do you have any ideas on this?
>
> i think i'd have to see some of the code before i can suggest many
> ideas. Velocity does support custom directives that take body
> content. i think WebWork took this route when creating their tag
> support for Velocity.
>
> > 2. Do you have any ideas on syntax for how to access a tag invoker?
>
> very tough call. it feels like there are only three options:
>
> 1) something along the lines of what webwork did, which i think was
> kinda like this:
>
> #invokeTag( 'myTag' "bar=$foo&foo=$bar" ) here's the body $stuff #end
>
> i'm sure i don't have that exactly, but you can see that the ugly part
> is specifying tag attributes as one string that later has to be
> parsed.
>
> 2) do some fancy veltools-ish syntax like:
>
> $tag.myTag.attribute('bar', $foo).attribute('foo',
> $bar).body("here's the body $stuff")
>
> this should be more robust and flexible. you might also be able to do
> stuff like:
>
> #set( $myTag = $tag.myTag )
> #set( $myTag.bar = $foo )
> #set( $myTag.foo = $bar )
> #set( $myTag.body = "here's the body $stuff" )
> $myTag
>
> in fact, i'm pretty sure i could pretty easily create a single tool
> that could handle both of the above syntaxes. the catch in both,
> however, is setting a multi-line body. in Velocity 1.4, this would
> not be possible. in Velocity 1.5, multi-line string literals and #set
> statements should work (haven't actually tried that recently), so that
> would get better:
>
> #set( $myTag.body =
> "here's the first body $stuff
> and here is the $rest" )
>
> 3) change Velocity syntax to accomodate things:
>
> #myTag( bar=$foo, foo=$bar ) here's the body $stuff #end
>
> this might be possible if we can preload tag libraries as either
> custom directives or maybe velocimacros and implement support for
> named parameters into either or both of those. the named parameter
> support is often requested, but no one has stepped up with a patch
> there.
>
> all in all, i think the tool syntax (#2) is probably going to be the
> easiest to implement and the most flexible for the time being.
> eventually #3 would be better though. i'm willing to help as i can on
> the tricks needed for syntax #2, but my time is running short again,
> so i can't promise too much.
>
> > My initial needs do not need to expose ad-hoc tag calling from my
> > velocity templates. I need context objects able to invoke specific
> > tags....to explain a bit more, I'm using http://ajaxtags.sf.net, and I
> > have some business logic beans that expose the ajax portlet and
> > toggle/rating tags. What I expose to the velocity template is just
> > something that says stick the rating element here, and I hardcode the
> > tag attributes. This works for my app but isn't very helpful for
> > everyone else. Any ideas appreciated.
>
> not sure i followed that...
>
> > 3. Do you have any ideas on suitable test cases? Maybe run all JSTL
> > tags without body content?
>
> hmm. i'm thinking most Velocity users won't be interested in most
> JSTL tags as we already have support for most of that stuff in
> Velocity or VelocityTools. DisplayTag is pretty popular, but i don't
> know much about it. there is also the joda-time jsp tags. i'm
> interested in those. :)
>
> > --
> > Serge Knystautas
> > Lokitech >> software . strategy . design >> http://www.lokitech.com
> > p. 301.656.5501
> > e. [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]
>
>
--
Forio Business Simulations
Will Glass-Husain
[EMAIL PROTECTED]
www.forio.com