Hello, I have been looking into problems with trying to enable proper support 
for caching jsp pages running inside of Jetty... and I think I have found the 
problem... Jasper.

The Jasper JSP servlet overrides service(HttpServletRequest, 
HttpServletResponse) (with a final version no less), that simply invokes 
_jspService() thus bypassing the Last-Modified & If-Modified-Since logic in 
HttpServlet.service(HttpServletRequest, HttpServletResponse).

This means that even if a JSP sets the Last-Modified header manually the page 
will still not be handled properly by a web cache because the If-Modified-
Since logic is not avilable to provide it with efficent validation.

Also, since the puppy is final the user must override service(ServletRequest, 
ServletResponse) then cast the request and respons, then duplicate the code in 
HttpServlet.service(HttpServletRequest, HttpServletResponse) which deals with 
GET requests, then call _jspSevice() to render the page.

For a test, I changed HttpJspBase to not override service, instead override 
doGet() which invokes _jspService() then with my jsp set proper headers and 
override getLastModified().  With these changes the generated page is now 
cache friendly... meaning that a caching web proxy like squid can now cache 
the page correcttly.

I just checked that the version of HttpJspBase in the Jetty CVS is the same as 
the version imported into JBoss CVS... and if Jasper was refreshed last week 
then it appears this is still an issue.

I have not yet tested if the newly imported Jasper sources correctly handle 
xml-like jsp tags either... but my guess is that it does not.

So, what is the deal with Jasper?  Is there one on this list who has rw for 
it?  I am guessing this is nested somwhere inside of the Tomcat sources... but 
I don't know.  There does not appear to be a Jasper project... from looking at 
the CVS tree there is a jakarta-tomcat-jasper module, which also has the same 
HttpJspBase.

So, my question is what is the policy for changing this source?  Is this 
imported Jasper being maintained locally or are you/we relying on the 
Tomcat/Jasper folks to fix bugs and correctly implement the JSP (as well as 
Servlet) spec?

--jason

-------------------------------------------------
This mail sent through IMP: http://horde.org/imp/

_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to