2016-06-02 12 views
0

Ich habe mich mit selectOneMenu, das von einer HashMap ohne Erfolg für einen Tag bevölkert wurde, gestritten und kann nicht herausfinden, was vor sich geht. Gefolgt die Schritte aufHasmap wird nicht auf selectOneMenu angezeigt

How to populate options of h:selectOneMenu from database?

aber noch kein Glück

Heres meine Bohne:

private Paciente selectedPaciente; 
private Map<String, String> itensPacientes; 


@PostConstruct 
    public void init() { 
     itensPacientes = new LinkedHashMap<String, String>(); 
     itensPacientes.put("1","teste1"); 
     itensPacientes.put("2","teste1"); 
     itensPacientes.put("3","teste1");  
} 


public Map<String, String> getItensPacientes() { 
     return itensPacientes; 
} 

public Paciente getSelectedPaciente(){ 
     return selectedPaciente; 
} 

public void setSelectedPaciente(Paciente selectedPaciente){ 
     this.selectedPaciente = selectedPaciente; 
} 

und hier ist der JSF Teil

<h:selectOneMenu value="#{beanAgenda.selectedPaciente}" required="true"> 
     <f:selectItem itemValue="#{null}" itemLabel="--select--" />  
     <f:selectItems value="#{beanAgenda.itensPacientes}" 
      itemValue="#{entry.key}" itemLabel="#{entry.value}"/> 
    </h:selectOneMenu> 

Aber als ich führe den Code aus, ich kann nur "--select--" opt Ion auf dem Combobx. Gibt es etwas, das ich übersehen habe?

Vielen Dank im Voraus

Antwort

0

Try this:

<f:selectItems value="#{beanAgenda.itensPacientes.entrySet()}" var="entry" 
     itemValue="#{entry.key}" itemLabel="#{entry.value}"/> 

Antwort und Erklärung von diesem post

+0

Ja habe ich versucht, das aber immer noch nicht

+0

Das Problem wurde gefunden. Es war der BeanName. Ich habe BeanAgenda anstelle von agendaBean verwendet, –