In the changelog for Tomcat 5.5.16 
(http://tomcat.apache.org/tomcat-5.5-doc/changelog.html), I read this:

"Deploy folders which don't have a WEB-INF, and return an error when a context 
file does not contain a Context element (remm)"

This is breaking a number of WebApps. In the past, a WebApp could have multiple 
subdirectories like:

/
/admin
/WEB-INF

Since this change, Tomcat is deploying "admin" as a separate WebApp, even 
though it doesn't have a WEB-INF subdirectory. That means it can't find classes 
stored in /WEB-INF/classes, so I'm seeing "someClass cannot be resolved to a 
type" errors.

Is there any way to get more information on what the developers were thinking 
here, and how to get the old behavior back? Unfortunately, many of our users 
have relied on this long-standing rule, and their WebApps no longer work. The 
rule is stated here:

http://tomcat.apache.org/tomcat-5.5-doc/config/host.html#Automatic%20Application%20Deployment

The rule is stated as:

"Any subdirectory within the application base directory that appears to be an 
unpacked web application (that is, it contains a /WEB-INF/web.xml file) will 
receive an automatically generated Context element, even if this directory is 
not mentioned in the conf/server.xml file."

Now it appears that what's happening would be more correctly described as:

"Any subdirectory within the application base directory (regardless of whether 
it contains a /WEB-INF/web.xml file) will receive an automatically generated 
Context element, even if this directory is not mentioned in the conf/server.xml 
file."

Any insight/assistance would be appreciated.

Gratefully,

Pete Cassetta
interAdvantage Administrator

Reply via email to