Hi Experts:
I have read "class not found" in FAQ and "class loader howto" of
tomcat6, unfortunately, they don't resolve my problem.
I set CATALINA_BASE and CATALINA_HOME to my directory like:
CATALINA_BASE=/usr/share/mydir
CATALINA_HOME=/usr/share/mydir
then link subdirs (conf/, bin/ ...)of tomcat6 to $CATALINA_HOME,
the "lib/" points to /usr/share/tomcat6/lib. IMO,
tomcat6-servlet-2.5-api.jar, tomcat6-jsp-2.1-api-6.0.26.jar,
tomcat6-el-2.1-api-6.0.26.jar should be automatically be found since
they are located at $CATALINA_HOME/lib/. In fact this doesn't work, I
got errors (see paste at bottom). However, if I added full path of these
JARs to classpath, things worked. I am puzzled, why common class loader
doesn't get these files? thank you.
*type* Exception report
*message*
*description* _The server encountered an internal error () that
prevented it from fulfilling this request._
*exception*
org.apache.jasper.JasperException: javax.servlet.ServletException:
java.lang.NoClassDefFoundError: javax/servlet/jsp/tagext/TagSupport
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:491)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:401)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
*root cause*
javax.servlet.ServletException: java.lang.NoClassDefFoundError:
javax/servlet/jsp/tagext/TagSupport
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:862)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:791)
org.apache.jsp.index_jsp._jspService(index_jsp.java:1349)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
*root cause*
java.lang.NoClassDefFoundError: javax/servlet/jsp/tagext/TagSupport
java.lang.ClassLoader.defineClass1(Native Method)
java.lang.ClassLoader.defineClass(ClassLoader.java:634)
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
java.net.URLClassLoader.access$000(URLClassLoader.java:73)
java.net.URLClassLoader$1.run(URLClassLoader.java:212)
java.security.AccessController.doPrivileged(Native Method)
java.net.URLClassLoader.findClass(URLClassLoader.java:205)
java.lang.ClassLoader.loadClass(ClassLoader.java:321)
sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
java.lang.ClassLoader.loadClass(ClassLoader.java:266)
java.lang.ClassLoader.defineClass1(Native Method)
java.lang.ClassLoader.defineClass(ClassLoader.java:634)
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
java.net.URLClassLoader.access$000(URLClassLoader.java:73)
java.net.URLClassLoader$1.run(URLClassLoader.java:212)
java.security.AccessController.doPrivileged(Native Method)
java.net.URLClassLoader.findClass(URLClassLoader.java:205)
java.lang.ClassLoader.loadClass(ClassLoader.java:321)
sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
java.lang.ClassLoader.loadClass(ClassLoader.java:266)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1431)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1361)
org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:128)
org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:66)
org.apache.jsp.index_jsp._jspx_meth_fmt_005fsetBundle_005f0(index_jsp.java:1361)
org.apache.jsp.index_jsp._jspService(index_jsp.java:61)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
*root cause*
java.lang.ClassNotFoundException: javax.servlet.jsp.tagext.TagSupport
java.net.URLClassLoader$1.run(URLClassLoader.java:217)
java.security.AccessController.doPrivileged(Native Method)
java.net.URLClassLoader.findClass(URLClassLoader.java:205)
java.lang.ClassLoader.loadClass(ClassLoader.java:321)
sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
java.lang.ClassLoader.loadClass(ClassLoader.java:266)
java.lang.ClassLoader.defineClass1(Native Method)
java.lang.ClassLoader.defineClass(ClassLoader.java:634)
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
java.net.URLClassLoader.access$000(URLClassLoader.java:73)
java.net.URLClassLoader$1.run(URLClassLoader.java:212)
java.security.AccessController.doPrivileged(Native Method)
java.net.URLClassLoader.findClass(URLClassLoader.java:205)
java.lang.ClassLoader.loadClass(ClassLoader.java:321)
sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
java.lang.ClassLoader.loadClass(ClassLoader.java:266)
java.lang.ClassLoader.defineClass1(Native Method)
java.lang.ClassLoader.defineClass(ClassLoader.java:634)
java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
java.net.URLClassLoader.access$000(URLClassLoader.java:73)
java.net.URLClassLoader$1.run(URLClassLoader.java:212)
java.security.AccessController.doPrivileged(Native Method)
java.net.URLClassLoader.findClass(URLClassLoader.java:205)
java.lang.ClassLoader.loadClass(ClassLoader.java:321)
sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
java.lang.ClassLoader.loadClass(ClassLoader.java:266)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1431)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1361)
org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:128)
org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:66)
org.apache.jsp.index_jsp._jspx_meth_fmt_005fsetBundle_005f0(index_jsp.java:1361)
org.apache.jsp.index_jsp._jspService(index_jsp.java:61)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
*note* _The full stack trace of the root cause is available in the
Apache Tomcat/6.0.26 logs._