Wieder mal ein klassisches, simples Problem. In einer JSP kann man nicht auf die Methode size() einer java.util.List zugreifen, das die JSTL mit dem Aufruf
1 |
<c:out value="${list.size}"/> |
einen Getter erwartet und folgende Fehlermeldung produziert:
The „.“ operator was supplied with an index value of type „java.lang.String“ to be applied to a List or array…
Die Erstellung einer einfachen Wrapperklasse behebt dieses Problem:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
public class ListWrapper { private List list; public ListWrapper() { this.list = new ArrayList(); } public int getSize() { return list.size(); } public List getList() { return list; } } |
Die Idee zur Lösung habe ich Buch Core JSTL von David M. Geary gefunden.
Sollte man functions-Bibliothek „fn“ nutzen, kann man natürlich die Funktion
fn:length verwenden.