Ich muss einfach einen sehr einfachen for
-Zyklus in JSF / ICEFaces ausführen, im Grunde die Spaltennummern
Etwas wie der folgende Pseudocode
%Vor% Das <c:forEach>
-Tag iteriert über Sammlungen, aber ich möchte nicht, dass meine Backing-Bean komplexer wird und eine dumme Sammlung von Ganzzahlen zurückgibt.
Kennst du einen kürzeren und klügeren Weg?
Danke
Das <ui:repeat>
-Tag ist das, was Sie wirklich verwenden sollten. Die JSTL-Tags funktionieren außerhalb des JSF-Lebenszyklus. Cay Horstman hat einen JSF-Kurs, der diese Tatsache diskutiert: ui: wiederhole und handle
Daten variabler Länge .
Es gibt ein paar Lösungen, die eine gewisse Flexibilität zeigen. Sie könnten so etwas tun:
%Vor% Die maximale Anzahl der Zeilen wird durch a <ui:parameter>
named max
festgelegt. Dies ist nicht erforderlich, zeigt aber Flexibilität. Alternativ könnten Sie etwas wie:
Der Backing-Bean-Code ist der folgende:
%Vor%Ich schlage vor, auf einer höheren Abstraktionsebene zu denken, nicht in Bezug auf die Darstellung von HTML-Tags, sondern in Bezug auf die Verwendung einer Komponente, die das tut, was Sie brauchen. Die Datentabelle von Primefaces unterstützt beispielsweise dynamische Spalten , die Ihre On-Page-Iterationslogik ersetzen können .