Formulário com validação A4J + RichFaces + JSF [RESOLVIDO]

Beleza galera?

Tenho um formulário de cadastro de usuário mas só consegui colocar um campo de notificação <rich:messages />, então as notificações de todos os campos estão aparecendo no memso lugar.

O que eu preciso é especificar um <rich:messages /> para cada campo (nome, email etc) para que as notificações de validação apareçam ao lado do campo.

Segue o código do formulário:


				<h:form class="formulario_cadastro" style="estilo.css" id="formCadastro">
				
				<a4j:outputPanel ajaxRendered="true">
					<rich:messages   />
				</a4j:outputPanel>
				
					<h:outputText value="#{clientePB.message}" id="msg" />

	
					<fieldset class="label_espaco">
						<label> <h:outputText value="#{msgBundle.cliente_nome}" />*:
						</label>
						<h:inputText id="nome" value="#{clientePB.cliente.nome}"
							class="cadastro_campo" style="estilo.css" required="true"
							label="Nome">
							<f:validateLength minimum="3" maximum="99" />
							
							<rich:ajaxValidator event="onblur" />
						</h:inputText>

					</fieldset>
					<br />

					<fieldset class="label_espaco">
						<label> <h:outputText value="#{msgBundle.cliente_email}" />*:
						</label>
						<h:inputText id="email" value="#{clientePB.cliente.email}"
							class="cadastro_campo" style="estilo.css" required="true"
							label="E-mail">
							<f:validateLength minimum="3" maximum="99" />
							<rich:ajaxValidator event="onblur" />
						</h:inputText>
					</fieldset>
					<br />

					<fieldset class="label_espaco">
						<label> <h:outputText value="#{msgBundle.cliente_senha}" />*:
						</label>
						<h:inputSecret id="senha" value="#{clientePB.cliente.senha}"
							class="cadastro_campo" style="estilo.css" required="true"
							label="Senha">
							<f:validateLength minimum="6" maximum="20" />
							<rich:ajaxValidator event="onblur" />
						</h:inputSecret>
					</fieldset>
					<br />

					<fieldset class="label_espaco">
						<label> <h:outputText
								value="#{msgBundle.cliente_repetir_senha}" />: </label>
						<h:inputSecret id="rep_senha" value="#{clientePB.rep_senha}"
							class="cadastro_campo" style="estilo.css" required="true"
							label="Repetir Senha">
							<f:validateLength minimum="6" maximum="20" />
							<rich:ajaxValidator event="onblur" />
							<a4j:support event="onblur" reRender="msg"
								action="#{clientePB.verificaSenha}" />
						</h:inputSecret>
					</fieldset>
					<br />

					<fieldset class="label_espaco">
						<label> <h:outputText value="#{msgBundle.cliente_estado}" />
						</label>*: <select id="estado" class="cadastro_estado" name="estado"
							onblur="setarValorEstado()"></select>
						<h:inputHidden id="campoEstado" value="#{clientePB.nomEstado}"
							required="false" label="Estado">
						</h:inputHidden>
					</fieldset>
					<br />

					<fieldset class="label_espaco" id="panel_cidade">
						<label> <h:outputText value="#{msgBundle.cliente_cidade}" />
						</label>*: <select id="cidade" class="cadastro_cidade" name="cidade"
							onchange="setarValorCidade()" />
						<h:inputHidden id="campoCidade" value="#{clientePB.nomCidade}"
							required="false" label="Cidade" />
					</fieldset>
					<br />

					<fieldset class="label_espaco">
						<a4j:commandButton action="#{clientePB.inserir}" type="submit"
							styleClass="cadastro_botao" />
					</fieldset>


						
				</h:form>

Desde já agradeço!

Up

Galera,

Consegui resolver da seguinte forma.

Usando o atributo “id” criei um rich:message para cada campo especificando pelo id, assim

<rich:message for=“nome”>
<rich:message for=“email”>
<rich:message for=“senha”>

Espero que ajude alguém!