Foren

IceFaces, DataTable, Geschwindigkeit

Steffen George, geändert vor 12 Jahren.

IceFaces, DataTable, Geschwindigkeit

New Member Beiträge: 2 Beitrittsdatum: 03.02.10 Neueste Beiträge
Hallo allerseits,

wir entwickeln zur Zeit Portlets in IceFaces 1.8.2 und 2.0 für Liferay.
Dabei haben wir ein Portlet, dass eine Datendarstellung wie in "Excel" erlaubt.
Konkret ist dies eine <ice:dataTable> mit ca. 10-15 Spalten und bis zu 50 Zeilen. In jeder Zelle kommen dann <ice:inputText> oder <ice:selectOneMenu> Felder hinzu.

Zuvor haben wir die Logik (darf in Zelle X ein Inputfeld oder Selectfeld gezeigt werden) in IceFaces mittels rendered Parametern implementiert. Dies hat bei dieser Tabellengröße schnell zu einem Renderzyklus von 8+ Sekunden geführt. Dafür dass ein Benutzer einen Wert ändern möchte, ist diese Zeitspanne unerträglich gewesen.

Jetzt haben wir die Datenstruktur umgestellt. Die rendered Parameter wurden durch eine neue Datenstruktur ersetzt, die im JavaCode evaluiert wird. In IceFaces wird dann nur noch über die Datenstruktur mittels <ice:columns> iteriert. So konnten wir die 8+ Sekunden auf 1-2 Sekunden drücken.

Leider ist das noch nicht das non-plus-ultra.

Jetzt ist meine Frage, ob man mit IceFaces hier noch mehr Geschwindigkeit herausholen könnte. Würde evtl. ein Wechsel von 1.8.2 auf das Neue 3.0 etwas nützen?
In einschlägigen Foren liest man immer wieder, dass dies durch die interne Abarbeitung der Phasen des JSF Mechanismus zusammenhängt. Deshalb eine Bonusfrage: Gibt es gute Erfahrungen mit anderen Frameworks die durchaus in dem beschriebenen Szenario einen erheblichen Geschwindigkeitsvorteil erreichen?

So ich hoffe, dass ich alles gut beschrieben habe. Wenn nicht bitte nachfragen.

Ansonsten würde ich mich über Hinweise, Tipps und Kommentare freuen.

Vielen Dank und schöne Grüße,
Steffen George