Primefaces Datatable

freez

Top Contributor
Hallo,

hat jemand schon mal die [c]p:dataTable[/c] zweizeilig benötigt? Also dass ein Datensatz mit zwei [c]<tr>[/c] gerendert wird? Durch die Menge der Spalten, dich ich habe, möchte ich die Hälfte der Spalten unten drunter in einer weiteren Zeile anzeigen.

Ich weiß zwar, dass ich in einem [c]<p:column>[/c] auch mehrere Werte auch untereinander darstellen kann, vielleicht sogar in zwei divs, die untereinander stehen. Aber ich möchte natürlich einen Trenner (border-bottom im div) verwenden, sodass man erkennt, dass dies eine andere Zeile ist. Und sobald ein Zeilenumbruch in einer Zelle passiert, sitzt der Trenner tiefer als bei Zellen ohne Zeilenumbruch.

Schön wäre es eigentlich, wenn die datatable von sich aus ein weiteres [c]<tr>[/c] erstellt. Ich habe auch schon versucht mit [c]<p:row>[/c] zu experimentieren, aber leider ohne Erfolg, die Tabelle wurde dann gleich gar nicht gerendert (Pseudocode):
[XML]
<p:dataTable var="item" value="#{bean.items}">
<p:row>
<p:column>
<h:eek:utputText value="#{item.bla}" />
</p:column>
<p:column>
<h:eek:utputText value="#{item.blu}" />
</p:column>
</p:row>
<p:row>
<p:column>
<h:eek:utputText value="#{item.bli}" />
</p:column>
<p:column>
<h:eek:utputText value="#{item.blo}" />
</p:column>
</p:row>
</p:dataTable>
[/XML]
 

sence

Bekanntes Mitglied
im notfall, sofern keine weiteren Anforderungen an die Primefaces Funktionalitäten bei der Datatable bestehen,
würde ich diese mir selbst bauen mittels <h:panelGoup binding="#{}"/>


grüße
 

sence

Bekanntes Mitglied
Java:
	private HtmlPanelGroup myDatatable = new HtmlPanelGroup();

	// Getter and Setter

	private void buildMyDatatable() {
	myDatatable = new HtmlPanelGroup();
	myDatatable.getChildren().add(getTxt("<div class=\"ui-state-default ui-filter-column \">"));
	myDatatable.getChildren().add(getTxt("<table>"));
	
	for(Object o : listOfElements) 
        {
		myDatatable.getChildren().add(getTxt("<tr>"));
			myDatatable.getChildren().add(getTxt("<td>"));
				myDatatable.getChildren().add(getTxt(o.getPropertyA()));
			myDatatable.getChildren().add(getTxt("</td>"));
			myDatatable.getChildren().add(getTxt("<td>"));
				myDatatable.getChildren().add(getTxt(o.getPropertyB()));
			myDatatable.getChildren().add(getTxt("</td>"));			
		myDatatable.getChildren().add(getTxt("</tr>"));
		
		myDatatable.getChildren().add(getTxt("<tr>"));
		myDatatable.getChildren().add(getTxt("<td>"));
			myDatatable.getChildren().add(getTxt(o.getPropertyC()));
		myDatatable.getChildren().add(getTxt("</td>"));
		myDatatable.getChildren().add(getTxt("<td>"));
			myDatatable.getChildren().add(getTxt(o.getPropertyD()));
		myDatatable.getChildren().add(getTxt("</td>"));			
	myDatatable.getChildren().add(getTxt("</tr>"));
	}
	
	myDatatable.getChildren().add(getTxt("</table>"));
	myDatatable.getChildren().add(getTxt("</div>"));
	}

	private HtmlOutputText getTxt(String txt) {
			 HtmlOutputText outText = new HtmlOutputText(); 
			 outText.setValue(txt);
			 outText.setEscape(false);
			 return outText;
	}

entsprechend noch die Primefaces css ausgeben und fehlenden CSS Klassen in der Build Funktion den Tabellen Tags ergänzen.


das ganze verbindest du dann wie folgt:
Java:
<h:panelGroup binding="#{myBean.myDatatable}"/>

Grüße
 

freez

Top Contributor
Ich habe erst mal die Variante mit den 2 DIVs gewählt, da die Tabelle recht schmal ist und ein Zeilenumbruch wohl fast nicht zu erwarten ist.

Aber danke für die Unterstützung, ich werde es mir im Kopf behalten, falls ich doch noch umschwenken muss.
 

sence

Bekanntes Mitglied
noch eine Lösung wäre:
Java:
<table>
<ui:repeat var="obj" value="#{myBean.myList}">
<tr>
   <td>#{obj.a}</td>
   <td>#{obj.b}</td>
</tr>
<tr>
   <td>#{obj.c}</td>
   <td>#{obj.d}</td>
</tr>
</ui:repeat>
</table>

grüße
 

freez

