You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by Dale Newfield <Da...@Newfield.org> on 2008/01/28 19:20:43 UTC
Re: [struts] tag writers resources?
Joachim Ansorg wrote:
> writing a simple Struts2 tag is not that difficult.
A Tag is simply a java interface:
http://java.sun.com/javaee/5/docs/api/javax/servlet/jsp/tagext/Tag.html
The life cycle of a tag is discussed in that javadoc.
There are a number of classes that make implementing your own pretty
straight forward. You'll probably be interested in "BodyTagSupport".
-Dale
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: [struts] tag writers resources?
Posted by Joachim Ansorg <ja...@ksi.gr>.
Dale,
this is useful information for me. Thanks for pointing this out.
I'll make use of this class, I think.
Joachim
> P.P.S: If your question is really "how do i evaluate tag arguments
> that are really ognl expressions, then TagUtils.getStack() is probably
> what you're looking for:
> http://struts.apache.org/2.x/struts2-core/apidocs/org/apache/struts2/views/jsp/TagUtils.html
>
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: [struts] tag writers resources?
Posted by Dale Newfield <Da...@Newfield.org>.
Darren James wrote:
> What I was more interested in is some guidelines similar to what
> Joachim posted in writing a "struts2" tag. And by that I mean one of
> those generic, technology independent beasts that can be used in
> Freemarker and Velocity as well as JSP.
I don't know how one writes freemarker tags or velocity tags. I haven't
studied Joachim's example in detail, but it didn't appear to be
answering your question. It appeared to me that it was an example of
"how to write a tag that is implemented by freemarker" rather than "how
to write a tag that is callable from freemarker".
If you're going to have a theme system, and want to be able to swap out
templates at will, this is a reasonable solution. If you just want a
standard tag, I see no reason to call on a templating system inside the tag.
You should also be aware that the simplest way to implement a
templatable tag (using jsp) is using a .tag file and a tagdir. No java
code required.
-Dale
P.S.: Potentially useful pages if you need to call this tag from
freemarker or velocity:
http://freemarker.org/docs/dgui_misc_userdefdir.html
http://velocity.apache.org/engine/releases/velocity-1.5/user-guide.html#velocimacros
P.P.S: If your question is really "how do i evaluate tag arguments that
are really ognl expressions, then TagUtils.getStack() is probably what
you're looking for:
http://struts.apache.org/2.x/struts2-core/apidocs/org/apache/struts2/views/jsp/TagUtils.html
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org
Re: [struts] tag writers resources?
Posted by Darren James <jd...@netflix.com>.
Hi Dale,
Yes, i'm familiar with writing JSP tags, although it's been quite
some time since i've done so. It took me about 1/2 an hour to
dust off the cobwebs and write a JSP tag extending BodyTagSupport
that did what I wanted it to do.
What I was more interested in is some guidelines similar to what Joachim
posted in writing a "struts2" tag. And by that I mean one of those generic,
technology independent beasts that can be used in Freemarker and Velocity
as well as JSP.
thanks,
- Darren.
Dale Newfield wrote:
>
> Joachim Ansorg wrote:
> > writing a simple Struts2 tag is not that difficult.
>
> A Tag is simply a java interface:
> http://java.sun.com/javaee/5/docs/api/javax/servlet/jsp/tagext/Tag.html
>
> The life cycle of a tag is discussed in that javadoc.
>
> There are a number of classes that make implementing your own pretty
> straight forward. You'll probably be interested in "BodyTagSupport".
>
> -Dale
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
> For additional commands, e-mail: user-help@struts.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org