Details
-
Bug
-
Status: Open
-
Critical
-
Resolution: Unresolved
-
1.1
-
None
-
Security Level: public (Regular issues)
-
None
-
Geronimo 1.1, Jetty version; Sun JDK 1.5_4, OpenSuSE 10.1, 712 MB RAM
Description
Hello,
another testing here was to check if a webapp would still be usable when the user blocks any cookies from us. JEE typically uses a cookie named JSESSIONID (I think this is specified somewhere) to identify a user at a web request time. Now, if cookies are blocked, the developers are instructed to "encode" the urls using the HttpServletResponse.encode() method. Even the JSTL and c:url use this behaviour (fortunately ).
Anyway, today, Jetty had some problems when cookies are blocked. The urls are encoded at request time, so, a url like
/register.jspx
becomes
/register.jspx;jsessionid=<long hexadecimal value>
Using Tomcat, everything works as expected (i.e. the user gets identified as long as he/she uses the session identifier). Jetty, on the other hand, drops the request with a HTTP 404 error telling that it can't find a file named "register.jspx;jsessionid=<long value>". This is, of course, right. However, it's not the expected behaviour.
Seems that Jetty can't figure out that this request is encoded ...