JSF h:dataTable / p:komponente Pagination mit Buchstaben.

F.S.WhiTeY

Bekanntes Mitglied
Moin!

Ich überlege gerade, wie ich am besten eine Pagination nach Buchstaben umsetzen kann. Genutz werden soll eine h:dataTable oder eine andere Komponente (z.B. Primefaces ) die die Atribute "first" und "columns" besitzt.

Ich Dachte mir das in etwas so:

1. Ich muss die Anzahl der Elemente in den jeweiligen Untermengen 'A', 'B', ....'Z' kennen.
2. Ich muss die Anzahl der Elemente in einer Zeile kennen. z.B. drei Elemente pro Zeile.

Daraus kann ich ja theoretisch errechnen in welcher Zeile die jeweilige Untermenge anfängt.

Pseudocodemäßig würde das dann so aussehen:

Berechnung der Zeilenanzahl.
Java:
public int getRowCount(Collection sub){

//Beispiel für Elemente Pro zeile
int maxElementsPerRow = 3;

// Elemente Anzahl / Elemente Pro Zeile = Zeilenanzahl 
int rowcount = sub.size() / maxElementsPerRow;

}

Das ganze würde ich dann z.B. in eine Liste speichern. Es muss gewährleistet sein, dass in der Richtigen reihenfolge einsortiert wird aber das ist nicht das Problem.

Abfragen würde ich dann die Zeilenanzahl des vorgängers. Also für 'B' wird nach 'A' gefragt und für 'C' nach 'A'+'B' usw.

Da A bei Zeile eins anfängt und B nach A kommt ist das denke ich logisch.

Java:
//Klassenvariable die die FirstRows speichert
private List<Integer> firstRows;

..
..

public void insertFirstRow(Collection sub){

//Wie viele Zeilen bis zur aktuellen Untermenge?
Integer rowsBeforSub = 0;

for(Integer i : firstRows ){
    rowsBeforSub += i;
}

//Das Ende der aktuellen Untermenge ist der Anfang der folgenden
//Hier habe ich editiert, sub.size() war natürlich völlig daneben an der stelle 
this.firstRows.add( getRowCount(sub)+rowsBeforSub );

}

Soweit mein Gedankengang. Denk daran, das war ungetesteter Pesudocode als Gedankenstütze ;)

Was haltet ihr von der Grundidee?

Was denkt ihr, wie kann man dabei am besten mit Brüchen umgehen?
Ich meine es können ja auch mal 6,25 Zeilen oder 5,5 Zeilen raus kommen.

LG

David
 
Zuletzt bearbeitet:

F.S.WhiTeY

Bekanntes Mitglied
Ich glaube für die Brüche habe ich eine Lösung.

Ich werde mit double oder float rechnen und diese auch in die Liste Speichern. Wenn ich z.B. auf die 85,6te Zeie komme, möchte ich ja in der 85ten Zeile anfangen. Daraus folgt dass ich den double einfach zu int caste und dann 85 raus kommt.

Das sollte so Funktionieren.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
K jsf 1.2 tomahawk t:dataTable generic use Web Tier 3
W JSF DataTable - Filter Funktion funktioniert nicht Web Tier 3
W JSF einfache DataTable PrimeFaces Web Tier 1
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
T JSF Primefaces: DataTable Ajax Update - Weiterleitung von anderer Seite Web Tier 11
F Primefaces Datatable => Inplaces Web Tier 3
F Primefaces Datatable Web Tier 6
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
A [PrimeFaces] dataTable mit paginator Probleme 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
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
J JSF-Komponente, in der man ein Klassen-Diagram erstellen kann Web Tier 0
aze Wicket: Komponente und erzeugtes ModalWindow haben unterschiedliche Referenzen Web Tier 0
S Rendern einer Komponente nach actionListener Web Tier 2
K Suche bestimmte JSF 2 Komponente Web Tier 11
S Mit GWT ein Widget/Komponente/HTML-Element im Backend erzeugen? Web Tier 4
J JSF AJAX-Aufruf ohne Komponente Web Tier 4
P JSF Menüauswahl soll andere Komponente aktualisieren Web Tier 3
J An JSF-Komponente vom Quellcode aus herankommen (JSF 1.2) Web Tier 2
T <f:ajax> in JSF2.0 Komponente ein- und ausblenden Web Tier 4
G MyFaces PanelTab Komponente: Tabs in mehrern Zeilen möglich? Web Tier 3

Ähnliche Java Themen

Neue Themen


Oben