русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Использование классов TagExtraInfo


Дата добавления: 2015-07-09; просмотров: 399; Нарушение авторских прав


Иногда переменные, которые вы хотите сделать доступными из вашего тэга для автора JSP страницы, могут быть немного сложны в определении в статическом TLD файле. Имена переменных могут зависеть от некоторых условий состояния, или вы можете пожелать подтвердить действительность JSP страницы. Например, вы можете пожелать убедиться, что автор JSP страницы не указал некорректных атрибутов или не поместил дочерний тэг в неверный родительский тэг. Для функциональности такого рода применение тэга <variable> в файле дескриптора библиотеки тэга более не адекватно.

В приведенном выше primenumbertag вместо применения тэга <variable> мы могли бы использовать следующее:

<teiclass>cx2.tags.PrimeNumTagExtraInfo</teiclass>


Этот тэг говорит контейнеру, что у вас есть полностью отдельный класс, описывающий ваши атрибуты за вас.

На самом деле все не так плохо, как это звучит, необходимый вам класс очень прост и вам, чаще всего, не нужно перекрывать более одного метода. В случае класса PrimeNumTag вы можете указать класс, называемый PrimeNumTagExtraInfo, в соответствии с приведенной ниже конвенцией и вот такой реализацией:

package cx2.tags;

import javax.servlet.jsp.tagext.TagExtraInfo;

import javax.servlet.jsp.tagext.TagData;

import javax.servlet.jsp.tagext.VariableInfo;

 

public class PrimeNumTagExtraInfo extends TagExtraInfo {

public VariableInfo[] getVariableInfo(TagData data) {

VariableInfo[] vi = new VariableInfo[1];

vi[0] = new VariableInfo("value",

"Integer",

true,

VariableInfo.AT_BEGIN);

return vi;

}

}

Обратите внимание, что класс расширяет класс TagExtraInfo, находящийся в пакете javax.servlet.jsp.tagext. Метод getVariableInfo( ) создает массив объектов VariableInfo, описывающих имя, тип, должна или нет переменная быть декларирована и область видимости переменной. Это все соответствует элементам, перечисленным в тэге <variable>. Массив объектов VariableInfo имеет размер 1 потому, что есть только одна переменная.



Объект TagData используется в качестве параметра для метода getVariableInfo( ), но он разработан для использования в следующих реализациях. Некоторая часть функциональности предназначена для поддержки того, что пока не поддерживается в JSP.



<== предыдущая лекция | следующая лекция ==>
Классы Тэгов | Повторный Обзор Дескриптора Библиотеки


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 1.344 сек.