Top Contributor
An sowas habe ich natürlich gar nicht gedacht. Gute Idee. Ist halt etwas aufwändiger, da es ja trotzdem wie die datatable aussehen soll. Aber ne gute Lösung. Danke
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
W JSF einfache DataTable PrimeFaces Web Tier 1
T JSF Primefaces: DataTable Ajax Update - Weiterleitung von anderer Seite Web Tier 11
F Primefaces Datatable => Inplaces Web Tier 3
A [PrimeFaces] dataTable mit paginator Probleme Web Tier 2
A JSF Suche Beispiel für Primefaces Tree als Navigation Web Tier 3
P JSF (Primefaces) SelectOneMenu Value auf Array wird nicht gesetzt Web Tier 0
M JSP PrimeFaces LayoutUnits <- breite lässt sich nicht erzwingen wenn 'center' Web Tier 0
T JSF Primefaces: selectedvalue von "selectmanyCheckbox" geht verloren Web Tier 0
W JSF Primefaces Selection Mode Web Tier 2
FINF_AW_Alex JSF PrimeFaces Dialog verlinken Web Tier 3
W JSF Primefaces Web Tier 5
F JSF Problem mit Primefaces Web Tier 7
F JSF Problem mit Primefaces Web Tier 4
S JQuery und Primefaces (Immer wieder Ärger damit) Web Tier 0
S Primefaces commandButton in einem Dialog/Form/PanelGrid führt actionListener nicht aus Web Tier 4
K JSON in Primefaces Table Web Tier 3
C JSF Zusammenarbeit Primefaces und Tomahawk. Web Tier 2
J JSF Grad der Barrierefreiheit von PrimeFaces, ICEFaces, RichFaces und OpenFaces Web Tier 2
P JSF Primefaces Picklist-Ersatz mit vielen Daten Web Tier 4
S primefaces picklist untereinander anordnen Web Tier 6
T JSF Primefaces beim öffnen eines p:dialog wird eine neue View ManagedBean erstellt Web Tier 2
M onNodeExpand listener in PrimeFaces Web Tier 4
F Primefaces Dialog Web Tier 7
F JSF Primefaces 3.3 treetable Web Tier 9
F PrimeFaces - selectOneMenu Web Tier 2
F PrimeFaces commandButton und actionListener Web Tier 6
F PrimeFaces p:selectOneMenu funktioniert nicht Web Tier 12
M JSF Dynamische Größe bei Primefaces Komponenten Web Tier 2
P PrimeFaces DataGrid Click "simulieren" Web Tier 5
J JSF2+primefaces? Web Tier 20
H JSF JSF 2.0 (Primefaces) commandLinks mit action="mypage.xhtml" ohne die URL im Browser zu ändern Web Tier 8
S JSF Primefaces Thema, Css wird geladen, nur die Bilder nicht, bzw Resource wird nicht aufgelöst Web Tier 5
F Primefaces Einstieg Web Tier 1
R Primefaces: No Library Found For This Namespace Web Tier 4
M Primefaces COmmandBUtton Web Tier 8
D JSF Ajax mit Facelets (PrimeFaces) Web Tier 4
Z Primefaces sieht grausam aus Web Tier 1
Z PrimeFaces (/ JSF) Konfigurationsproblem Web Tier 8
K jsf 1.2 tomahawk t:dataTable generic use Web Tier 3
W JSF DataTable - Filter Funktion funktioniert nicht Web Tier 3
F JSF h:dataTable fix Header und Scroll Body Web Tier 0
D JSF DataTable konvertiert Felder nicht Web Tier 1
K deleteButton in dataTable geht nur halb Web Tier 8
G JSP dataTable header - Datenwerte verwenden? Web Tier 3
F.S.WhiTeY JSF h:dataTable / p:komponente Pagination mit Buchstaben. Web Tier 2
jottyfan JSF dataTable und graphicImage (mit JQuery) Web Tier 4
M JSF Composite components - dynamische dataTable? Web Tier 8
M JSF DataTable refreshen mit Ajax? Web Tier 5
M JSF Datatable, nichts geht ohne vorher zu refreshen... Web Tier 4
P JSF 1.2 commandButton in dataTable Web Tier 2
L JSF Überflüssige Methodenaufrufe - dataTable Web Tier 5
T DataTable Composite-Component und ManyToOne Web Tier 5
J JSF Datatable bestimmte Methode Web Tier 4
T JSF/Richfaces rich:dataTable with rich:datascroller Web Tier 1
O Focus auf Textfeld, in letzter Reihe einer dataTable Web Tier 2
M Frage zur Konfiguration einer RichFaces DataTable Web Tier 4
M Datatable und der Zurückbutton Web Tier 4
K JSF Tomahawk dataScroller mit dataTable Web Tier 4
Y dataTable als dynamisches Grid Web Tier 4
E JSF Datatable erst nach Buttonklick anzeigen Web Tier 2
R JSF <rich:datatable> problem Web Tier 4
V JSF: dataTable Getter wird nie aufgerufen Web Tier 6
S JSF dataTable Position feststellen Web Tier 2
S JSF: colspan und rowspan in datatable Web Tier 4
E JSF Datatable leere Zellen anzeigen Web Tier 2
T richfaces datatable Web Tier 3
A JSF: Datatable Links mit Properties Web Tier 3
S richfaces Datatable horizontal ausgeben Web Tier 2

Ähnliche Java Themen

Neue Themen


Oben