Apache Tomcat (at least before Tomcat 6 see footnote) treats a percent-encoded slash (%2F) in a URI path just like a regular slash (i.e. as a path delimiter).
So e.g. the servlets example page of Tomcat can be accessed at
http://localhost:8080/examples/servlets/
and athttp://localhost:8080/examples%2Fservlets/
This does not make sense to me. The whole point of percent-encoding a reserved character like "/" is to avoid it being treated as a reserved character (in this case a path delimiter). In addition to this, this behaviour is (one) cause of the vulnerability CVE-2007-0450. However, I assume there must have been a reason for this.
Is there any technical reason why Tomcat treats (ok, used to treat) %2F as a path delimiter?
Is there some situation where this behaviour is helpful?
Footnote: I realize that due to CVE-2007-0450 Tomcat's default behaviour was changed to reject percent-encoded slashes in the path. However, if this check is disabled (ALLOW_ENCODED_SLASH), the old behavior remains.