So recently I learned that in order to serve static files with a Last-Modified
header from Google App Engine, I had to write my own (simple) servlet to do that. OK fine, I went and did it, results can be viewed here.
But now I find that File.lastModified()
is always returning the same value, no matter that I have touch
ed the file, even tried outright replacing it, and also re-deployed my app. The headers always come back with the same Last-Modified field:
HTTP/1.1 200 OK
Content-Type: application/zip
Content-Disposition: attachment; filename="java-intro.zip"
Last-Modified: Tue, 04 Aug 2009 17:48:41 GMT
Last-Modified-in-millis: 1249408121000
Date: Tue, 04 Aug 2009 20:47:59 GMT
Server: Google Frontend
Content-Length: 0
Also curious is that it comes back with zero content-length, despite the fact that I am setting that in the HttpServletResponse
, and I get back the proper data when I download it using my browser.
What gives, Google App Engine?