pessoal bom dia, decidi atualizar os componentes do meu sistema entre eles o primefaces antes eu usava a versão 3.1.1 agora migrei para a versão 3.5, porem estou com o seguinte problema
crio os componentes da seguinte estrutura.
<p:panel>
<h:form>
<h:panelGrid>
<h:outputText>
<h:inputText>
...
para os componentes do jsf incluido no painel do primefaces pegar as “corzinhas e tamanhos”.
porém após atualizar o primefaces ao carregar a página esse css não é aplicado aos componentes internos do painel. porém apos fazer um submit e forçar um erro de validação o css é atualizado para os componentes internos e fica tudo “bonitinho”…
alguem sabe como contornar o problema??
vc tentou atualizar a página do seu navegador apertando CTRL + F5?
sim e nada aconteçe.
apenas fica o css correto quando faço um submit.
Você colocou esta sequencia na sua página? Coloca o <p:panel dentro do <h:form
sim.
vale lembrar que quanto utilizava a versão 3.1.1 funcionava perfeito o projeto.
Cara, você criou seu próprio CSS para formatar seus componentes?
Eu nunca tive este problema não. Se você ainda não viu a documentação da versão 3.5 dá uma olhada pois talvez teve alguma modificação neste sentindo.
http://primefaces.googlecode.com/files/indexed_primefaces_users_guide_3_5.pdf
Boa sorte
vlw pela ajuda vou tentar ver na documentação sim se tem algo sobre incompatibilidade com componentes do faces.
e so uso o css padrão mesmo, não implementei nada externo.
Só para informar eu atualizei para o 3.5 e está tudo normal por enquanto.
certo, vou tentar descobrir o motivo e posto aqui.
o meu é 3.5 com jsf 2.1.17
Deixa eu te perguntar, este problema só aparece em uma página?
Coloca ela aqui para eu ver
esta aconteçendo em todas as paginas vou postar a do login.
?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:p="http://primefaces.org/ui"
xmlns:usina="http://java.sun.com/jsf/composite/componentes"
template="./layout/loginTemplate.xhtml">
<ui:define name="top">
<h:graphicImage value="/resources/images/topo.png"/>
</ui:define>
<ui:define name="content">
<p:panel id="PainelLogin">
<h:form id="frmLoginSistema">
<h:panelGrid columns="2">
<h:outputText id="lblUsuario" value="Usuário:"/>
<usina:usinaTexto identificador="txtUsuario" obrigatorio="true" valor="#{mbAutenticacao.usuarios.usuLogin}"
MensagemObrigatorio="Favor informar a Usuário"/>
<h:outputText id="lblSenha" value="Senha:"/>
<usina:usinaSenha identificador="txtSenha" obrigatorio="true" valor="#{mbAutenticacao.usuarios.usuPasswd}"
MensagemObrigatorio="Favor informar a Senha"/>
<h:outputText id="lblUnidade" value="Unidade"/>
<h:selectOneMenu value="#{mbAutenticacao.unidade}" id="cbbUnidadeEdicao" converter="unidadeConverter" required="true" requiredMessage="Favor informar a unidade">
<f:selectItem itemLabel="Seleciona a Unidade." itemValue="#{null}" />
<f:selectItems value="#{mbAutenticacao.todasunidades}" var="uni" itemValue="#{uni}" itemLabel="#{uni.unddNome}" />
</h:selectOneMenu>
</h:panelGrid>
<usina:usinaBotaoSubmit acao="#{mbAutenticacao.logar()}" identificador="btnLogar" valor="Logar"/>
<p:messages autoUpdate="true"/>
</h:form>
</p:panel>
</ui:define>
</ui:composition>
ela usa o seguinte layout.
<?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:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html">
<h:head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Login - Usina Web</title>
</h:head>
<h:body>
<div id="top" class="top">
<ui:insert name="top">Top</ui:insert>
</div>
<div id="content" class="center_content">
<ui:insert name="content">Content</ui:insert>
</div>
</h:body>
</html>
Faz este teste aqui:
coloca a tag <h:form id=“frmLoginSistema”> antes da tag <p:panel id=“PainelLogin”>
e ve se muda alguma coisa
nada, porem o erro não é na ordem, ja que apos fazer o submit, e forçar o erro de validação ou chamar um novo registro ele ja fica certo.
acredito que os componentes do faces sejam escritos apos o css ser aplicado.
estranho cara, se eu ficar sabendo de algo eu posto aqui.
Olá companheiro, resolveu seu problema?
Eu tive um problema com o primefaces e descobri que eu estava com 2 vesões diferentes na biblioteca do meu projeto.
Sugiro você dar uma olhada na sua biblioteca, talvez seu problema seja resolvido como o meu.