Frage

Ich möchte eine Backing Bean Feld auf den gewählten Wert eines selectOneListbox binden. Dies setzt den gewählten Wert auf die „default“ selectItem Dieser Wert könnte null sein, so dass ich dies auf 0 konvertiert werden soll. Ich verwende JSF2

Ich plane dies mit dem http://java.sun.com/jstl/ zu tun Kern taglib (mit <c:if test="#{empty...}>)

Meine Frage ist, : Gibt es einen "sauberen" Weg, dies zu tun. Vielleicht JSF (2) zugehörige taglib?

Danke!

War es hilfreich?

Lösung

Der „JSFish“ Weg, dies zu tun wäre, einen Konverter zu erstellen:

public Object getAsObject(FacesContext context, UIComponent comp, String param) {
    return (param.equals("0")) ? null : param;
}

public String getAsString(FacesContext context, UIComponent comp, Object obj) {
    return (obj == null) ? "0" : obj.toString();
}

Andere Tipps

Just Verwendung Long oder Integer statt String als Elementwert. EL automatisch coerce Nummer (und boolean) Werte von / zu bespannen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top