Konstantin Kolinko wrote:
2012/6/10 André Warnier <a...@ice-sa.com>:
No tomcat 5.5 files have been copied to that system (apart from the webapp).
Here is the complete (edited, comments removed) content of
tomcat6/conf/catalina.properties :

(...)
common.loader=${catalina.base}/lib,${catalina.base}/lib/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar,/var/lib/tomcat6/common/classes,/var/lib/tomcat6/common/*.jar
server.loader=${catalina.home}/server/classes,${catalina.home}/server/*.jar,/var/lib/tomcat6/server/classes,/var/lib/tomcat6/server/*.jar
shared.loader=${catalina.home}/shared/classes,${catalina.home}/shared/*.jar,/var/lib/tomcat6/shared/classes,/var/lib/tomcat6/shared/*.jar

The above fragment of catalina.properties explains the issue that you
are observing.

The "common.loader", "server.loader" and "shared.loader" values
provide configuration for Common, Server and Shared classloader, as
better documented in 5.5 (Tomcat 6 docs not mention Server and Shared
ones, but they still do exist):

http://tomcat.apache.org/tomcat-5.5-doc/class-loader-howto.html#Overview

If you look at a fresh copy of Tomcat 6, the values would be:

[[[
common.loader=${catalina.base}/lib,${catalina.base}/lib/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar
server.loader=
shared.loader=
]]]

The ones that you have in your file are a mix of 5.5 and 6.0 values.

ClassLoaderFactory.validateFile() method is called in turn for each
value in each of the 3 *.loader options and checks that those values
point to an existing place, which is a directory and is readable.

In your case,

WARNING: Problem with directory [/usr/share/tomcat6/server/classes],
exists: [false], isDirectory: [false], canRead: [false]

it looked for [/usr/share/tomcat6/server/classes] and warned you that
the said directory does not exist.



Thank you Konstantin for this very thorough explanation.

So, it looks like my options to make the warnings disappear are
- either just create these directories (empty) in CATALINA_HOME
- or modify the tomcat6/conf/catalina.properties file to remove (direct or indirect) references to /usr/share/tomcat6/server

As it is now, the file comes from the Tomcat 6 Debian package; I did not modify 
that file.
I would imagine that if the Debian package maintainer decided to modify the standard file, he had some reason to do that.

Based on your knowledge, do you have an idea as to why the Debian Tomcat 6 package maintainer may have considered it a good idea to modify the standard catalina.properties in the way that he did ? Could it be to make upgrades tomcat 5.5 -> tomcat 6 easier ?

(To me, there seems to be a curious mixture of "symbolic" (${catalina.home}/*) and "hardwired" (/var/lib/tomcat6/*) references in the Debian version of that file.)



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to