Você está aqui:
JSF - Java Server Faces :::
JSF HTML Tags ::: |
Como fornecer uma matriz de objetos SelectItem para o controle <h:selectOneMenu>Quantidade de visualizações: 8738 vezes |
|
Um objeto <f:selectItems> pode ser usado dentro do controle <h:selectOneMenu> quando queremos exibir vários itens de uma só vez, em vez de fazê-lo separadamente usando objetos <f:selectItem>. Nesta dica eu mostrarei como criar uma matriz de objetos SelectItem e fornecê-la à propriedade value de um objeto <f:selectItems>. Comece analisando a implementação de um método getListaCidades() de um bean chamado Contato. Este método possui a seguinte assinatura: public SelectItem[] getListaCidades(); Note que SelectItem, uma classe contida no pacote javax.faces.model, representa um item na lista de itens suportados e associados com um componente UISelectMany ou UISelectOne. Vamos então à implementação do método getListaCidades(): ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
public SelectItem[] getListaCidades(){
// vamos criar uma lista de quatro cidades
SelectItem listaCidades[] = new SelectItem[4];
listaCidades[0] = new SelectItem(23, "Goiânia");
listaCidades[1] = new SelectItem(65, "Cuiabá");
listaCidades[2] = new SelectItem(34, "São Paulo");
listaCidades[3] = new SelectItem(76, "Curitiba");
return listaCidades;
}
Veja que no contrutor da classe SelectItem nós fornecemos o código e o nome da cidade. Estes dados poderiam vir de uma tabela no banco de dados, um arquivo texto, XML, etc. Veja agora a página JSP ou Facelets que contém um controle <h:selectOneMenu> ligado à propriedade cidade de um bean chamado Contato: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core">
<h:head>
<title>Estudos JSF</title>
</h:head>
<h:body>
<h4>Cadastro de Contatos</h4>
<h:form>
Cidade:<br />
<h:selectOneMenu id="cidade" value="#{contato.cidade}">
<f:selectItems value="#{contato.listaCidades}" />
</h:selectOneMenu>
<h:commandButton id="submit" value="Gravar Dados"
action="#{contato.gravar}" />
<h:outputText value="#{contato.msg}" />
</h:form>
</h:body>
</html>
Para carregar a lista de cidades, juntamente com seus códigos, só tivemos que fornecer o valor "#{contato.listaCidades}" para a propriedade value do objeto <f:selectItems>. Este procedimento vai gerar o seguinte elemento HTML select: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- <select id="j_idt8:cidade" name="j_idt8:cidade" size="1"> <option value="23">Goiânia</option> <option value="65">Cuiabá</option> <option value="34">São Paulo</option> <option value="76">Curitiba</option> </select> |
|
|
Veja mais Dicas e truques de JSF - Java Server Faces |
Dicas e truques de outras linguagens |
|
Java - Como calcular a velocidade de um corpo dado sua massa e sua energia cinética usando a linguagem Java JavaScript - Como remover os espaços no final de uma string em JavaScript usando uma função trim_final() personalizada |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






