JSF selectOneListbox speichert Value nicht.

Diskutiere selectOneListbox speichert Value nicht. im Web Tier Forum; Hallo. Folgendes Szenario. Ich habe ein selectOneListbox-Menü und will ja nach Auswahl ein anderes selectOneListbox-Menü befüllen. Da hierfür...

  1. Rallenaldo
    Rallenaldo Mitglied
    Hallo.

    Folgendes Szenario. Ich habe ein selectOneListbox-Menü und will ja nach Auswahl ein anderes selectOneListbox-Menü befüllen. Da hierfür nicht jedes Mal das komplette Formular übermittelt werden soll, muss das Problem mit Ajax gelöst werden.

    Ich habe bisher folgenden Code:

    XHTML-Seite:

    Code (Text):

    <ui:composition template="./../META-INF/templates/template.xhtml"
                    xmlns:ui="http://xmlns.jcp.org/jsf/facelets"
                    xmlns:h="http://xmlns.jcp.org/jsf/html"
                    xmlns:f="http://xmlns.jcp.org/jsf/core">

    <ui:define name="content">

    <h:form >
                <h:selectOneListbox id="selectOneListbox1AddItem" value="#{categoryController.company}">
                    <f:selectItems value="#{categoryController.selectOneListBox1}" var="comp" itemLabel="#{comp.companyName}" itemValue="#{comp}"/>
                    <f:ajax listener="#{categoryController.valueChanged1}" />
                </h:selectOneListbox>
               
                <h:selectOneListbox id="selectOneListbox2AddItem">
                    <f:selectItems value="#{categoryController.selectOneListBox2}"/>
                </h:selectOneListbox>
    </h:form>

    </ui:define>

    </ui:composition>
     
    CategoryController:

    Code (Java):


    @Named
    @ViewScoped
    public class CategoryController implements Serializable {

    private static final long serialVersionUID = 5639623356569403812L;

    private List<Company> selectOneListBox1;
    private List<Company> selectOneListBox2;

    private Company company;

    // Getter & Setter

    public void valueChanged1(AjaxBehaviorEvent event) {

    System.out.println("Input:" + company.getCompanyName());

    }

    ...

     
    Mein Problem ist, dass aktuell die Methode valueChanged1 nicht aufgerufen wird, und sollte ich es doch geschafft haben, dass diese aufgerufen wird, bekomme ich einen NullPointerException.

    Ich habe auch im Internet schon stundenlang nach einer Lösung gesucht und vor allem die Vorschläge von StackOverflow ausprobiert, allerdings ohne jeglichen Erfolg. Ich finde meinen Fehler nicht...
     
    Zuletzt bearbeitet: 26. Mai 2015
  2. Vielleicht hilft dir dieser Java-Kurs hier weiter --> (hier klicken)
  3. Dirk S
    Dirk S Neues Mitglied
    hm, also ich denke valueChanged1 wird aufgerufen, bevor die SetterMethode aufgerufen wird und damit ist die gewählte Variable noch nicht im Bean gesetzt.
    Der AjaxBehaviourEvent wiederum hat eine Methode ich glaube getSource() und darauf dann getValue mit der du die Auswahl abfragen kannst
     
Die Seite wird geladen...

selectOneListbox speichert Value nicht. - Ähnliche Themen

Erlaubte Klassen für h:selectOneListbox Iteration?
Erlaubte Klassen für h:selectOneListbox Iteration? im Forum Web Tier
Warum speichert meine String-Variable nummerische Werte?
Warum speichert meine String-Variable nummerische Werte? im Forum Java Basics - Anfänger-Themen
Gespeicherte Daten von einer LinkedList auf vier LinkedList verteilen
Gespeicherte Daten von einer LinkedList auf vier LinkedList verteilen im Forum Allgemeine Java-Themen
Kamera - Foto wird nicht gespeichert
Kamera - Foto wird nicht gespeichert im Forum Mobile Geräte
2D Array wird in der Methode nicht geändert/gespeichert
2D Array wird in der Methode nicht geändert/gespeichert im Forum Java Basics - Anfänger-Themen
Thema: selectOneListbox speichert Value nicht.