我有一只耳朵 ( Selene.ear
),其中包含战争 ( SeleneWar.war
)。
当我放入primefaces-5.0.jar
程序Selene.war
集 (in WEB-INF/lib
) 时,使用该功能没有任何问题。无论如何,我是精简部署的粉丝,我曾尝试将 primefaces 设置为 WildFly 模块。
1)在wildfly/modules中,我确实创建了文件夹org/primefaces/main
。在那里我放primefaces-5.0.jar
了以下module.xml
<module xmlns="urn:jboss:module:1.3" name="org.primefaces">
<resources>
<resource-root path="primefaces-5.0.jar"/>
</resources>
<dependencies>
<module name="javaee.api"/>
<module name="javax.faces.api"/>
</dependencies>
</module>
2)在selene.ear
,在META-INF
,我添加了以下内容jboss-deployment-structure.xml
:
<jboss-deployment-structure>
<ear-subdeployments-isolated>true</ear-subdeployments-isolated>
<sub-deployment name="SeleneWar.war">
<dependencies>
<module name="org.primefaces"/>
</dependencies>
<local-last value="true" />
</sub-deployment>
</jboss-deployment-structure>
似乎一切正常(Wildfly 启动时没有错误;如果我删除模块文件夹,那么它会开始抱怨缺少依赖项)。但是,如果我从战争程序集中删除 primefaces jar,则不会处理 primefaces 标签,因此看起来这些类不可用。
我在 Linux 上的 Java 7 上使用 WildFly 8.1。
我错过了什么?