托管Bean类分离

时间:2012-05-02 15:07:08

标签: servlets jsf-2 java-ee-6 managed-bean

我有两个项目,我需要为其他项目重用相同的jsf托管bean类。 有什么办法可以为jsf托管bean类+ util类创建一个单独的项目,并在我将要做的所有项目中引用它们。

2 个答案:

答案 0 :(得分:1)

根据所使用的IDE,创建一个简单的“Java项目”或“Web片段项目”,并确保它在源文件夹中有一个JSF 2.0兼容的/META-INF/faces-config.xml文件。然后配置您的Web项目以将该项目作为JAR包含在/WEB-INF/lib中(同样,取决于所使用的IDE,在Eclipse中只需将模块项目添加到Web项目属性中的 Deployment Assembly 列表) 。一旦JSF在/WEB-INF/lib中找到与JSF 2.0兼容的/META-INF/faces-config.xml的JAR,那么JSF将自动扫描整个JAR以获取JSF工件。

另见:

答案 1 :(得分:0)

由于您使用的是Java EE 6,如果您愿意使用CDI,那么这将是一件非常容易的事情。我自己做了几次。

将您的Managed Beans放在一个单独的JAR项目中,并将其导入您要使用它们的项目中。您唯一需要做的就是使用@Named而不是@ManagedBean,并在两个项目的/ META-INF中都有一个beans.xml。这样,您就可以在facelets页面中引用启用CDI的bean,并获得CDI模型的整体灵活性和强大功能。