javax.servlet.jsp.tagext

Class BodyTagSupport

Implemented Interfaces:
BodyTag, Serializable, Tag

public class BodyTagSupport
extends TagSupport
implements BodyTag

Actions in a Tag Library are defined through subclasses of Tag.

Field Summary

protected BodyContent
bodyContent

Fields inherited from class javax.servlet.jsp.tagext.TagSupport

id, pageContext

Fields inherited from interface javax.servlet.jsp.tagext.BodyTag

EVAL_BODY_TAG

Fields inherited from interface javax.servlet.jsp.tagext.Tag

EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE

Constructor Summary

BodyTagSupport()
Default constructor, all subclasses are required to only define a public constructor with the same signature, and to call the superclass constructor.

Method Summary

int
doAfterBody()
Actions after some body has been evaluated.
int
doEndTag()
Process the end tag.
void
doInitBody()
Prepare for evaluation of the body It will be invoked at most once per action invocation.
int
doStartTag()
Process the start tag for this instance.
BodyContent
getBodyContent()
Get current bodyContent
JspWriter
getPreviousOut()
Get surrounding out
void
release()
reset the state of the Tag
void
setBodyContent(BodyContent b)
Prepare for evaluation of the body It will be invoked at most once per action invocation.

Methods inherited from class javax.servlet.jsp.tagext.TagSupport

doEndTag, doStartTag, findAncestorWithClass, getId, getParent, getValue, getValues, release, removeValue, setId, setPageContext, setParent, setValue

Field Details

bodyContent

protected BodyContent bodyContent

Constructor Details

BodyTagSupport

public BodyTagSupport()
Default constructor, all subclasses are required to only define a public constructor with the same signature, and to call the superclass constructor. This constructor is called by the code generated by the JSP translator.

Method Details

doAfterBody

public int doAfterBody()
            throws JspException
Actions after some body has been evaluated. Not invoked in empty tags or in tags returning SKIP_BODY in doStartTag() This method is invoked after every body evaluation. The pair "BODY -- doAfterBody()" is invoked initially if doStartTag() returned EVAL_BODY_TAG, and it is repeated as long as the doAfterBody() evaluation returns EVAL_BODY_TAG

The method re-invocations may be lead to different actions because there might have been some changes to shared state, or because of external computation.

Specified by:
doAfterBody in interface BodyTag


doEndTag

public int doEndTag()
            throws JspException
Process the end tag. This method will be called on all Tag objects. All instance state associated with this instance must be reset. The release() method should be called after this invocation.
Specified by:
doEndTag in interface Tag
Overrides:
doEndTag in interface TagSupport


doInitBody

public void doInitBody()
            throws JspException
Prepare for evaluation of the body It will be invoked at most once per action invocation. Will not be invoked if there is no body evaluation. Frequently it is not redefined by Tag author.
Specified by:
doInitBody in interface BodyTag


doStartTag

public int doStartTag()
            throws JspException
Process the start tag for this instance. The doStartTag() method assumes that all setter methods have been invoked before. When this method is invoked, the body has not yet been invoked.
Specified by:
doStartTag in interface Tag
Overrides:
doStartTag in interface TagSupport


getBodyContent

public BodyContent getBodyContent()
Get current bodyContent


getPreviousOut

public JspWriter getPreviousOut()
Get surrounding out


release

public void release()
reset the state of the Tag
Specified by:
release in interface Tag
Overrides:
release in interface TagSupport


setBodyContent

public void setBodyContent(BodyContent b)
Prepare for evaluation of the body It will be invoked at most once per action invocation. Will not be invoked if there is no body evaluation. Frequently it is not redefined by Tag author.
Specified by:
setBodyContent in interface BodyTag

Parameters:
b - the BodyContent


Copyright © 1999-2000 The Apache Software Foundation. All Rights Reserved.