----- Original Message ----- From: "Ole Ersoy" <[EMAIL PROTECTED]>
To: <users@tomcat.apache.org>
Sent: Tuesday, June 17, 2008 4:41 AM
Subject: Class Loader Documentation


Hi,

Reading through the classloader documentation for 6.0 I noticed this:

...
However, the standard Tomcat 5 startup scripts ...

It seems like this should be:

the standard Tomcat 6 startup scripts

But I figured I'd check before filing a ticket.

Also it seems like this section could be simplified:

----------------------------------------------------------------
System - This class loader is normally initialized from the contents of the CLASSPATH environment variable. All such classes are visible to both Tomcat internal classes, and to web applications.
----------------------------------------------------------------

So this seems to be saying that "normally" all classes that should be visible to both Tomcat and webapps are placed in the CLASSPATH environment variable. The second sentence seems to reinforce that placing the libraries in the CLASSPATH makes them visible to both Tomcat and the webapps.

Then reading a little further the text seems to be saying "Forget all that stuff". Tomcat does not do it this way....

If I'm reading it right, would it be simpler to just replace the above mentioned text with,
----------------------------------------------------------------
....
System - The standard Tomcat 6 startup scripts ($CATALINA_HOME/bin/catalina.sh or %CATALINA_HOME%\bin\catalina.bat) ignore the contents of the CLASSPATH environment variable (Unlike most java daemons and applications), and instead
build the system classloader from the following repositories:
...
----------------------------------------------------------------

Thoughts?


I think its because its just hard to explain, but maybe it could be made clearer.
I think *ignores* is the wrong word.

Especially if someone actually looks at catalina bat and sees this line.
set CLASSPATH=%CLASSPATH%;%CATALINA_HOME%\bin\bootstrap.jar
Doesnt look like that script is ignoring CLASSPATH to me ;)

------------
When Tomcat starts up, its internal system classes take *priority* over those in the normal "system" classloader CLASSPATH. This is to prevent "Java DLL hell", making sure that external applications do not see the internal tomcat engine, and making sure that tomcat does not use an external class (eg an xml parser), that may be incompatible with tomcat (Its trying to save your butt).
------------

--- add your version here --- ;)

Actually look back at TC 5.5... it is getting simpler, believe it or not ;)

---------------------------------------------------------------------------
HARBOR : http://www.kewlstuff.co.za/index.htm
The most powerful application server on earth.
The only real POJO Application Server.
See it in Action : http://www.kewlstuff.co.za/cd_tut_swf/whatisejb1.htm
---------------------------------------------------------------------------


---------------------------------------------------------------------
To start a new topic, e-mail: users@tomcat.apache.org
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to