[RESOLVIDO]Pegar message do manangeBean, e mostrar atraves do ajax

4 respostas
L

boa noite ! eu tenho um método no manangeBean chamado verificar(), que tem como função verificar se email existe no banco.
O problema acontece quanto eu tento pegar essa informação através do ajax, e redireciono para o p:message, que teria que exibir
a mensagem de existência ou não do email. só que isso não acontece segue o código abaixo :

JSF - Ajax
<h:outputLabel value="Quem indicou ?*" />
				<p:inputText id="emailindicou"
					value="#{usuarioBean.usuario.emailindicou}" required="true">
					<p:ajax event="blur" listener="#{usuarioBean.verificar}"
						render="msgemailindicou" execute="emailindicou" />
				</p:inputText>
				<p:message id="msgemailindicou" for="emailindicou" />

ManangerBean

public void verificar(AjaxBehaviorEvent event) {
		
		try {
			UsuarioDao dao = new UsuarioDao();
			boolean emailValido = dao.existeEmail(this.usuario);
			
			if (emailValido) {
				FacesContext context = FacesContext.getCurrentInstance();
				context.addMessage(null, new FacesMessage(
						FacesMessage.SEVERITY_FATAL, "Existe !",""));
				//return "Email existe !";
			} else {
				FacesContext context = FacesContext.getCurrentInstance();
				context.addMessage(null, new FacesMessage(
						FacesMessage.SEVERITY_FATAL, " Não Existe !",""));
				this.usuario = new Usuario();
				//return "Email não existe !";
			}
		} catch (Exception e) {
			e.printStackTrace();
			//return "Email não existe !";
		}

	}

Desde já obrigado !

4 Respostas

alanrodrigues

Na tag ajax coloca um update:

<p:ajax update="msgemailindicou"/>
L

Opa alanrodrigues valeu pela atenção !
tentei aqui mas não deu certo . :frowning:

L
Consegui alanrodrigues , sua dica estava certa, só que eu tive que trocar message, por messages, e tirar o for, deixando só o id, brigadão ...
[code]<h:outputLabel value="Quem indicou ?*" />
				<p:inputText id="emailindicou"
					value="#{usuarioBean.usuario.emailindicou}" required="true">
					<p:ajax event="blur" listener="#{usuarioBean.verificar}"
						 update="msgemailindicou"  />
				</p:inputText>
				<p:messages id="msgemailindicou" />
alanrodrigues

Blz…

Criado 4 de julho de 2013
Ultima resposta 5 de jul. de 2013
Respostas 4
Participantes 2