|Summary:||class-loader-howto.html does not mention server.loader and shared.loader from catalina.properties|
|Product:||Tomcat 8||Reporter:||Michael Osipov <michaelo>|
|Component:||Documentation||Assignee:||Tomcat Developers Mailing List <dev>|
Description Michael Osipov 2018-07-21 19:43:37 UTC
Just stumbled upon this in our custom config that upto Tomcat 9 server.loader and shared.loader are still loaded by Bootstrap class, but those are not documented in the aforementioned documenation file. To avoid confusion for the user both class loaders should be documented or mentioned that they are obsolete.
Comment 1 M. Manna 2018-08-06 13:19:03 UTC
@Michael Osipov On catalina.properties the documentation should be sufficient for users to understand. @Mark Thomas Would you agree?
Comment 2 Michael Osipov 2018-08-06 15:32:22 UTC
(In reply to M. Manna from comment #1) > @Michael Osipov > > On catalina.properties the documentation should be sufficient for users to > understand. I don't agree because I would expect a tree-like figure to understand the hierarchy in the docs. I cannot deduce this from pure text. I do not consider this as enough. I had to read the source code -- yet did not fully understand it -- which should not be necessary.
Comment 3 Konstantin Kolinko 2018-08-06 19:45:43 UTC
See documentation of Tomcat 5.5 http://tomcat.apache.org/tomcat-5.5-doc/class-loader-howto.html Nobody really needs those class loaders. Use cases when they might be useful are rather limited.
Comment 4 Michael Osipov 2018-08-06 19:47:29 UTC
(In reply to Konstantin Kolinko from comment #3) > See documentation of Tomcat 5.5 > http://tomcat.apache.org/tomcat-5.5-doc/class-loader-howto.html > > Nobody really needs those class loaders. Use cases when they might be useful > are rather limited. That is why it is so confusing why they are still in catalina.properties.
Comment 5 Mark Thomas 2018-08-06 20:18:27 UTC
The use cases are limited but arguably still valid. I think adding an advanced configuration (or similar) section to the end of the class loader page that replicates the info in the 5.5.x docs is the way to go.
Comment 6 Mark Thomas 2018-08-07 08:58:44 UTC
Fixed in: - trunk for 9.0.11 onwards - 8.5.x for 8.5.33 onwards - 7.0.x for 7.0.91 onwards
Comment 7 Michael Osipov 2018-08-07 09:28:36 UTC
(In reply to Mark Thomas from comment #6) > Fixed in: > - trunk for 9.0.11 onwards > - 8.5.x for 8.5.33 onwards > - 7.0.x for 7.0.91 onwards That's perfect. Thanks!
Comment 8 Konstantin Kolinko 2018-08-07 11:48:15 UTC
One minor detail that may be added: IIRC, Web applications that are configured with <Context privileged="true"> do not use the "Shared" classloader but use the "Server" one.