jakarta ee - Java EE6> 将 JSF facelet (xhtml) 和 ManagedBeans 打包为 JAR



是否可以将JSF facelet和ManagedBean打包到JAR文件中?这样我们就可以在不同的战争/战争项目中使用这种代码和UI组合了?

我不是在说JSF组件!

如果是-你能给我指一个教程或博客文章

我需要关于Jar结构的详细信息以及Jar中需要的其他文件?

感谢Max

是的,这肯定是可能的,假设您使用的是JavaEE6的一部分JSF 2.0。

对于托管bean和其他JSF类(如验证器、转换器等),只需使用@ManagedBean@FacesValidator@FacesConverter等对它们进行注释,并以通常的方式将它们打包到JAR中。您只需要在JAR中提供一个与JSF 2.0兼容的/META-INF/faces-config.xml文件。

<?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特定的注释。或者,您也可以通过JSF1.x的方式在JAR的faces-config.xml中注册它们。

至于Facelets资源,只需将它们放在JAR的/META-INF/resources文件夹中即可。它将以与WAR的公共网络内容相同的方式进行处理。

另请参阅:

  • 将Facelets文件(模板、包含、组合)打包到JAR中

最新更新