Spec-Zone .ru
спецификации, руководства, описания, API


javax.servlet.jsp.tagext
Тег интерфейса

Все Суперинтерфейсы:
JspTag
Все Известные Подынтерфейсы:
BodyTag, IterationTag, LoopTag
Все Известные Классы с реализацией:
AttributeTag, BodyTagSupport, ConditionalTagSupport, ConverterELTag, ConverterTag, FacetTag, LoopTagSupport, TagAdapter, TagSupport, UIComponentBodyTag, UIComponentClassicTagBase, UIComponentELTag, UIComponentTag, ValidatorELTag, ValidatorTag

public interface Tag
расширяет JspTag

Интерфейс классического обработчика тега, который не хочет управлять его телом. Интерфейс Тега определяет основной протокол между обработчиком Тега и реализацией страницы JSP class. Это определяет жизненный цикл и методы, которые будут вызваны в запуске и конечном тэге.

Свойства

Интерфейс Тега определяет метод set и методы метода get для ядра pageContext и родительских свойств.

Объект реализации страницы JSP вызывает setPageContext и setParent, в том порядке, прежде, чем вызвать doStartTag () или doEndTag ().

Методы

Есть два основных действия: doStartTag и doEndTag. Как только все соответствующие свойства были инициализированы, doStartTag и doEndTag методы могут быть вызваны на обработчик тега. Между этими вызовами обработчик тега, как предполагается, содержит состояние, которое должно быть сохранено. После doEndTag вызова обработчик тега доступен для дальнейших вызовов (и это, как ожидают, сохранит свои свойства).

Жизненный цикл

Детали жизненного цикла описываются схемой перехода ниже со следующими комментариями:

Жизненный цикл Детализирует Схему Перехода для Тега

Как только все вызовы на обработчике тега завершаются, метод выпуска вызывается на него. Как только метод выпуска вызывается, все свойства, включая родителя и pageContext, как предполагается, были сброшены к неуказанному значению. Компилятор страницы гарантирует, что выпуск () будет вызван на обработчик Тега прежде, чем обработчик будет выпущен к GC.

Пустое и Непустое Действие

Если файл TagLibraryDescriptor указывает, что у действия должно всегда быть пустое действие, <контент тела> запись "пустых", то doStartTag () метод должен возвратить SKIP_BODY.

Иначе, doStartTag () метод может возвратить SKIP_BODY или EVAL_BODY_INCLUDE.

Если SKIP_BODY возвращается тело, если есть не оценивается.

Если EVAL_BODY_INCLUDE возвращается, тело оценивается и "проходится" к току.


Полевая Сводка
static int EVAL_BODY_INCLUDE
          Оцените тело в существующий поток.
static int EVAL_PAGE
          Продолжайте оценивать страницу.
static int SKIP_BODY
          Пропустите оценку тела.
static int SKIP_PAGE
          Пропустите остальную часть страницы.
 
Сводка метода
 int doEndTag()
          Обработайте конечный тэг для этого экземпляра.
 int doStartTag()
          Обработайте тег запуска для этого экземпляра.
 Тег getParent()
          Получите родителя (самый близкий обработчик тега включения) для этого обработчика тега.
 void release()
          Обращенный обработчик Тега, чтобы выпустить состояние.
 void setPageContext(PageContext pc)
          Установите текущий контекст страницы.
 void setParent(Tag t)
          Установите родителя (самый близкий обработчик тега включения) этого обработчика тега.
 

Полевая Деталь

SKIP_BODY

static final int SKIP_BODY
Пропустите оценку тела. Допустимое возвращаемое значение для doStartTag и doAfterBody.

См. Также:
Постоянные Значения полей

EVAL_BODY_INCLUDE

static final int EVAL_BODY_INCLUDE
Оцените тело в существующий поток. Допустимое возвращаемое значение для doStartTag.

См. Также:
Постоянные Значения полей

SKIP_PAGE

static final int SKIP_PAGE
Пропустите остальную часть страницы. Допустимое возвращаемое значение для doEndTag.

См. Также:
Постоянные Значения полей

EVAL_PAGE

static final int EVAL_PAGE
Продолжайте оценивать страницу. Допустимое возвращаемое значение для doEndTag ().

См. Также:
Постоянные Значения полей
Деталь метода

setPageContext

void setPageContext(PageContext pc)
Установите текущий контекст страницы. Этот метод вызывается объектом реализации страницы JSP до doStartTag ().

