Fórum [Duvida] Duvida com msg de requirido no JSF #406500

12/08/2011

0

salve salve, galera, estou o seguinte erro, espero que me ajudem hehe

tenho 3 campos, dois de texto e e uma combo...
os 3 sao requiridos, se eu nao escrever nada em nenhum e nems elecionar na combo ao tenatr salvar aparece msg de requerido nos campo text, mas nada na combo, dai preencho a  os campo text e tento salvar, dai fica carregando e aparece a msg no combo dizendo que ele requerido, pq o combo tem toda essa demora?

alguém sabe?
Wisley Souza

Wisley Souza

Responder

Posts

15/08/2011

Robson Teixeira

Favor poste o codigo de sua pagina para termos alguma ideia melhor mas ha principio alguns desse campos tem o atributo imediete="true"???

att
 robson

Responder

Gostei + 0

15/08/2011

Wisley Souza

meu código de combo:
<c:if test="#{type=='combo'}">							<h:selectOneMenu id="#" value="#" 				styleClass="#{readOnly!=true and disabled!=true?'selecionavel':''} #{limpavel==true?'limpavel':''} #{validadores == null ? '' : validadores}"				converter="#" onchange="#"				required="#" requiredMessage="#{msgSistema.msgFieldObrigatorio}"				rendered="#{rich:isUserInRole(roles)}"				disabled="#" style="width:#{size==null?100:size}px;">				<f:selectItem itemLabel="#{msgSistema.lblSelecione}"/>				<f:selectItems value="#"/>				<rich:beanValidator/>			</h:selectOneMenu>			<h:outputText value="#" rendered="#{!rich:isUserInRole(roles)}" styleClass="inputFiltro"/>									</c:if>

como pode ver, não utilizo immediate...
agora meu código na página:
	<ui:include src="/pages/geral/template/paginas/campo.xhtml">					<ui:param name="type" value="combo" />					<ui:param name="label" value="#{msgFeriado.lblPais}:" />					<ui:param name="fieldId" value="pais" />					<ui:param name="value" value="#{mBeanManterFeriado.feriado.pais}" />					<ui:param name="size" value="150" />					<ui:param name="roles" value="CADASTRAR_FERIADO" />					<ui:param name="selectItems"						value="#{mBeanManterFeriado.comboPaises}" />										<ui:param name="converter"						value="#{mBeanManterFeriado.converterPais}" />					<ui:param name="limpavel" value="true" />					<ui:param name="validadores" value="{validate: {required: true}}" />					<ui:param name="required" value="true" />					<ui:param name="styleCombo" value="comboSelecione" />				</ui:include>
Responder

Gostei + 0

15/08/2011

Wisley Souza


meu código de combo:
<c:if test="#{type=='combo'}">							<h:selectOneMenu id="#" value="#" 				styleClass="#{readOnly!=true and disabled!=true?'selecionavel':''} #{limpavel==true?'limpavel':''} #{validadores == null ? '' : validadores}"				converter="#" onchange="#"				required="#" requiredMessage="#{msgSistema.msgFieldObrigatorio}"				rendered="#{rich:isUserInRole(roles)}"				disabled="#" style="width:#{size==null?100:size}px;">				<f:selectItem itemLabel="#{msgSistema.lblSelecione}"/>				<f:selectItems value="#"/>				<rich:beanValidator/>			</h:selectOneMenu>			<h:outputText value="#" rendered="#{!rich:isUserInRole(roles)}" styleClass="inputFiltro"/>									</c:if>

como pode ver, não utilizo immediate...
agora meu código na página:
	<ui:include src="/pages/geral/template/paginas/campo.xhtml">					<ui:param name="type" value="combo" />					<ui:param name="label" value="#{msgFeriado.lblPais}:" />					<ui:param name="fieldId" value="pais" />					<ui:param name="value" value="#{mBeanManterFeriado.feriado.pais}" />					<ui:param name="size" value="150" />					<ui:param name="roles" value="CADASTRAR_FERIADO" />					<ui:param name="selectItems"						value="#{mBeanManterFeriado.comboPaises}" />										<ui:param name="converter"						value="#{mBeanManterFeriado.converterPais}" />					<ui:param name="limpavel" value="true" />					<ui:param name="validadores" value="{validate: {required: true}}" />					<ui:param name="required" value="true" />					<ui:param name="styleCombo" value="comboSelecione" />				</ui:include>

Responder

Gostei + 0

15/08/2011

Wisley Souza

nothing?...
Responder

Gostei + 0

15/08/2011

Robson Teixeira

Verifiquei se seu converter está correto(digo o nome do mesmo) pois acho q pode ser prob do converter.
Responder

Gostei + 0

15/08/2011

Wisley Souza

então níguem? puts ajuda que é bom nada, so me matando e resolvendo sozinho hauhaua
é o seguinte, pra ficar mais fácil, uma meeira de resolver o problema seria colocar o primeiro item assim:

Selecione...

ou seja, o item label dele com esse value ai e deixar ele sem valor
combo.add(new selectItem(" ","Selecione..."));
só que o problema é que se eu fizer isso resolve meu problema(que redundância ) mas dar erro no converter, e ai como resolvo a bronca?

???? dar um help ai...

Responder

Gostei + 0

15/08/2011

Wisley Souza


  Puts grilla, nadinha, nem uma alma se manifestando???
ms uma vez na mão...
Responder

Gostei + 0

15/08/2011

Robson Teixeira

faz o tratamento que caso seja String vazia no seu converter.
Responder

Gostei + 0

15/08/2011

Wisley Souza

Não entendi...
poderia ser mais explicito, de preferencia com um exemplo
hj eu carrego assim 
public void popularComboPais() {		comboPaises = new ArrayList<SelectItem>();		try {			List<Pais> paisesAux = estadoFacade.listarPaises(null);			if (paisesAux != null) {				for (Pais pais : paisesAux) {					comboPaises.add(new SelectItem(pais, pais.getNome()));				}				converterPais = new EntityConverter<Pais>(paisesAux);			}		} catch (BusinessException e) {			e.printStackTrace();		}	}


como eu poderia incluir o:

comboPaises.add(new SelectItem("", "SELECIONE"));

sem que ocorra o problema?
Responder

Gostei + 0

15/08/2011

Wisley Souza

Não entendi...
poderia ser mais explicito, de preferencia com um exemplo
hj eu carrego assim 
public void popularComboPais() {		comboPaises = new ArrayList<SelectItem>();		try {			List<Pais> paisesAux = estadoFacade.listarPaises(null);			if (paisesAux != null) {				for (Pais pais : paisesAux) {					comboPaises.add(new SelectItem(pais, pais.getNome()));				}				converterPais = new EntityConverter<Pais>(paisesAux);			}		} catch (BusinessException e) {			e.printStackTrace();		}	}


como eu poderia incluir o:

comboPaises.add(new SelectItem("", "SELECIONE"));

sem que ocorra o problema?
Responder

Gostei + 0

15/08/2011

Robson Teixeira

Na classe em que é feita a conversão você faz o tratamento para a String vazia no metodo getAsObject sacou???
Responder

Gostei + 0

16/08/2011

Wisley Souza

Saquei, acho que isso resolve meu problema
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar