javax.servlet.jsp.tagext

Interface SimpleTag

  • All Superinterfaces:
    JspTag
    All Known Implementing Classes:
    SimpleTagSupport

    public interface SimpleTag
    extends JspTag
    Interface for defining Simple Tag Handlers.

    Simple Tag Handlers differ from Classic Tag Handlers in that instead of supporting doStartTag() and doEndTag(), the SimpleTag interface provides a simple doTag() method, which is called once and only once for any given tag invocation. All tag logic, iteration, body evaluations, etc. are to be performed in this single method. Thus, simple tag handlers have the equivalent power of BodyTag, but with a much simpler lifecycle and interface.

    To support body content, the setJspBody() method is provided. The container invokes the setJspBody() method with a JspFragment object encapsulating the body of the tag. The tag handler implementation can call invoke() on that fragment to evaluate the body as many times as it needs.

    A SimpleTag handler must have a public no-args constructor. Most SimpleTag handlers should extend SimpleTagSupport.

    Lifecycle

    The following is a non-normative, brief overview of the SimpleTag lifecycle. Refer to the JSP Specification for details.

    1. A new tag handler instance is created each time by the container by calling the provided zero-args constructor. Unlike classic tag handlers, simple tag handlers are never cached and reused by the JSP container.
    2. The setJspContext() and setParent() methods are called by the container. The setParent() method is only called if the element is nested within another tag invocation.
    3. The setters for each attribute defined for this tag are called by the container.
    4. If a body exists, the setJspBody() method is called by the container to set the body of this tag, as a JspFragment. If the action element is empty in the page, this method is not called at all.
    5. The doTag() method is called by the container. All tag logic, iteration, body evaluations, etc. occur in this method.
    6. The doTag() method returns and all variables are synchronized.
    Since:
    JSP 2.0
    See Also:
    SimpleTagSupport
    • Method Detail

      • doTag

        void doTag()
            throws JspException,
                   IOException
        Called by the container to invoke this tag. The implementation of this method is provided by the tag library developer, and handles all tag processing, body iteration, etc.

        The JSP container will resynchronize any AT_BEGIN and AT_END variables (defined by the associated tag file, TagExtraInfo, or TLD) after the invocation of doTag().

        Throws:
        JspException - If an error occurred while processing this tag.
        SkipPageException - If the page that (either directly or indirectly) invoked this tag is to cease evaluation. A Simple Tag Handler generated from a tag file must throw this exception if an invoked Classic Tag Handler returned SKIP_PAGE or if an invoked Simple Tag Handler threw SkipPageException or if an invoked Jsp Fragment threw a SkipPageException.
        IOException - If there was an error writing to the output stream.
      • setParent

        void setParent(JspTag parent)
        Sets the parent of this tag, for collaboration purposes.

        The container invokes this method only if this tag invocation is nested within another tag invocation.

        Parameters:
        parent - the tag that encloses this tag
      • getParent

        JspTag getParent()
        Returns the parent of this tag, for collaboration purposes.
        Returns:
        the parent of this tag
      • setJspContext

        void setJspContext(JspContext pc)
        Called by the container to provide this tag handler with the JspContext for this invocation. An implementation should save this value.
        Parameters:
        pc - the page context for this invocation
        See Also:
        Tag.setPageContext(javax.servlet.jsp.PageContext)
      • setJspBody

        void setJspBody(JspFragment jspBody)
        Provides the body of this tag as a JspFragment object, able to be invoked zero or more times by the tag handler.

        This method is invoked by the JSP page implementation object prior to doTag(). If the action element is empty in the page, this method is not called at all.

        Parameters:
        jspBody - The fragment encapsulating the body of this tag.

Traduction non disponible

Les API Java ne sont pas encore traduites en français sur l'infobrol. Seule la version anglaise est disponible pour l'instant.

Version en cache

21/08/2025 18:34:01 Cette version de la page est en cache (à la date du 21/08/2025 18:34:01) afin d'accélérer le traitement.
Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la version plus récente de la page.

Document créé le 24/12/2007, dernière modification le 18/08/2025
Source du document imprimé : https://www.gaudry.be/java-api-javaee-rf-javax/servlet/jsp/tagext/simpletag.html

L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.

Références

  1. Consulter le document html Langue du document :fr Manuel PHP : https://docs.oracle.com, SimpleTag

Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.