summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
Kai Moritz [Mon, 26 Dec 2011 11:18:10 +0000 (12:18 +0100)]
Abhängigkeiten in juplo-cachecontrol korrigiert
Kai Moritz [Sun, 25 Dec 2011 12:16:07 +0000 (13:16 +0100)]
GZIPServletOutputStream puffert, um Ausgabefehler zu verhindern
TODO:
Eventuell reicht es auch, den Buffer gezielt zu leeren, anstatt hier stets
eine neue Instanz zu erzeugen!
Noch zu klären: sind die im folgenden vermerkten Fehler inzwischen
korrigiert, so dass die Anmerkungen jetzt nach dem Zusammenlegen der
Commits gelöscht werden können?!?
----------
Buggy Commit!
Die in CountingServletOutputStream eingeführte Methode finish(),
die wahrscheinlich von der finish()-Methode des Wrappers aus
aufgerufen werden sollte, wird nur von der Unterklasse
GZipServletOutputstream aufgerufen.
Der im Wrapper entfernte Aufruf der Dekoration nach der Ausführung
des Filters wird also durch diese Maßnahme gar nicht ersetzt!
BUGGY: gzip-Header wird nicht mehr unterdrückt, wenn noch Ausgabe folgen könnte
Die zur Sicherstellung der Kompression eingeführte Variable forceCompression
wird nie ausgewertet. Eventuell ein Fehler, der erst nachträglich durch das
Rebasen beim aufräumen produziert wurde.
Wenn die Variable forceCompression korrekt in den Scope private gesetzt
wäre, wäre der Fehler früher aufgefallen, da Netbeans ihn dann angemeckert
hätte...
Kai Moritz [Sun, 25 Dec 2011 11:54:20 +0000 (12:54 +0100)]
Startskripte für Jetty und Tomcat
Kai Moritz [Sun, 25 Dec 2011 12:12:22 +0000 (13:12 +0100)]
AccelerationWrapper.out ist jetzt nie null
Conflicts:
cachecontrol/src/main/java/de/halbekunst/juplo/cachecontrol/AcceleratorFilter.java
Kai Moritz [Sun, 25 Dec 2011 11:49:03 +0000 (12:49 +0100)]
Schweren BUG in AccelarationFilter korrigiert
Der Dekorator wurde gar nicht mit dem Handler aufgerufen!
Kai Moritz [Fri, 23 Dec 2011 17:16:06 +0000 (18:16 +0100)]
Modul mit Beispiel-Konfigurationen für den Einsatz von juplo-cachecontrol
Kai Moritz [Fri, 23 Dec 2011 16:41:40 +0000 (17:41 +0100)]
TestServlet nach juplo-test verschoben
Kai Moritz [Thu, 2 Aug 2012 07:00:01 +0000 (09:00 +0200)]
Fehler im Zusammenhang mit dem Komprimieren gepufferter Antworten korrigiert
Kai Moritz [Fri, 23 Dec 2011 12:33:25 +0000 (13:33 +0100)]
Verwirrenden Variable-Name "controller" in CacheControl in "handle" geändert
Kai Moritz [Sun, 11 Dec 2011 16:55:36 +0000 (17:55 +0100)]
Testfall für juplo-cachecontrol implementiert
* Neuen Einsprungpunkt getAdditionalHeaders() in CacheMethodHandle ergänzt
* Zugehörige Annotation @AdditionalHeaders und Logik implementiert
* "Content-Encoding: gzip" wird jetzt via
CacheMethodHandle.getAdditionalHeaders() erst so spät wie möglich
gesetzt. Dadurch kann der Header (und die Komprimierung) unterdrückt
werden, wenn die Antwort leer ist. Außerdem wird ein Fehler bei Forwards
verhindert, wo der Header sonst wieder gelöscht wird, wenn weitergeleitet
wird!
* ResponsWrapper eingebaut, der die ausgegebenen Bytes zählt.
Kai Moritz [Sat, 26 Nov 2011 23:03:33 +0000 (00:03 +0100)]
AcceleratorFilter implementiert
Der Filter belauscht das Setzen der Header und konfiguriert CacheControl
entsprechend. Auf diesem Weg lassen sich Java-Webanwendungen mit
verbessertem Caching-Verhalten ausstatten, ohne dass dafür an der Anwendung
selbst etwas geändert werden müsste.
Kai Moritz [Mon, 14 Nov 2011 00:29:02 +0000 (01:29 +0100)]
CacheControl berücksichtigt die Regeln bzgl. starken vs. schwachen ETag's
Kai Moritz [Sun, 13 Nov 2011 21:49:59 +0000 (22:49 +0100)]
Überflüssige Hilfsklasse DefaultCacheMethodHandle ausgebaut
Kai Moritz [Sat, 12 Nov 2011 16:58:38 +0000 (17:58 +0100)]
CacheControl so umgebaut, dass es sich über Annotationen einbinden lässt
Kai Moritz [Thu, 10 Nov 2011 16:14:45 +0000 (17:14 +0100)]
Version auf 1.0.1 festgetreten
Kai Moritz [Wed, 26 Oct 2011 15:35:00 +0000 (17:35 +0200)]
Springframework-Version aktualisiert (3.0.5.RELEASE -> 3.0.6.RELEASE)
Kai Moritz [Wed, 12 Oct 2011 22:23:27 +0000 (00:23 +0200)]
Modul "test" hinzugefügt, das Hilfsklassen für JUnit-Tests enthält
Das Modul enthält zunächst nur eine von stackoverflow.com entlehnte
klasse, die es ermöglicht, Beans mit dem Scope "request" in Spring-JUnit-
Testsfällen zu verwenden.
Kai Moritz [Wed, 3 Aug 2011 16:45:19 +0000 (18:45 +0200)]
Optimierung in CacheControlInterceptor: unnötige Exception vermieden
Kai Moritz [Wed, 3 Aug 2011 16:35:17 +0000 (18:35 +0200)]
Verhalten bei Seiten mit in die URL's enkodierter Session-ID korrigiert
Es macht zwar tatsächlich keinen Sinn, dass Proxies diese Seiten cachen
("Cache-Control: private"), aber Browser dürfen die Inhalte ruhig vorhalten
("Cache-Control: max-age=0" geht über das Ziel hinaus!).
Kai Moritz [Sat, 16 Jul 2011 11:21:04 +0000 (13:21 +0200)]
Aufbau der Debug-Meldungen vereinheitlicht (URL steht stets vorne)
Kai Moritz [Thu, 14 Jul 2011 11:51:18 +0000 (13:51 +0200)]
Fehler bei der Berechnung des Expires-Headers behoben
Wenn der Integer-Wert cacheSeconds zu groß war, kam es zu einem überlauf,
wodurch das Berechnete Datum für den Expires-Header dann 1 Sekunde vor dem
Auslieferungs-Datum lag. Durch einen Cast des Integer-Wertes zu Long vor
der Berechnung wurde dieser Fehler behoben.
Kai Moritz [Thu, 14 Jul 2011 10:58:39 +0000 (12:58 +0200)]
Die Log-Meldungen enthalten jetzt auch den Query-String
Kai Moritz [Thu, 14 Jul 2011 10:21:06 +0000 (12:21 +0200)]
Log-Meldungen für den ersten Zugriff und unterdrücktes Caching ergänzt
Kai Moritz [Mon, 11 Jul 2011 15:43:29 +0000 (17:43 +0200)]
Der Quellcode wird ab sofort mitveröffentlicht
Kai Moritz [Sun, 10 Jul 2011 15:31:12 +0000 (17:31 +0200)]
PercentCodec implementiert
Kai Moritz [Sun, 10 Jul 2011 15:33:06 +0000 (17:33 +0200)]
Expires-Header werden jetzt schon bei cacheSeconds == 0 gesetzt
Kai Moritz [Fri, 1 Jul 2011 12:07:43 +0000 (14:07 +0200)]
slf4j-Version aktualisiert und unnötige Abhängigkeiten entfernt
Kai Moritz [Fri, 1 Jul 2011 12:07:08 +0000 (14:07 +0200)]
Versionsnummer auf 1.0.1-SNAPSHOT angehoben
Kai Moritz [Thu, 30 Jun 2011 16:24:09 +0000 (18:24 +0200)]
Version auf 1.0 festgetreten
Kai Moritz [Thu, 23 Jun 2011 22:52:13 +0000 (00:52 +0200)]
halbekunst.de als Distribution-Management-Repository eingetragen
Kai Moritz [Thu, 30 Jun 2011 16:22:29 +0000 (18:22 +0200)]
Springframework-Version aktualisiert (3.0.4.RELEASE -> 3.0.5.RELEASE)
Kai Moritz [Thu, 23 Jun 2011 18:05:46 +0000 (20:05 +0200)]
Unterprojekt Utils von Fotos in eigenständiges Projekt Juplo verwandelt
Kai Moritz [Thu, 23 Jun 2011 16:10:18 +0000 (18:10 +0200)]
CacheControlInterceptor prüft ETag jetzt auch, wenn If-Modified-Since fehlt
Kai Moritz [Thu, 23 Jun 2011 16:00:30 +0000 (18:00 +0200)]
Fehler bei ungültigem If-Modified-Since in CacheControlInterceptor behoben
* Wenn die Implementierung von Cacheable einen ungültigen (d.h. negativen)
Zeitstempel für Last-Modified geliefert hat, hat CacheControlInterceptor
fälschlich stets mit 304 Not-Modified geantwortet.
* Exception abgefangen, die CacheControlInterceptor geworfen hat, wenn der
Request für If-Modified-Since eine Zeitangabe vor dem 1.1.1970 enthalten
hat.
Kai Moritz [Sun, 15 May 2011 19:21:23 +0000 (21:21 +0200)]
Tippfehler in einem Methoden-Namen des Interfaces Cacheable korrigiert
Kai Moritz [Thu, 5 May 2011 21:55:04 +0000 (23:55 +0200)]
CacheControll-Logik in ein eigenes (separat verwendbares) Modul ausgelagert
Kai Moritz [Sun, 20 Jun 2010 18:17:07 +0000 (20:17 +0200)]
CachingInterceptor implementiert
* Interface Cacheable eingeführt.
* CachingInterceptor implementiert und konfiguriert, der die
HTTP/1.1-Caching-Header wie gewünscht setzt, wenn der Handler
das Interface Cacheable implementiert.