Ich habe eine boolesche Variable als isABooleanValue
im Struts 2 modelebean deklariert und kann den Wert unter Verwendung dieses modelbean.aBooleanValue
in jsp sehen.Struts 2: Falscher/falsch geschriebener Getter- und Setter-Name eines Feldes
Getter sieht wie folgt aus
public boolean isABooleanValue(){
return isABooleanValue;
}
Setter wie dieser Code
public void setABooleanValue(boolean isABooleanValue){
this.isABooleanValue=isABooleanValue;
}
Jsp sieht
<s:property value="modelbean.aBooleanValue" />
kann jemand erklären, wie eine falsche Variablennamen wie folgt zugegriffen werden aus Wertstapel.
bearbeiten
Lösung
in JSP Mit Eigenschaft beruht auf der Methode angegeben Getter basiert. modelbean.aBooleanValue
ruft die isABooleanValue()
-Methode auf, die in Ihrem Model Bean definiert ist und daher nicht vom privaten Feldnamen abhängig ist.
Update: - Obwohl dies mag in älteren Version von OGNL aber OGNL Version 3.0.11 (OgnlRuntime), die mit Struts2 gebündelt arbeiten können leere Werte verursachen, wenn Getter und Setter von Feldern angezeigt Namen sind nicht gleich.
Was ist daran falsch? –
'is' ist ein Getter-Präfix für boolean-s. –
versuchen Sie 'modebean.isABooleanValue'. – lxcky