Это значение является *not*, сброшенным doEndTag (), и должно быть явно сброшено реализацией страницы, если это изменяется между звонками doStartTag ().

Параметры:
pc - Контекст страницы для этого обработчика тега.

setParent

void setParent(Tag t)
Установите родителя (самый близкий обработчик тега включения) этого обработчика тега. Вызванный реализацией страницы JSP возражают до doStartTag ().

Это значение является *not*, сброшенным doEndTag (), и должно быть явно сброшено реализацией страницы.

Параметры:
t - Родительский тег, или нуль.

getParent

Tag getParent()
Получите родителя (самый близкий обработчик тега включения) для этого обработчика тега.

getParent () метод может использоваться, чтобы переместиться по вложенной структуре обработчика тега во времени выполнения для сотрудничества среди пользовательских действий; например, findAncestorWithClass () метод в TagSupport обеспечивает удобный способ сделать это.

Текущая версия спецификации только обеспечивает один формальный способ указать на заметный тип обработчика тега: его реализация обработчика тега class, описанный в подэлементе тега-class элемента тега. Это расширяется неофициальным способом, разрешая автору библиотеки тега указать в подэлементе описания на заметный тип. Тип должен быть подтипом реализации обработчика тега class или пусто. Это addititional ограничение может быть использовано специализированным контейнером, который знает о той определенной библиотеке тега, как в случае стандартной библиотеки тега JSP.

Возвраты:
текущий родитель, или нуль, если ни один.
См. Также:
TagSupport#findAncestorWithClass

doStartTag

int doStartTag()
               throws JspException
Обработайте тег запуска для этого экземпляра. Этот метод вызывается объектом реализации страницы JSP.

doStartTag метод предполагает, что свойства pageContext и родитель были установлены. Это также предполагает, что любые свойства, представленные как атрибуты, были установлены также. Когда этот метод вызывается, тело еще не было оценено.

Этот метод возвращает Тег. EVAL_BODY_INCLUDE или BodyTag. EVAL_BODY_BUFFERED, чтобы указать, что тело действия должно быть оценено или SKIP_BODY, чтобы указать иначе.

Когда Тег возвращает EVAL_BODY_INCLUDE, результат оценки тела (если кто-либо) включается в ток JspWriter, как это происходит, и затем doEndTag () вызывается.

BodyTag. EVAL_BODY_BUFFERED только допустим, если обработчик тега реализует BodyTag.

Контейнер JSP ресинхронизирует значения любого AT_BEGIN и ВЛОЖЕННЫХ переменных (определенный связанным TagExtraInfo или TLD) после вызова doStartTag (), за исключением реализации обработчика тега BodyTag, doStartTag которого () метод возвращает BodyTag. EVAL_BODY_BUFFERED.

Возвраты:
EVAL_BODY_INCLUDE, если тег хочет обработать тело, SKIP_BODY, если это не хочет обрабатывать это.
Броски:
JspException - если ошибка произошла, обрабатывая этот тег
См. Также:
BodyTag

doEndTag

int doEndTag()
             throws JspException
Обработайте конечный тэг для этого экземпляра. Этот метод вызывается объектом реализации страницы JSP на всех обработчиках Тега.

Этот метод вызовут после возврата из doStartTag. Тело действия может или не могло быть оценено, в зависимости от возвращаемого значения doStartTag.

Если этот метод возвращает EVAL_PAGE, остальная часть страницы продолжает оцениваться. Если этот метод возвращает SKIP_PAGE, остальная часть страницы не оценивается, запрос завершается, и doEndTag (), методы включения тегов не вызываются. Если этот запрос был передан или включен от другой страницы (или Сервлет), только текущая оценка страницы останавливается.

Контейнер JSP ресинхронизирует значения любого AT_BEGIN и переменных AT_END (определенный связанным TagExtraInfo или TLD) после вызова doEndTag ().

Возвраты:
индикация относительно того, продолжать ли оценивать страницу JSP.
Броски:
JspException - если ошибка произошла, обрабатывая этот тег

выпуск

void release()
Обращенный обработчик Тега, чтобы выпустить состояние. Компилятор страницы гарантирует, что объекты реализации страницы JSP вызовут этот метод на все обработчики тега, но могут быть многократные вызовы на doStartTag и doEndTag промежуточный.



Представьте ошибку или функцию

Авторское право © 2009-2011, Oracle Corporation и/или его филиалы. Все права защищены. Использование подвергается срокам действия лицензии.

Сгенерированный на 10-February-2011 12:41

free hit counter