Olá pessoal.
Olhei o fórum e encontrei vários tópicos parecidos, porém nenhum resolveu o meu problema, por isso abro esse novo tópico.
Trabalhando com Facelets, criei uma página “Template” e o utilizei nas minhas páginas.
O Template possui CSS (carregado normalmente), mas as páginas que o consomem não tem o seu próprio CSS carregado.
Já tentei todas as dicas do fórum, pode ter sido desatenção minha… Segue um exemplo do que eu fiz.
Agradeço!!!
OBS: o arquivo existe, está no mesmo lugar que o CSS do template… No navegador, verifiquei que não há referência ao CSS da página que consome o template.
<<template.xhtml>>
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:ui="http://java.sun.com/jsf/facelets">
<h:head>
	<title>Teste - <ui:insert name="titulo" /></title>
    <h:outputStylesheet library="css" name="principal.css" />
    <!-- tentei a gambiarra abaixo para utilizar isso nas páginas que consomem o modelo... -->
    <ui:insert name="infoHeader" />
</h:head>
<h:body>
    <div id="container">
        <div id="cabecalho">
            <ui:include src="cabecalho.xhtml" />
        </div>
        <div id="barraLateral">
            <ui:include src="barralateral.xhtml" />
        </div>
        <div id="conteudo">
            <ui:insert name="conteudo" />
        </div>
        <div id="rodape">
            <ui:include src="rodape.xhtml" />
        </div>
    </div>
</h:body>
</html><<index.xhtml>>
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:p="http://primefaces.prime.com.tr/ui"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:ui="http://java.sun.com/jsf/facelets">
    <!-- tentei aqui do lado de "fora" da composição -->
    <h:outputStylesheet library="css" value="index.css" />
    <ui:composition template="/templates/principal.xhtml">
        <!-- tentei "dentro" da composição -->
        <h:outputStylesheet library="css" value="index.css" />
        <ui:define name="infoHeader">
            <!-- tentei utilizar o insert/define -->
            <h:outputStylesheet library="css" value="index.css" />
        </ui:define>
        <ui:define name="titulo">
            Welcome to JSF!!!
        </ui:define>
        <ui:define name="conteudo">
            <!-- tem um monte de coisa aqui, tudo é carregado normalmente -->
            <div id="login">
                <h:form>
                    <p:fieldset legend="Área Restrita">
                        <h:outputLabel value="Usuário" for="login"/> 
                        <h:inputText id="login" value="#{contextoBean.login}" required="true" />  
                        <h:outputLabel value="Senha" for="senha" /> 
                        <h:inputSecret id="senha" value="#{contextoBean.senha}" required="true" />  
                        <p:commandButton value="Login" action="#{contextoBean.fazerLogin}" ajax="false" />
                    </p:fieldset>
                </h:form>
            </div>
        </ui:define>
    </ui:composition>
</html>


 é mais fácil doq fazer esse esquema com ajax…
 é mais fácil doq fazer esse esquema com ajax…