【发布时间】:2011-07-07 10:02:49
【问题描述】:
我们正在尝试构建一个模块化的 jsf 应用程序。该应用程序由一个war 文件和几个jar 文件组成。每个 jar 文件都包含 .xhtml 页面、关联的 bean 和配置文件,如 faces-config.xml、web-fragment.xml 和 pretty-config.xml。当这些 jar 文件放在 WEB-INF/lib 中时,一切正常。
但是,我们需要独立于战争部署 jar 文件(如插件系统)。
在 jboss 6 中,我们尝试将 jar 文件放在 deploy 文件夹中。我们能够查看位于 jar 内的 .xhtml 页面(所有部署的应用程序共享同一个类加载域)。但是,没有扫描 jar 中的 jsf 注释,并且 FacesContext 没有正确初始化。
我们还尝试在 jboss 7 中使用类似的配置部署我们的应用程序,但遇到了其他问题。位于 jar 中的属性文件未加载,由于某种原因,CDI bean 始终解析为 null。
如果我们可以创建一个由未打包在 war 中的可重用模块组成的 Web 应用程序,那就太好了。
欢迎提出任何建议。
提前谢谢你。
【问题讨论】:
-
我们也使用 CDI,并且我们已经包含了一个自定义的 ResourceResolver。唯一不同的是我们把jar文件放在war的WEB-INF/lib文件夹之外。