[RESOLVIDO] Pegar Valor selecionado no <select> com JSF

Galera to com um problema que imagino ser simples de resolver, porém quebrei a cabeça aqui mas não ocnsegui solucionar!!!

é o seguinte:

tenho um select com group do html mesmo, só que eu preencho ele com forEach do jstl só que aí entra minha dúvida, como faço pra pegar o que o cara selecionou visto que estou utilizando jsf??? Já fiz isso com servlet, mas com jsf não consegui. precisava pelo menos do nome ou do id do que o cara selecionar.

No bean eu consigo pegar o nome do componente, mas não sei o que fazer com ele.

O código do meu xhtml está assim:

<select id="prodPlano" name="prodPlano">
	<option value="" label=""></option>
		<c:forEach items="${comboCotizadorProdutos}" var="prod">
			<optgroup label="${prod.nome}">
				<c:forEach items="${comboCotizadorPlanos}" var="planoSelect">
					<option value="${planoSelect.id}" label="${planoSelect.nome}">${planoSelect.nome}</option>
				</c:forEach>
			</optgroup>
		</c:forEach>
	</select>

E no meu bean eu pego o nome do componente select(prodPlano) assim:

     Iterator<String> nomes = FacesContext.getCurrentInstance( ).getExternalContext( ).getRequestParameterNames( );
     while(nomes.hasNext( )){
         String nomeComp = nomes.next().toString();
         if(nomeComp.equals("crudPlano")
	      System.out.println(nomeComp) ;
     }

Alguém tem idéia se dá pra fzr isso com jsf???

Obrigado desde já a todos!!!

Está usando jsf, por que não usa as tags do próprio?

Pois não conheço nenhuma tag do jsf que eu consiga preencher um select dentro do outro! Basicamente o que quero é isso aqui:

Veiculos:
VW
Gol
Fusca
Fiat
Palio
uno

Tem como fazer isso com alguma tag jsf???

Obrigado!

O Primefaces tem:

http://www.primefaces.org/showcase/ui/selectOneMenu.jsf

[quote=Rodrigo Sasaki]O Primefaces tem:

http://www.primefaces.org/showcase/ui/selectOneMenu.jsf[/quote]

Bacana hein, não conhecia esse componente do prime… Mas eles não mostram o bean nesse exemplo!

Infelizmente eu estou trabalhando com richfaces 3.0 nesse projeto! :?

O jsf padrão tem algo assim.

Você quer hierarquizar o seu select não é ?

Olha a classe SelectItemGroup

Você passaria uma lista dela.

Ela teria o nome da hierarquia, no seu caso o VW,Fiat, as marcas.

E dentro dela você passaria a coleção de carros.

Exemplo do livro jsf in action


private SelectItemGroup burgers =
new SelectItemGroup("Burgers", // value
"burgers on the menu", // description
false, // disabled
burgerItems); // select items

private SelectItem[] burgerItems = {
new SelectItem("Qwarter pounder"),
new SelectItem("Single"),
new SelectItem("Veggie"),
};

[quote=lele_vader]O jsf padrão tem algo assim.

Você quer hierarquizar o seu select não é ?

Olha a classe SelectItemGroup

Você passaria uma lista dela.

Ela teria o nome da hierarquia, no seu caso o VW,Fiat, as marcas.

E dentro dela você passaria a coleção de carros.

Exemplo do livro jsf in action


private SelectItemGroup burgers =
new SelectItemGroup("Burgers", // value
"burgers on the menu", // description
false, // disabled
burgerItems); // select items

private SelectItem[] burgerItems = {
new SelectItem("Qwarter pounder"),
new SelectItem("Single"),
new SelectItem("Veggie"),
};

[/quote]

Exatamente isso cara!! Vou testar aqui e posto o resultado!!!

Desde já, muito obrigado!

Muito Obrigado A todos!!! Consegui resolver da forma que o amigo lele_vader citou!!!

Abrs!!!