Java Platform, Enterprise Edition (Java EE) 8
Учебник по Java EE

Назад Вперёд Содержание

Регистрация кастомного компонента

В дополнение к регистрации кастомных отрисовщиков (как описано в предыдущем разделе), вы также должны зарегистрировать кастомные компоненты, которые обычно связаны с кастомными отрисовщиками. Используйте аннотацию @FacesComponent, как описано в Создание кастомных классов компонентов, или элемент component файла конфигурации приложения.

Вот гипотетический элемент component из файла конфигурации приложения, который регистрирует AreaComponent:

<component>
    <component-type>DemoArea</component-type>
    <component-class>
        dukesbookstore.components.AreaComponent
    </component-class>
    <property>
        <property-name>alt</property-name>
        <property-class>java.lang.String</property-class>
    </property>
    <property>
        <property-name>coords</property-name>
        <property-class>java.lang.String</property-class>
    </property>
    <property>
        <property-name>shape</property-name>
        <property-class>java.lang.String</property-class>
    </property>
</component>

Атрибуты, указанные в теге component, переопределяют любые параметры в аннотации @FacesComponent.

Элемент component-type указывает имя, под которым должен быть зарегистрирован компонент. Другие объекты ссылаются на этот компонент по этому имени. Например, элемент component-type в конфигурации для AreaComponent определяет значение DemoArea, которое соответствует значению, возвращённому методомgetComponentType класса AreaTag.

Элемент component-class указывает полное имя класса компонента. Элементы property определяют свойства компонента и их типы.

Если кастомный компонент может включать фасеты, вы можете настроить фасеты в конфигурации компонента, используя элементы facet, которые разрешены после элементов component-class. Смотрите Регистрация кастомного отрисовщика с помощью инструментария отрисовки для получения дополнительной информации о настройке фасетов.


Назад Вперёд Содержание
Логотип Oracle  Copyright © 2017, Oracle и/или её дочерних компаний. Все права защищены. Версия перевода 1.0.5 (Java EE Tutorial — русскоязычная версия)