Mike emailed me this idea last night, and I think it's the best yet.

Brilliant solution, Mike.

Lukas

"Mike Jasnowski" <[EMAIL PROTECTED]> wrote in message
news:[EMAIL PROTECTED]
> Going from your example, I'm not sure why you even need to subclass a
Struts
> tag to get the output you described. You should be able to code something
> like this on your JSP:
>
> <lukas:myTag lang="en">
>   <html:file property="formFile" styleClass="FormField"/>
> </lukas:myTag>
>
>
> The tag handling flow would look like (similar to what you proposed
> earlier):
>
>  myTag.doStartTag();
>
>  pageContext.getOut().println("<table><tr><td>");
>
>  *include output of body of custom tag here, which might be Struts tags
> which are invoked.
>
>  myTag.doEndTag();
>
>  pageContext.getOut().println("</td></tr></table>");
>
>
>  Which would evaluate to
>
>
>  <table>
>   <tr>
>    <td>
>     <input type="file" name="formFile" value="" class="FormField">
>    </td>
>   </tr>
>  </table>
>
> All this w/o changing or subclassing a Struts tag, the only Custom tag
work
> is myTag.
>
> HTH,
> Mike
>
> -----Original Message-----
> From: Lukas Bradley [mailto:[EMAIL PROTECTED]
> Sent: Sunday, October 26, 2003 7:34 PM
> To: [EMAIL PROTECTED]
> Cc: [EMAIL PROTECTED]
> Subject: Tags creating Tags
>
>
> Hi all,
>
> Maybe I'm just tired, but the answer to this is not to be found.  I could
me
> making this harder than it is, or something might be right in front of me,
> and I don't see it.
>
> What I want is a custom tag that creates other custom tags.  Here is a
> simple example:
>
> <lukas:myTag lang="en" />
>
> Should produce something like this:
>
> <table>
>   <tr><td>English</td></tr>
>   <tr><td><html:file property="formFile"
styleClass="FormField"/></td></tr>
>    <!-- Imagine a lot more custom tags here -->
> </table>
>
> Which should then evaluate to:
>
> <table>
>   <tr><td>English</td></tr>
>   <tr><td><input type="file" name="formFile" value=""
> class="FormField"></td></tr>
>    <!-- Imagine a lot more custom tags rendering here. -->
> </table>
>
> I've thought about trying to extend BodyTagSupport, return
> EVAL_BODY_BUFFERED in doStartTag(), modify the bodyContent in
doAfterBody(),
> then return EVAL_PAGE() in doEndTag().  However, BodyContent has a
protected
> constructor, and no way to set its content.
>
> I want to maintain the functionality gained from Struts-like custom tags,
> while extracting the creation of them in a super-duper momma tag.  Any
help?
>
> Lukas
>
>
>
>
> ---------------------------------------------------------------------
> 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