2013-10-25 2 views
0

Я смотрю, как определить пользовательские компоненты в JSF. Согласно учебнику Java EE, любой пользовательский компонент должен быть описан в taglib. Когда я заглядываю в источник PrimeFaces, я не могу найти файл taglib или любой намек, где пространство имен связано и доступны доступные компоненты. Я добавляю primefaces флягу к моим зависимостям, добавивГде находить определение taglib PrimeFaces 4?

xmlns:p="http://primefaces.org/ui 

к пространству имен XML, определяя некоторый primfaces компоненту на моей странице, и он работает ...

Хорошо, но ни я могу найти соответствующий TagLib в исходный или двоичный пакет, ни моя IDE (IntelliJ) не могут найти, где указывается «xmlns: p =» http://primefaces.org/ui ». Поэтому завершение кода также невозможно. (все остальные tagjib mojarra .)

Возможно ли, что PrimeFaces определяет taglib посредством аннотаций непосредственно в классах Java или генерирует ли он его во время выполнения? легко найти UIComponents, в его источнике определяются прямые, но конфигурация taglib, кажется, отсутствует. Я уверен, что просто не знаю, как это работает PrimeFaces, но в javaeetutorial не описывается какая-либо другая возможность, кроме определения ... - taglib.xml

ответ

0

Хорошо, я выяснил, что конфигурация создается через сборку , но загрузка источников не содержит скрипта сборки.

Via GitHub, я нашел свой ответ, он создается в процессе сборки (через мавена)

(https://github.com/primefaces/primefaces/blob/master/pom.xml)

1

Возможно ли, что PrimeFaces является определение TagLib с помощью аннотаций непосредственно в классах Java или он генерирует его во время выполнения? [...] javaeetutorial не описывает какой-либо другой возможности того, чтобы определять ...- taglib.xml

Как PrimeFaces 4 является JSF 2.2 совместима это теоретически могло бы сделать именно это. А именно, в JSF 2.2/Java EE 7 действительно можно определить тег Facelets напрямую через аннотацию. Для получения дополнительной информации об этом см .: http://arjan-tijms.omnifaces.org/p/jsf-22.html#594

Поскольку PrimeFaces 4 по-прежнему совместим с JSF 2.1/2.0, похоже, что они еще не сделали этого, пока вы обнаружили это.

+0

Thx за дополнительной информацией. –