Mise en cache avec Servlet 3.0
La mémoire cache dynamique fournit le support de mise en cache de servlet pour la spécification Servlet 3.0.
Tenez compte des caractéristiques API suivantes lorsque vous utilisez la mémoire cache dynamique avec Servlet 3.0:
- La mémoire cache dynamique encapsule les objets ServletRequest et ServletResponse avec ses propres objets encapsuleur d'application de cache qui étendent les objets ServletRequestWrapper et ServletResponseWrapper.
- La mémoire cache dynamique est toujours le premier asyncListener ajouté à ServletRequest.
- Les utilisateurs de startAsync (ServletRequest req, ServletResponse res) et public AsyncContext startAsync() doivent vider la réponse avant d'appeler cette méthode. Le vidage de la réponse évite de perdre les données écrites dans la réponse encapsulée dans la mémoire cache.
- Ne lisez pas ou n'écrivez pas dans les objets de demande et de réponse envoyés dans public void addListener (asyncListener, req, res). Un encapsulage supplémentaire peut avoir eu lieu, car le programme d'écoute AsyncListener a été enregistré et il peut être utilisé pour libérer les ressources qui lui sont associées.
- La propriété do-not-consume n'est pas prise en charge pour Servlet 3.0 lors de l'utilisation de la mémoire cache dynamique. L'environnement d'exécution fait en sorte que le servlet parent utilise des sous-fragments et la propriété do-not-consume est ignorée.