** Description changed:

+ [Impact]
+ 
+ * The order of paths in common.loader does not follow the upstream
+ tomcat recommendations. This can lead to unexpected behavior.
+ 
+ [Test Case]
+ 
+ * The broken tomcat8 will have
+ 
+ 
common.loader=${catalina.base}/lib,${catalina.base}/lib/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar,${catalina.home}/common/classes,${catalina.home}/common/*.jar
+ 
+ while the corrected version will have
+ 
+ 
common.loader="${catalina.base}/lib","${catalina.base}/lib/*.jar","${catalina.home}/lib","${catalina.home}/lib/*.jar","${catalina.base}/common/classes","${catalina.base}/common/*.jar","${catalina.home}/common/classes","${catalina.home}/common/*.jar"
+ 
+ in catalina.properties.
+ 
+ [Regression Potential]
+ 
+ * The primary source of regressions would be end-users relying on the
+ old path order and thus getting a different class loaded with the
+ 'fixed' version. However, the Ubuntu order is unspecified as being
+ stable, and is contradictory to the public documentation.
+ 
  Please fix the following line in catalina.properties in all tomcat
  source packages.
  
  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

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1482893

Title:
  common loader in catalina.properties  is wrong

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/tomcat6/+bug/1482893/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to