PanelGrid aus einer Liste

C

Conti

Gast
Hallo Leute,

ich hab schon wieder ein Problem, an dem wohl nur ich die Zähne ausbeisse.

Ich ermittle aus einer DB Daten und möchte diese dann auf der Seite in einem PanelGrid mit max 7 Spalten anzeigen.
Also, 7 Einträge in einer Zeile und wenn mehrere Einträge vorhanden sind, sollen diese dann in einer zweiten Zeile angezeigt werden.

Manuell ist das ja kein Problem, aber wie mach ich das mit einer Liste (ArrayList - kann aber auch eine andere Collection benutzen)

Ich habe bereits dataTable versucht, kann aber da nur eine Spalte erstellen - brauch aber 7 Spalten!

Jemand eine Ahnung?

Danke im Voraus!
 

dronox

Mitglied
Hey,

in DataTable kann man beliebig viele Spalten deklarieren.

Java:
<h:dataTable value="#{backing.bean}" var="item">
   <h:column>
       <h:outputText value="#{item.value1}" />
   </h:column>
   <h:column>
       <h:outputText value="#{item.value2}" />
   </h:column>
   <h:column>
       <h:outputText value="#{item.value3}" />
   </h:column>
</h:dataTable>

Was mir dort jetzt als Workaround für dein Problem einfallen würde wäre folgendes:

Nehmen wir an deine ArrayList enthält nur Strings und du möchtest aber immer 7 nebeneinander haben (wenn möglich). Also erstellst z.B. Klasse TempStringStorage mit 7 Strings und baust die String-ArrayList in eine ArrayList von TempStringStorage-Objekten um.

Dann kannst du oben 7 Spalten definieren mit jeweils item.value1 bis item.value7 und falls für eine Zeile ein String null ist, weil der Wert fehlt, wird dieser ja nicht angezeigt.

Gruß Dustin
 
C

Conti

Gast
Danke für die Antwort - Dein Workaround wäre zumindest eine Lösung.

Habe schon bisschen in Büchern rumgestöbert - PanelGrid wird nie dynamisch erzeugt.
Übrig bleibt also nur DataTable, eben mit dem bekannten Manko oder ui:repeat. Aber auch das erzeugt nur eine Liste, sprich nur eine Spalte.

Überlege, ob es möglich ist, aus einer Bean heraus JSF-Output zu erzeugen.
Denn dann könnte ich in der Bean (in Java) ein dynmischen Output generieren.

Daher nun meine Frage, kann ma aus der Bean heraus ein JSF-Output erzeugen???
 

JanHH

Top Contributor
Da würd ich wohl ein eigenes JSF-Tag für bauen.. ist eine saubere Lösung und man kann genau das machen, was man will.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Update von ungerenderten p:column innerhalb von p:panelGrid Web Tier 0
S Primefaces commandButton in einem Dialog/Form/PanelGrid führt actionListener nicht aus Web Tier 4
V JSF keine Ränder bei PanelGrid Web Tier 5
I Menü erstellen: h:panelGrid rendern in Abhängigkeit von CommandLink Web Tier 2
M In einer HTML Tabelle positionieren Web Tier 4
I Daten einer Datenbank in ein Formular einfügen Web Tier 3
N RequestDispatcher: include-Aufruf einer jsp scheitert nach mehreren forward-Aufrufen Web Tier 1
Shams Problem mit der verwirklichung einer Readmethode in einer Chatapplikation Web Tier 3
F JSF Popup mit einer Checkbox Auswahlliste Web Tier 1
S Rendern einer Komponente nach actionListener Web Tier 2
A Aufruf eines Servlets auf einer JSP Seite funktioniert nicht Web Tier 10
M JSF JSP, Facelets und einbinden einer js-Datei Web Tier 2
J JSF Initialisierung einer ApplicationScoped Bean Web Tier 2
J Anzeige einer Hierarchie Web Tier 5
M Exception beim Erstellen einer Query Web Tier 9
N JSF Architektur/Design einer JEE 6 + JSF 2.x Webanwendung mit Subdomänen Web Tier 4
J Performance einer Webanwendung Web Tier 2
V JSF Rendering abhängig von einer Auswahl Web Tier 8
P JSF Merkwürdiges Verhalten einer Bean Web Tier 11
S Auswahl eine Zeile von einer HTML Tabelle im Servlet Web Tier 4
X JSP Auslesen der Daten einer Session Web Tier 3
J Servlet Manuelles Rendern einer JSF Datei Web Tier 4
1 JSP Mit Daten einer c:forEach Rechnen ? Web Tier 4
H Seiten-reload als Result einer Action Web Tier 3
N Wie mache ich in einer xhtml (JSF) einen redirect? Web Tier 3
F Prinzipielle Architektur einer Web-Anwendung Web Tier 4
A [JSF 2.0] Ausgabe aus Schleife bzw. einer ArrayList Web Tier 9
E Servlet zum speichern einer Datei in einer Datenbank Web Tier 3
K Analye einer Seite (Java, JSP, ...) Web Tier 12
I Automatische Weiterleitung JSF mit Aufruf einer Methode Web Tier 2
O Focus auf Textfeld, in letzter Reihe einer dataTable Web Tier 2
M Frage zur Konfiguration einer RichFaces DataTable Web Tier 4
I Eine Bean von einer anderen Bean aufrufen Web Tier 2
J JSF: Initialisieren einer Property mit Wert? Web Tier 5
P Struts2 - Mehrere Methoden/Actions in einer Klasse + Validation Web Tier 2
S Attribute einer HttpSession / unchecked cast Web Tier 8
Schandro JSP soll dynamische Anzahl an Parametern einer JavaScript-Function erzeugen Web Tier 8
N Architektur einer Such-Webanwendung Web Tier 4
E Methode einer Bean aus anderer Bean aufrufen Web Tier 10
F Redirect nach Aufruf einer JSP Web Tier 5
O struts - Gültigkeit einer Action an Session binden?! Web Tier 4
C navigation auf einer jsp Seite Web Tier 3
pusteblume Mehrere Objekte einer Bean Web Tier 10
D JSF+Weiterleitung zu einer Login-Page Web Tier 1
F Darstellung einer Tabelle mit JSP Web Tier 4
F Beim Aufruf von einer JSF Seite eine Methode ausführen Web Tier 9
X JSF - eine Liste aller Sessions, Instanzen bzwFacesContexte bekommen? Web Tier 4
A JSF Liste im RequestScope Web Tier 5
D Anzahl Objekte in Liste in JSF ausgeben. Web Tier 2
P JSP: Liste in Bean über Session aufbauen Web Tier 6
T Liste nach Anfangsbuchstaben getrennt ausgeben? Web Tier 2

Ähnliche Java Themen

Neue Themen


Oben