Used for declaring custom tag properties.
<%@ tag
[ display-name="name of the tag file | display-name" ]
[ body-content="scriptless|tagdependent|empty" ]
[ dynamic-attributes="page-scoped attribute" ]
[ small-icon="relativeURL" ]
[ large-icon="relativeURL" ]
[ description="text" ]
[ example="text" ]
[ language="java" ]
[ import="{package.class | package.*} , ... " ]
[ pageEncoding="{characterSet | ISO-8859-1}" ]
[ isELIgnored="true|false" ]
%>
<jsp:directive.tag tagDirectiveAttrList /> where tagDirectiveAttrList is the same as the attribute list in the JSP syntax.
<jsp:directive.tag tagDirectiveAttrList />
where tagDirectiveAttrList is the same as the attribute list in the JSP syntax.
This tag accepts an arbitrary number of attributes whose values are colors and outputs a bulleted list of the attributes colored according to the values:
<colored:colored color1="red" color2="yellow" color3="blue"/>
The following code implements the preceding tag. An arbitrary number of attributes whose values are colors are stored in a Map named by the dynamic-attributes attribute of the tag directive. The JSTL forEach tag is used to iterate through the Map and the attribute keys and colored attribute values are printed in a bulleted list.
<%@ tag dynamic-attributes="colorMap"%>
<ul>
<c:forEach var="color" begin="0" items="${colorMap}">
<li>${color.key} = <font color="${color.value}">${color.value}</
font><li>
</c:forEach>
</ul>
The tag directive is similar to the page directive in a JSP page, but applies to tag files instead of JSP pages. As with the page directive, a translation unit can contain more than one instance of the tag directive. All the attributes apply to the complete translation unit. However, there can be only one occurrence of any attribute or value defined by this directive in a given translation unit. With the exception of the import attribute, multiple attribute or value (re)definitions result in a translation error.
display-name="name of the tag file | display-name"
.tag extension.
body-content="scriptless|tagdependent|empty"
empty, tagdependent, or scriptless. A translation error results if JSP or any other value is used. Defaults to scriptless.
dynamic-attributes="page-scoped attribute"
javax.servlet.jsp.tagext.DynamicAttributes interface, and the container must treat the tag as if its corresponding TLD entry contained <dynamic-attributes>true</dynamic-attributes>. The implementation must not reject any attribute names. The value identifies a page-scoped attribute in which to place a Map containing the names and values of the dynamic attributes passed during invocation of the tag. The Map must contain each dynamic attribute name as the key and the dynamic attribute value as the corresponding value. Only dynamic attributes with no URI are to be present in the Map; all other dynamic attributes are ignored. A translation error results if the value of the dynamic-attributes of a tag directive is equal to the value of a name-given of a variable directive or the value of a name attribute of an attribute directive.
small-icon="relativeURL"
large-icon="relativeURL"
description="text"
example="text"
language="java"
import="{package.class | package.*} , ... "
pageEncoding="{characterSet | ISO-8859-1}"
pageEncoding attribute in the page directive. However, there is no corresponding global configuration element in web.xml. The pageEncoding attribute cannot be used in tag files in XML syntax.
isELIgnored="true|false"