Создание документации для составных компонентов JSF 2

Я хочу создать документацию для пользовательской библиотеки составных компонентов JSF 2. Компонентные компоненты не ссылаются ни на один файл faces-config.xml, но файлы .xhtml для составных компонентов хранятся в ресурсах META-INF/и используют новый тег: интерфейс для определения интерфейса.

Для библиотек тегов JSP документация может быть сгенерирована с помощью https://taglibrarydoc.dev.java.net/, и мне интересно, есть ли что-то подобное для моего JSF 2 библиотека составных компонентов.

Ответы

Ответ 1

Вы можете использовать OmniFaces Vdldoc для создания документации из тэгов <cc:interface> (или документации в файлах taglib.xml).

Скажите, что ваши составные компоненты находятся в папке /META-INF/resources/myLib. Тогда вам понадобится myLib.taglib.xml файл в папке META-INF следующим образом:

<facelet-taglib>
    <description>Your description</description>
    <namespace>http://example.com/myLib</namespace>
    <short-name>my</short-name>
    <composite-library-name>myLib</composite-library-name>
</facelet-taglib>

(Для более полного примера просмотрите этот вопрос)

Теперь вы можете использовать Vdldoc для создания вашей документации:

java -jar vdldoc-2.1.jar myLib.taglib.xml

Update: Если ваш проект использует maven, теперь можно vdldoc-maven-plugin легко интегрировать его в свою сборку. В основном именно у него на <reporting> -раздел вашего pom.xml:

<reporting>
  <plugins>
    <plugin>
      <groupId>com.github.matinh.vdldoc</groupId>
      <artifactId>vdldoc-maven-plugin</artifactId>
      <version>1.0-beta-1</version>
    </plugin>
  </plugins>
</reporting>

И запустите mvn site, чтобы создать документацию. Дополнительную информацию см. на домашней странице плагина.