Java EE6> Упаковка фасетов JSF (xhtml) и ManagedBeans как JAR - PullRequest
9 голосов
/ 24 мая 2011

Можно ли упаковать фасетки JSF и ManagedBeans в файл JAR? Чтобы мы могли использовать эту комбинацию кода и пользовательского интерфейса в различных проектах war / ear?

Я не говорю о компонентах JSF!

Если да - можете ли вы указать мне на учебник или сообщение в блоге

Мне нужны подробности о структуре Jar и дополнительные файлы, необходимые в Jar?

Спасибо Макс

1 Ответ

16 голосов
/ 24 мая 2011

Да, это определенно возможно, при условии, что вы используете JSF 2.0, часть Java EE 6.

Что касается управляемых bean-компонентов и других классов JSF, таких как валидаторы, преобразователи и т. Д., Просто аннотируйте их@ManagedBean, @FacesValidator, @FacesConverter и т. Д. И упакуйте их в JAR обычным способом.Вам нужно только предоставить JSF 2.0-совместимый файл /META-INF/faces-config.xml в JAR.

<?xml version="1.0" encoding="UTF-8"?>
<faces-config
    xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
    version="2.0">
</faces-config>

Таким образом, JSF будет запускаться для сканирования классов в JAR на предмет конкретных аннотаций JSF.В качестве альтернативы вы также можете просто зарегистрировать их в JAR faces-config.xml пути JSF 1.x.

Что касается ресурсов Facelets, просто поместите их в папку /META-INF/resources JAR.Он будет обрабатываться так же, как общедоступный веб-контент WAR.

См. Также:

...