Tomcat上のアプリケーションからCLASSPATHのCLASSは見えるか?
先日、Tomcatにデプロイされているアプリケーションから、CLASSPATHに設定されているCLASSが見えるかが問題になりました。
(ここでいうCLASSPATHとは、Tomcat起動時に設定されていたCLASSPATH)
jdbcドライバを$CATALINA_HOME/shared/libに入れないと認識しないとかありますし、
CLASSPATHに設定されていても見えないのはなんとなくわかっていたんですけどね。
結論から言うと通常はTomcat起動時のCLASSPATHに設定されているCLASSは不可視です。
というのも、Tomcatは通常startup.shやstartup.batで起動するが、
このstartupから呼ばれるcatalina.shやcatalina.batでTomcat起動に必要なCLASSPATHのみ設定されているため。
ソース↓
Tomcat5 サーブレット/JSP コンテナ
http://www.jajakarta.org/tomcat/tomcat5.0/ja/docs/tomcat-docs/class-loader-howto.html#%E3%82%AF%E3%83%A9%E3%82%B9%E3%83%AD%E3%83%BC%E3%83%80%E5%AE%9A%E7%BE%A9
どうでもいいですけど、ここはいつも文字化けしてますよね。
(文字エンコーディング→Shift-JISで観覧可能)