Javax.servlet.jsp.tagext Интерфейс IterationTag
Все Известные Субинтерейсы:
Все Известные Реализующие Классы:
public abstract interface IterationTagextends
Интерфейс IterationTag расширяет Tag, определяя один дополнительный метод, управляющий повторяющимися вычислениями тела.
Обработчик тэга, реализующий IterationTag, рассматривается как обработчик, реализующий Tag, с учётом методов doStartTag() и doEndTag(). IterationTag предоставляет новый метод: doAfterBody().
Метод doAfterBody() вызывается после каждого обсчёта тела для управления повторными вычислениями тела. Если doAfterBody() возвращает IterationTag.EVAL_BODY_AGAIN, то тело будет вычисляться ещё раз.
Если doAfterBody() возвращает Tag.SKIP_BODY, тело будет пропущено, и вместо этого будет вычислен doEndTag().
Свойства
Нет новых свойств, дополняющих свойства Tag'а.
Методы
Есть один новый метод: doAfterBody().
Жизненный цикл
Детали жизненного цикла показаны на диаграмме. Исключения, вызываемые в процессе вычисления doStartTag(), BODY и doAfterBody() прерывают выполнение и помещаются на верх стэка, если только обработчик тэга не реализует интерфейс TryCatchFinally; см. детали об этом интерфейсе.
Пустая и Непустая Акция
Если TagLibraryDescriptor-файл указывает, что акция всегда обязана иметь пустую акцию, через вхождение <body-content> - "empty", то метод doStartTag() обязан возвратить SKIP_BODY.
Иначе, метод doStartTag() может возвратить SKIP_BODY или EVAL_BODY_INCLUDE.
Если возвращено SKIP_BODY, тело не вычисляется и вызывается doEndTag().
Если возвращено EVAL_BODY_INCLUDE, тело вычисляется и "передаётся" текущему out, затем вызывается doAfterBody() и, после 0 или более итераций, вызывается doEndTag().
Поле. Резюме. | |
staticint | Запрос на вычисление тела. |
Поля, унаследованные из класса javax.servlet.jsp.tagext. |
, , , |
Метод. Резюме. | |
int | () Производит (повторное) вычисление тела. |
Методы, унаследованные из интерфейса javax.servlet.jsp.tagext. |
, , , , , |
Поле. Детали. |