2012-02-24 64 views
1

我有一個所有其他頁面都使用的主模板。如何處理JSF模板中的特定命名空間聲明

想象一下,我使用PrimeFaces組件的一些頁面,有些使用了facelets。目前,我有這樣的主模板聲明所有的命名空間:

<html xmlns="http://www.w3.org/1999/xhtml" 
    xmlns:h="http://java.sun.com/jsf/html" 
    xmlns:f="http://java.sun.com/jsf/core" 
    xmlns:ui="http://java.sun.com/jsf/facelets" 
    xmlns:p="http://primefaces.org/ui"> 

這意味着,如果沒有PrimeFaces組件的網頁將仍然具有PrimeFaces命名空間聲明。這是個好主意嗎?

我們如何才能走出主模板離開非公共的命名空間,並在特定頁面申報呢?

回答

0

這意味着沒有PrimeFaces組件的頁面仍然會有PrimeFaces命名空間聲明。這是個好主意嗎?

這根本沒有傷害。無論如何,Facelets在渲染HTML時都會將它們修剪掉。如果沒有在當前模板中的任何地方使用名稱空間聲明,則可以將其留給它們。請注意,名稱空間聲明僅適用於當前模板,而不適用於包含/裝飾模板。


我們如何才能走出主模板離開非公共的命名空間,並在特定頁面申報呢?

你可以這樣做。這不應該成爲一個問題。