2009-11-27 52 views
1

這是一個非常簡單的問題:可以使用faces-config.xml文件有多個標籤(更像是它們應該有)?我在JSF項目工作和faces-config.xml文件有這樣的事情:在faces-config.xml中有多個<application>標籤

<application> 
    <el-resolver>org.jboss.seam.el.SeamELResolver</el-resolver> 
    <view-handler>com.sun.facelets.FaceletViewHandler</view-handler> 
    <message-bundle>customMessages</message-bundle> 
</application> 

<application> 
    <view-handler>org.rivetlogic.crafter.core.jsf.CrafterFacesViewHandlerImpl</view-handler> 
    <el-resolver>org.jboss.seam.ioc.spring.SpringELResolver</el-resolver> 
</application> 

但我從來沒有見過有多個<application>標籤的另一個JSF應用程序,也許這可能是一個我的問題的原因(我認爲涉及多視圖處理程序)。

回答

1

the JSF 1.2 schema

<xsd:choice minOccurs="0" maxOccurs="unbounded"> 
     <xsd:element name="application" 
        type="javaee:faces-config-applicationType"/> 

application元素應該是好的,但也有不上application元素中view-handler元素的數目任何限制無論是。

ViewHandler對JSF的工作原理非常重要。 ViewHandler可能不兼容(查看他們的文檔),或者他們可能對加載順序很敏感(我認爲它不在faces-config.xml中指定)。在後一種情況下,可以將它們放在單獨的文檔中,並使用javax.faces.CONFIG_FILES init參數指定處理順序(see spec)。