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]