Спецификация Java Server Pages 1.2


JSP.10.5.9 VariableInfo - часть 2


Результатом вызова getVariableInfo является массив объектов VariableInfo. Каждый такой объект описывает переменную скриптинга, предоставляя её имя, тип, указывая, является ли переменная новой или нет, и какова её область видимости. Область видимости лучше видна на рисунке:


Спецификация JSP 1.2 определяет интерпретацию трёх значений:

  • NESTED, если переменная скриптинга доступна между начальным и конечным тэгами акции, которая определяет её.

  • AT_BEGIN, если переменная скриптинга доступна из начального тэга акции, которая определяет её, до достижения предела видимости.

  • AT_END, если переменная скриптинга доступна после конечного тэга акции, которая определяет её, до достижения предела видимости.

Значение области видимости переменной предполагает, какие методы влияют на значение и, следовательно, где нужна синхронизация:

  • для NESTED, после doInitBody и doAfterBody для обработчика тэга, реализующего BodyTag, и после doStartTag - в противном случае.

  • для AT_BEGIN, после doInitBody, doAfterBody и doEndTag для обработчика тэга, реализующего BodyTag, и doStartTag и doEndTag - в противном случае.

  • для AT_END, после метода doEndTag.

Информация о Переменной в TLD

Информация переменной скриптинга может быть также непосредственно кодирована для большинства случаев в Tag Library Descriptor путём использования субэлемента <variable> элемента <tag>. См. спецификацию JSP.

JSP.10.5.9.36 Поля

public static final int AT_BEGIN
  Информация области видимости о том, что переменная скриптинга видна после начального тэга.


public static final int AT_END

  Информация области видимости о том, что переменная скриптинга видна после конечного тэга.


public static final int NESTED
  Информация области видимости о том, что переменная скриптинга видна только между начальным/конечным тэгами.


JSP.10.5.9.37 Конструкторы


public VariableInfo(java.lang.String varName, java.lang.String className, boolean declare, int scope)


Конструктор. Эти объекты могут быть созданы (на этапе трансляции) экземплярами TagExtraInfo.


Параметры:


id - имя переменной скриптинга.

className - имя переменной скриптинга (наверное, класса??).

declare - если true, это новая переменная (в некоторых языках это требует объявления).

scope - обозначение лексической области видимости переменной.

JSP.10.5.9.38 Методы


public java.lang.String getClassName()

public boolean getDeclare()

public int getScope()

public java.lang.String getVarName()




Начало  Назад  Вперед



Книжный магазин