Bug#794958: tomcat7: wrong usage of catalina.home instead catalina.base in catalina.properties variable common.loader

H.-Dirk Schmitt dirk at computer42.org
Sat Aug 8 17:19:19 UTC 2015


Package: tomcat7
Version: 7.0.63-1~ubuntu14.04.1~c42.ppa1
Severity: important

(The version mentioned above is a no change backport to ubuntu trusty.)

[The bugreport is also valid against tomcat8 ! Please apply the same fix here.]

Please fix the following line in catalina.properties:

WRONG:
common.loader=${catalina.base}/lib,${catalina.base}/lib/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar,${catalina.home}/common/classes,${catalina.home}/common/*.jar

CORRECT:
common.loader=${catalina.base}/common/classes,${catalina.base}/common/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar

Following problems with the wrong statement:
1. Odering is wrong: catalina.base should overrule catalina.home here (see class loader howto below).
2. catalina.home is expanded normally to /usr/share/tomcat7, but there is no common directory - it is below
/var/lib/tomcat7 (as expanded by catalina.base).
3. ${catalina.base}/lib,${catalina.base}/lib/*.jar are pointing to non existing directories.  I recommend to skip this part.

For reference see https://tomcat.apache.org/tomcat-7.0-doc/class-loader-howto.html
> The locations searched by this class loader are defined by the common.loader property in
> $CATALINA_BASE/conf/catalina.properties.
> The default setting will search the following locations in the order they are listed:
>
>    unpacked classes and resources in $CATALINA_BASE/lib
>    JAR files in $CATALINA_BASE/lib
>    unpacked classes and resources in $CATALINA_HOME/lib
>    JAR files in $CATALINA_HOME/lib


History of this bug is that in bug #691865 a wrong fix was introduced.
Instead catalina.base (as specified in the bug report) catalina.home was used for the common.loader.


-- System Information:
Debian Release: jessie/sid
  APT prefers trusty-updates
  APT policy: (500, 'trusty-updates'), (500, 'trusty-security'), (500, 'trusty'), (100, 'trusty-backports')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.19.0-25-generic (SMP w/4 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8) (ignored: LC_ALL set to de_DE.UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages tomcat7 depends on:
ii  adduser                3.113+nmu3ubuntu3
ii  debconf [debconf-2.0]  1.5.51ubuntu2
ii  tomcat7-common         7.0.63-1~ubuntu14.04.1~c42.ppa1
ii  ucf                    3.0027+nmu1

Versions of packages tomcat7 recommends:
pn  authbind  <none>

Versions of packages tomcat7 suggests:
ii  libtcnative-1     1.1.33-1~ubuntu14.04.1~c42.ppa1
ii  tomcat7-admin     7.0.63-1~ubuntu14.04.1~c42.ppa1
ii  tomcat7-docs      7.0.63-1~ubuntu14.04.1~c42.ppa1
ii  tomcat7-examples  7.0.63-1~ubuntu14.04.1~c42.ppa1
pn  tomcat7-user      <none>

-- Configuration Files:
/etc/tomcat7/catalina.properties changed [not included]
/etc/tomcat7/context.xml changed [not included]
/etc/tomcat7/logging.properties changed [not included]
/etc/tomcat7/server.xml changed [not included]
/etc/tomcat7/tomcat-users.xml [Errno 13] Keine Berechtigung: u'/etc/tomcat7/tomcat-users.xml'

-- debconf information excluded



More information about the pkg-java-maintainers mailing list