<%-- mycustom.tag Valid file extensios are .tag and .tagx An empty files is valid custom tag, everything is optional Can access all implicit JSP objects like request etc tag, jsp:doBody and jsp:invoke valid in Custom tags only code fragments, fragment set by jsp:doBody page directive not allowed --%> <%-- for each attribute created page scope attribute --%> <%@ attribute name="car" required="true" rtexprvalue="true" %> <%-- No scripts allowed in body content body-content values tagdependant -- treat body content as plain text empty scriptless -- default (no <% %>) --%> <%@ tag body-content="tagdependent" %> <%-- calling JSP can do ${tagfoo} --%> <%@ variable name-given="tagfoo"%> <% getJspContext().setAttribute("tagfoo", "tagbar"); %> In mycustom.tag ${car} is a great car
In mycustom.tag using jsp:doBody