Richfaces und JSF 2.3.X

Jeder der sich gerade die Augen reibt: ja er hat „Richfaces“ geschrieben. Auch wenn Richfaces das Ende seines Lebens schon lange erreicht hat existieren hier und da noch einige Projekte die sich auf die Funktionalität eben dieser Bibliothek verlassen

…trotzdem sollten wir natürlich damit unseren Aktualisierungswunsch aller anderen Komponenten/Bibliotheken nicht zu den Akten legen. Insbesondere ein Update der Core-JSF Bibliothek ist aus Security Sicht stark anzuraten, werden doch immer mal wieder wichtige Sicherheitslücken geschlossen. Das ist in einem Application Server (selbst ohne diesen komplett zu aktualisieren) in aller Regel kein Problem, „javax.faces.jar“ austauschen und fertig. Nun ist (sagen wir „war“?) Richfaces dafür bekannt nicht gerade tolerant mit Versionswechseln jeglicher Art um zu gehen. Ein Blick in die Anwendung lässt auch hier kein gutes Gefühl aufkommen: „irgendwie langsamer“. Und das aus gutem Grund. Wirft man einen Blick in die generierten HTML-Ausgaben finden wir die Antwort:

Richfaces lädt, je nach Seite, gleich dutzendfach seine benötigten Ressourcen und bremst die Anwendung spürbar aus. Dabei wird die packed.js von Richfaces eigentlich dazu verwendet um benötige Ressourcen zu bundeln und performant in nur einem Request abzufragen.

Eine einfache und pragmatische Lösung: die Ressourcen-Optimierung deaktivieren. Dazu reicht ein entsprechender Eintrag in der web.xml:

    <context-param>
        <param-name>org.richfaces.resourceOptimization.enabled</param-name>
        <param-value>true</param-value>
    </context-param>

Zwar generieren wir damit immer noch mehr Requests als es eigentlich sein müssten, da die benötigten Ressourcen nun einzeln abgefragt werden. Dafür passiert das nun aber auch nur noch einmal.

Ende gut. Alles gut. Vielleicht insbesondere bei Richfaces ein passender Schlusssatz 😉 .

Über Dominik Mathmann
Dominik Mathmann arbeitet als Berater, Entwickler und Trainer bei der GEDOPLAN GmbH. Auf Basis seiner langjährigen Erfahrung in der Implementierung von Java-EE-Anwendungen leitet er Seminare, hält Vorträge und unterstützt Kunden bei der Konzeption und Realisierung von Webanwendungen vom Backend bis zum Frontend. Sein derzeitiger Schwerpunkt liegt dabei auf der Entwicklung von JSF-Anwendungen. Er sieht die stärker werdende Position von JavaScript-Frameworks jedoch positiv und beschäftigt sich darüber hinaus mit Webframeworks wie Angular.

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden /  Ändern )

Google Foto

Du kommentierst mit Deinem Google-Konto. Abmelden /  Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s

%d Bloggern gefällt das: