Frage

Was ist der beste Weg, um die Größe des Ansichtszustandes versteckten Feldes in JSF zu reduzieren? Ich habe bemerkt, dass meine Ansicht Zustand etwa 40k ist dies geht bis auf den Client und zurück an den Server bei jeder Anfrage und Antwort espically auf den Server kommt dies eine deutliche Verlangsamung für den Benutzer ist.

Meine Umwelt JSF 1.2, MyFaces, Tomcat, Tomahawk, Richfaces

War es hilfreich?

Lösung

Haben Sie versucht, den Zustand zu versetzen, um Server zu speichern? Dies sollte nur eine ID an den Client senden, und den vollständigen Zustand auf dem Server halten. die folgenden in die Datei einfach hinzufügen web.xml :

 <context-param>
  <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
  <param-value>server</param-value>
 </context-param>

Andere Tipps

Wenn Sie MyFaces verwenden, können Sie diese Einstellung versuchen, den Ansichtszustand zu komprimieren, bevor an den Client gesendet wird.

<context-param>
    <param-name>org.apache.myfaces.COMPRESS_STATE_IN_CLIENT</param-name>
    <param-value>true</param-value>
</context-param> `

Eine Möglichkeit ist, vollständig den Anzeigestatus auf Client-Seite speichern Sie können jedoch einige Probleme, wie nicht in der Lage, gegenüber dem Objekt zu serialisieren. Möglicherweise möchten Sie mit verschiedenen Komprimierungsalgorithmus / Nutzen auf der Grundlage Ihrer Anforderung versuchen, aber da der Browser bereits die GZIP standardmäßig verwenden Ich bin nicht sicher, wie viel Sie gewinnen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top