Pessoal, tenho um cadastro de usuários, onde quando entro com a senha, tenho um checkbox para mostrar/ocultar os caracteres…
Criei 2 variáveis, uma para armazenar o que for digitado no <p:inputText> e outra para armazenar o <p:password>
Ao mudar o checkbox(padrao false), chamo um método que faz a troca de campo das senhas…
Quando mudo de password para text, os valores são carregados e a troca ocorre normalmente;
O problema é: quando tento passar de text para password, o campo fica vazio…
Alguém sabe o que pode ser ? O <p:password> tem algum bloqueio de cópia ?
Obrigado,
Jean…
Meu código:
XHTML:
<h:panelGrid columns="4" columnClasses="colunaCadastro" id="pgDados">
<h:outputLabel value="Senha: "/>
<p:outputPanel id="senha">
<p:inputText value="#{cadastroUsuariosMB.senhaText}"
rendered="#{cadastroUsuariosMB.mostraCaracteres}"/>
<p:password value="#{cadastroUsuariosMB.senhaPassword}"
rendered="#{!cadastroUsuariosMB.mostraCaracteres}"
feedback="false"/>
</p:outputPanel>
<p:selectBooleanCheckbox value="#{cadastroUsuariosMB.mostraCaracteres}" id="mostra">
<p:ajax process="pgDados"
update="senha"
listener="#{cadastroUsuariosMB.trocaSenhas()}"/>
</p:selectBooleanCheckbox>
<b>Mostrar Caracteres</b>
</h:panelGrid>
Managed Bean:
[code]public void trocaSenhas(){
if(mostraCaracteres){
senhaText = senhaPassword;
} else {
senhaPassword = senhaText;
}
}[/code]