<h:inputText id="email" value="#{UserBean.email}" >
<p:ajax event="blur" listener="#{UserBean.VerificarEmail2}"
process="email" update="mensagens:mensagem"/>
</h:inputText>
<h:outputLabel value="CONFIRMAR EMAIL:*"/>
<h:inputText id="email2" value="#{UserBean.email2}"
readonly="#{UserBean.campoEmail}"/>
entao nakele verificaremail, se caso o email nao passar queria deixar o ‘CONFIRMAR EMAIL’ para somente leitura, algum mudo do usuario nao poder digitar.
vlww a todos
O que você fez está correto, sócriar aquela variável campoEmail como Boolean no Bean e ao processar o ajax dar update no campo email2, pq se não ele não vai renderizar
eu fiz mano num deu certo
so da certo se eu setar o private boolean campoEmail = true;
<h:inputText id="email" value="#{UserBean.email}" >
<p:ajax event="blur" listener="#{UserBean.VerificarEmail2}"
process="email" update="mensagens:mensagem"/>
</h:inputText>
<h:outputLabel value="CONFIRMAR EMAIL:*"/>
<h:inputText id="email2" value="#{UserBean.email2}"
readonly="#{UserBean.campoEmail}" rendered="true" >
<p:ajax update="email2" />
</h:inputText>
if(user.selectUser(email) == true)
{
FacesContext.getCurrentInstance().addMessage(null,
new FacesMessage(FacesMessage.SEVERITY_INFO,
"Usuario já existe", null));
setCampoEmail(true);
campoEmail = true;
}
[code]
<p:inputText id=“email” value="#{UserBean.email}" >
<p:ajax event=“blur” listener="#{UserBean.VerificarEmail2}"
process=“email” update=“email2”/>
</p:inputText>
<h:outputLabel value="CONFIRMAR EMAIL:*"/>
<p:inputText id="email2" value="#{UserBean.email2}"
readonly="#{UserBean.campoEmail}" /> [/code]
E no método VerificarEmail2, é onde você vai setar a variável campoEmail TRUE ou FALSE
nao da mano, ali tenho q fazer isso
update="mensagens:mensagem"
por isso esta assim
<h:inputText id="email" value="#{UserBean.email}" >
<p:ajax event="blur" listener="#{UserBean.VerificarEmail2}"
process="email" update="mensagens:mensagem"/>
</h:inputText>
<h:outputLabel value="CONFIRMAR EMAIL:*"/>
<h:inputText id="email2" value="#{UserBean.email2}"
readonly="#{UserBean.campoEmail}" rendered="true">
<p:ajax update="email2" />
</h:inputText>
cara eu tenho um caixa de mensagem por isso num ta o update la vou postar a parte toda do codigo referente ai isso acho q fica mais facil para vc enteder
<h:form id="mensagens" styleClass="erros">
<p:messages id="mensagem" />
</h:form>
<h:outputLabel value="EMAIL:*"/>
<h:inputText id="email" value="#{UserBean.email}" >
<p:ajax event="blur" listener="#{UserBean.VerificarEmail2}"
process="email" update="mensagens:mensagem" />
</h:inputText>
<h:outputLabel value="CONFIRMAR EMAIL:*"/>
<h:inputText id="email2" value="#{UserBean.email2}"
readonly="#{UserBean.campoEmail}" >
<p:ajax event="keyup" update="email2" />
</h:inputText>
public void VerificarEmail2(){
UsuarioDaoPG user = new UsuarioDaoPG();
UserBean bean = new UserBean();
campoEmail= false;
String[] aux = email.split("@");
String aux2 = aux[1];
if (!(email.split("@").length == 2) && !(aux2.split(".").length >= 1)){
FacesContext.getCurrentInstance().addMessage(null,
new FacesMessage(FacesMessage.SEVERITY_INFO,
"Email Invalido", null));
campoEmail = true;
}
if(user.selectUser(email) == true)
{
campoEmail = true;
setCampoEmail(true);
FacesContext.getCurrentInstance().addMessage(null,
new FacesMessage(FacesMessage.SEVERITY_INFO,
"Usuario já existe", null));
}
}