Fala galera, beleza?
Bom pessoal estou com um problema que já faz alguns dias e até então “não” encontrei uma solução.
Estou trabalhando com um projeto Maven (Utilizo NetBeans). E nesse projeto utilizo JSF 2.2 + PrimeFaces + Bootstrap, e a estrutura está da seguinte forma:
Páginas Web:
      WEB-INF
      Pages
       register
          register.xhtml
          userpanel.xhtml    
      resources
        imgs
        layout
            LayoutAPI.xhtml
            LayoutAPI.css
        styles
           Bootstrap
           UserPanel
               userpanel.css
      Login.xhtml 
Assim que é iniciada a aplicação a página inicial a ser chamada é a Login.xhtml. Após o usuário efetuar o login, ele é redirecionado para a página userpanel.xhtml.
Que tem como Template principal a página LayoutAPI.xhtml (Cotem o menu, banner e etc). Até ai tudo beleza funcionando “corretamente”.
O CSS do template funciona perfeitamente na página userpanel.xhtml (Menu, banners, imagens carregados tudo certinho).
O problema é que além do CSS default do Template. Gostaria de carregar um CSS próprio para a página userpanel.xhtml. Que no caso seria o userpanel.css (Styles/UserPanel/userpanel.css)
Só que esse CSS não carrega de jeito nenhum. Navegando aqui no fórum achei o seguinte topico:
E aparentemente a solução foi utilizar a tag
<a4j:loadStyle sr="arquivo.css">
Porém pelo que pesquisei, a tag “LoadStyle” pertence ao RichFaces/Ajax.
Teria alguma outra maneira de carregar o CSS sem utilizar essa tag “LoadStyle” ?
LayoutAPI.xhtml
<?xml version='1.0' encoding='UTF-8' ?>
    <!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://xmlns.jcp.org/jsf/html"
          xmlns:p="http://primefaces.org/ui"
          xmlns:ui="http://xmlns.jcp.org/jsf/facelets">
        
        <h:head>
            
            <title>Page Title</title>
                 
           <h:outputStylesheet library="layout" name="StyleAPI.css"/>
           <h:outputStylesheet library="styles/bootstrap/css" name="bootstrap.css"/>
           <h:outputStylesheet library="styles/bootstrap/css" name="bootstrap-theme.css"/>
           
        </h:head>
        
        
        <h:body>
            
            <div id="top">
                
                <!-- banner -->
                ...
            </div>
            
            
            <div id="menu">            
                    ....                        
            </div>
            
            <div id="center">
                <ui:insert name="conteudo">
                    
                    
                </ui:insert>            
            </div>
                               
        </h:body>
    </html>
Userpanel.xhtml
<?xml version='1.0' encoding='UTF-8' ?>
<!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://xmlns.jcp.org/jsf/html"
      xmlns:f="http://xmlns.jcp.org/jsf/core"
      xmlns:ui="http://xmlns.jcp.org/jsf/facelets"     
      >
    <h:head>                
        
    </h:head>
    <h:body>
        <ui:composition template="../../resources/layout/LayoutAPI.xhtml">
            
            <h:outputStylesheet library="styles/userpanel" name="userpanel.css"/> 
                
            <ui:define name="conteudo">
                
                <div class="contentuser">
                    
                    <div class="contentuser">
                        teste
                    </div>
                    
                </div>              
                
            </ui:define>            
        </ui:composition>
    </h:body>
</html>
userpanel.css
.contentuser{
    
    
    background-color: green;
    width: 500px;
    height: 500px;
    
}