Pessoal,
não sei se estou fazendo da maneira correta. Estou querendo popular um ComboBox através de uma consulta no BD e estou fazendo da seguinte forma:
//Variáveis de Instâncias
private String login;
private String senha;
private List<SelectItem> listaItens;
// Método para criar uma lista de SelectItem para popular no ComboBox
public List<SelectItem> listar()
{
// Somente teste
this.listaItens = new ArrayList<SelectItem>();
listaItens.add(new SelectItem("Banana"));
listaItens.add(new SelectItem("Uva"));
listaItens.add(new SelectItem("Pera"));
SelectItem lista = new SelectItem(listaItens);
return lista;
}
// no JSF
<r:comboBox id="pais" selectFirstOnUpdate="false"
defaultLabel="Selecione Item">
<f:selectItems value="#{usuario.listaItens}" id="cmbItens"/>
</r:comboBox>
No facesConfig
<faces-config
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd"
version="1.2">
<managed-bean>
<managed-bean-name>usuario</managed-bean-name>
<managed-bean-class>br.coelce.modelo.Usuario</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
<managed-property>
<property-name>login</property-name>
<property-class>java.lang.String</property-class>
<value></value>
</managed-property>
<managed-property>
<property-name>senha</property-name>
<property-class>java.lang.String</property-class>
<value></value>
</managed-property>
</managed-bean>
<navigation-rule>
<display-name>index</display-name>
<from-view-id>/index.jsp</from-view-id>
<navigation-case>
<from-outcome>success</from-outcome>
<to-view-id>/principal.jsp</to-view-id>
</navigation-case>
</navigation-rule>
<navigation-rule>
<display-name>index</display-name>
<from-view-id>/index.jsp</from-view-id>
<navigation-case>
<from-outcome>failure</from-outcome>
<to-view-id>/index.jsp</to-view-id>
</navigation-case>
</navigation-rule>
</faces-config>
Erro que está sendo apresentado…
javax.servlet.ServletException: Value of tag <selectItems> attribute is incorrect
Eu não posso chamar um método diretamente em um Bean para popular um componete com o retorno do método ?
Pessoal, estou estudando do zero o framwork JSF e tem certas coisas que não consigo entender. Fico grato com a ajuda de vcs.