(JSF)Problema para colocar um campo vazio dentro do <h:selectOneMenu >

1 resposta
P

Bom dia pessoal!
Estou tentando colocar um campo vazio(null) dentro de um selectOneMenu. a primeira coisa que tentei foi fazer dessa forma:

<h:selectOneMenu id=“idItemMenuPai” value="#{itemmenuBB.idItemMenuPai}">
<f:selectItem itemLabel=“Sem PaiX” />
<f:selectItems value="#{itemmenuBB.itemMenuPaiDisponiveis}" />
</h:selectOneMenu>

só que da problema pq ele reclama que não coloquei valor, tentei tb colocar o selectItem com value="" porem ele tb reclama… então resolvi subir o nivel para o backbean e pensei vou colocar um selectItem com o campo de valor null

SelectItem selectItem = new SelectItem(null, “Sem Pai”);

(e deu pau pq tava null… )

pensei então vai vazio:

SelectItem selectItem = new SelectItem("", “Sem Pai”);

(E deu pau pq tava vazio)

Enfim… tentei resolver da forma que seria certa e não consegui, alguem tem alguma idéia de como fazer isso do jeito certo?

Bom a solução que funciona(+ fica feio, é a famosa “Adaptação Técnica”, conhecida vulgarmente como GAMBIARRA rsrs) que arrumei é a seguinte, no backbean eu fiz desse jeito:

SelectItem selectItem = new SelectItem("0", "Sem Pai");
	itemMenuPaiDisponiveis.add(selectItem);
	
	ItemMenu itemMenu = null;
	for(int i=0; i < itens.size(); i++){
		itemMenu = (ItemMenu) itens.get(i);
		String codigo = itemMenu.getIdItemMenu().toString();
		String nome = itemMenu.getNome();
		
		selectItem = new SelectItem(codigo, nome);
		
		itemMenuPaiDisponiveis.add(selectItem);
	}

e ai a pior parte… sempre que vou atualizar ou inserir esse kra e o campo do codigo for 0 eu vou precisar chegar e colocar null … bom é isso.

Valeu galera
Abraços
Paulo Cesar

1 Resposta

R

Eu também tive o mesmo problema, tive que resolver fazendo a gambiarra de colocar código 0.

Criado 29 de setembro de 2006
Ultima resposta 29 de set. de 2006
Respostas 1
Participantes 2