JSF Objekt übertragen

sebastianb

Erfahrenes Mitglied
Hallo zusammen,

ich stehe gerade vor einem kleinen Problem und weiß nicht so richtig weiter.

Ich habe folgende Situation:

JSF Page:

PHP:
 <h:selectManyListbox value="#{sessionHandler.selectedRoles}" id="roles" >
                        <f:selectItems value="#{sessionHandler.allRoles}" var="f"
                                       itemLabel="#{f}" itemValue="#{f}" />
</h:selectManyListbox>

ManagedBean:
Java:
public List<Role> getAllRoles()
{
        return roles;
}


// KonvertierungsFehler
public void setTest(Role[] selectedRoles)
{
        this.selectedRoles=selectedRoles;
}
Beim Speichern fliegt mir ein Konvertierungsfehler um die Ohren. Änder ich den Typ des Arrays in einen String funktioniert es.

Java:
public void setTest(String[] selectedRoles)
{
        this.selectedRoles=selectedRoles;
}

Gibt es hierzu eine Möglichkeit Objekte direkt zu übertragen oder gibt es keine andere Möglichkeit als die jeweiligen Objekte anhand der übergebenen Strings aus der Ursprungsliste zu picken?

Gruß und vielen Dank!

Sebastian
 

enrix

Mitglied
Das selectManyListbox- Tag wird gerendert und als select-Tag ausgegeben. Alle Werte innerhalb des select-Tags sind vom Datentyp String, in dem sie wiederum an die ManagedBean übertragen werden.

Mein Vorschlag:
Es besteht die Möglichkeit einen eigenen Converter zu schreiben. Eine Anleitung dafür findes du im JEE 6 Tutorial von Sun/Oracle (http://download.oracle.com/javaee/6/tutorial/doc/)

beste Grüße
 

Neue Beiträge