The JavaServer Pages(tm) (JSP) 2.0 specification provides a portable mechanism for the description of tag libraries.
A JSP tag library contains
- A Tag Library Descriptor
- A number of Tag Files or Tag handler classes defining request-time behavior
- Additional classes and resources used at runtime
- Possibly some additional classes to provide extra translation information
The JSP 2.0 specification and the reference implementation both contain simple and moderately complex examples of actions defined using this mechanism. These are available at JSP's web site, at http://java.sun.com/products/jsp. Some readers may want to consult those to get a quick feel for how the mechanisms work together.
Interface Summary Interface Description BodyTagThe BodyTag interface extends IterationTag by defining additional methods that let a tag handler manipulate the content of evaluating its body. DynamicAttributesFor a tag to declare that it accepts dynamic attributes, it must implement this interface. IterationTagThe IterationTag interface extends Tag by defining one additional method that controls the reevaluation of its body. JspIdConsumerInterface that allows tag handlers to be provided with a unique (within the scope of the web application) ID. JspTagServes as a base class for Tag and SimpleTag. SimpleTagInterface for defining Simple Tag Handlers. TagThe interface of a classic tag handler that does not want to manipulate its body. TryCatchFinallyThe auxiliary interface of a Tag, IterationTag or BodyTag tag handler that wants additional hooks for managing resources.
Class Summary Class Description BodyContentAn encapsulation of the evaluation of the body of an action so it is available to a tag handler. BodyTagSupportA base class for defining tag handlers implementing BodyTag. FunctionInfoInformation for a function in a Tag Library. JspFragmentEncapsulates a portion of JSP code in an object that can be invoked as many times as needed. PageDataTranslation-time information on a JSP page. SimpleTagSupportA base class for defining tag handlers implementing SimpleTag. TagAdapterWraps any SimpleTag and exposes it using a Tag interface. TagAttributeInfoInformation on the attributes of a Tag, available at translation time. TagDataThe (translation-time only) attribute/value information for a tag instance. TagExtraInfoOptional class provided by the tag library author to describe additional translation-time information not described in the TLD. TagFileInfoTag information for a tag file in a Tag Library; This class is instantiated from the Tag Library Descriptor file (TLD) and is available only at translation time. TagInfoTag information for a tag in a Tag Library; This class is instantiated from the Tag Library Descriptor file (TLD) and is available only at translation time. TagLibraryInfoTranslation-time information associated with a taglib directive, and its underlying TLD file. TagLibraryValidatorTranslation-time validator class for a JSP page. TagSupportA base class for defining new tag handlers implementing Tag. TagVariableInfoVariable information for a tag in a Tag Library; This class is instantiated from the Tag Library Descriptor file (TLD) and is available only at translation time. ValidationMessageA validation message from either TagLibraryValidator or TagExtraInfo. VariableInfoInformation on the scripting variables that are created/modified by a tag (at run-time).