Hello,
I am running Tomcat 4.1.12 on a Windows 2000 machine.
I have a web application that contains one servlet and one JSP page. The only
functionality of the JSP page right now is to call the servlet via:
<jsp:include page="/servlet/DownloadServlet"/>
I have been working on the servlet for a while now, and can confirm that web.xml is
properly configured and /servlet/DownloadServlet is the correct path.
For a while the servlet was working. Then I went into the administrator and upped the
debug level for some components to 8 or more. After making this change, Tomcat shuts
itself down after I call the JSP page. There is one error in my application (called
ISOdownload) log file - see below:
--------------------------------------------------------
2002-11-18 11:18:44 invoker: init: Associated with Context '/ISOdownload'
2002-11-18 11:18:44 WebappClassLoader: loadClass(org.apache.jasper.servlet.JspServlet,
false)
WebappClassLoader: Searching local repositories
WebappClassLoader: findClass(org.apache.jasper.servlet.JspServlet)
WebappClassLoader: findClassInternal(org.apache.jasper.servlet.JspServlet)
WebappClassLoader: --> Passing on ClassNotFoundException
java.lang.ClassNotFoundException: org.apache.jasper.servlet.JspServlet
at
org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1608)
at
org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:953)
at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1394)
at
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1274)
at
org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:874)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:813)
at
org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3341)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:3534)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1188)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:738)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1188)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:347)
at org.apache.catalina.core.StandardService.start(StandardService.java:497)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:2189)
at org.apache.catalina.startup.Catalina.start(Catalina.java:510)
at org.apache.catalina.startup.Catalina.execute(Catalina.java:400)
at org.apache.catalina.startup.Catalina.process(Catalina.java:180)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:324)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:203)
WebappClassLoader: Delegating to parent classloader
WebappClassLoader: Loading class from parent
--------------------------------------------------------
I believe the Tomcat manager may be creating bad XML in server.xml (all I did was
change debug levels using the manager), but I can't locate the source of the problem.
My new XML file is below (generated from the manager app):
--------------------------------------------------------
<?xml version='1.0' encoding='utf-8'?>
<Server className="org.apache.catalina.core.StandardServer" debug="5" port="8005"
shutdown="SHUTDOWN">
<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" debug="0"/>
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"
debug="0"/>
<GlobalNamingResources>
<Resource auth="Container" description="User database that can be updated and
saved" name="UserDatabase" scope="Shareable" type="org.apache.catalina.UserDatabase"/>
<ResourceParams name="UserDatabase">
<parameter>
<name>factory</name>
<value>org.apache.catalina.users.MemoryUserDatabaseFactory</value>
</parameter>
<parameter>
<name>pathname</name>
<value>conf/tomcat-users.xml</value>
</parameter>
</ResourceParams>
</GlobalNamingResources>
<Service className="org.apache.catalina.core.StandardService" debug="5"
name="Tomcat-Standalone">
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector" acceptCount="10"
bufferSize="2048" connectionTimeout="20000" debug="5" enableLookups="true"
maxProcessors="75" minProcessors="5" port="8080"
protocolHandlerClassName="org.apache.coyote.http11.Http11Protocol" proxyPort="0"
redirectPort="8443" scheme="http" secure="false" tcpNoDelay="true"
useURIValidationHack="false">
<Factory className="org.apache.catalina.net.DefaultServerSocketFactory"/>
</Connector>
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector" acceptCount="10"
bufferSize="2048" connectionTimeout="60000" debug="8" enableLookups="true"
maxProcessors="75" minProcessors="5" port="8443"
protocolHandlerClassName="org.apache.coyote.http11.Http11Protocol" proxyPort="0"
redirectPort="443" scheme="https" secure="true" tcpNoDelay="true"
useURIValidationHack="false">
<Factory className="org.apache.coyote.tomcat4.CoyoteServerSocketFactory"
clientAuth="false" keystoreFile="C:\Documents and Settings\phaneuf\.keystore"
keystorePass="changeit" keystoreType="JKS" protocol="TLS" randomFile="C:\Documents and
Settings\phaneuf\random.pem" rootFile="C:\Documents and Settings\phaneuf\root.pem"/>
</Connector>
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector" acceptCount="10"
bufferSize="2048" connectionTimeout="20000" debug="2" enableLookups="true"
maxProcessors="75" minProcessors="5" port="8009"
protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler" proxyPort="0"
redirectPort="8443" scheme="http" secure="false" tcpNoDelay="true"
useURIValidationHack="false">
<Factory className="org.apache.catalina.net.DefaultServerSocketFactory"/>
</Connector>
<Engine className="org.apache.catalina.core.StandardEngine" debug="5"
defaultHost="localhost" mapperClass="org.apache.catalina.core.StandardEngineMapper"
name="Standalone">
<Host className="org.apache.catalina.core.StandardHost" appBase="webapps"
autoDeploy="true" configClass="org.apache.catalina.startup.ContextConfig"
contextClass="org.apache.catalina.core.StandardContext" debug="5" deployXML="true"
errorReportValveClass="org.apache.catalina.valves.ErrorReportValve" liveDeploy="true"
mapperClass="org.apache.catalina.core.StandardHostMapper" name="localhost"
unpackWARs="true">
<Context className="org.apache.catalina.core.StandardContext"
cachingAllowed="true" charsetMapperClass="org.apache.catalina.util.CharsetMapper"
cookies="true" crossContext="false" debug="0" displayName="Tomcat Administration
Application" docBase="../server/webapps/admin"
mapperClass="org.apache.catalina.core.StandardContextMapper" path="/admin"
privileged="true" reloadable="false" swallowOutput="false" useNaming="true"
wrapperClass="org.apache.catalina.core.StandardWrapper">
<Logger className="org.apache.catalina.logger.FileLogger" debug="0"
directory="logs" prefix="localhost_admin_log." suffix=".txt" timestamp="true"
verbosity="1"/>
</Context>
<Context className="org.apache.catalina.core.StandardContext"
cachingAllowed="true" charsetMapperClass="org.apache.catalina.util.CharsetMapper"
cookies="true" crossContext="false" debug="0" displayName="Webdav Content Management"
docBase="C:\Apache\Tomcat4.1\webapps\webdav"
mapperClass="org.apache.catalina.core.StandardContextMapper" path="/webdav"
privileged="false" reloadable="false" swallowOutput="false" useNaming="true"
wrapperClass="org.apache.catalina.core.StandardWrapper">
</Context>
<Context className="org.apache.catalina.core.StandardContext"
cachingAllowed="true" charsetMapperClass="org.apache.catalina.util.CharsetMapper"
cookies="true" crossContext="true" debug="0" displayName="Tomcat Examples"
docBase="examples" mapperClass="org.apache.catalina.core.StandardContextMapper"
path="/examples" privileged="false" reloadable="true" swallowOutput="false"
useNaming="true" wrapperClass="org.apache.catalina.core.StandardWrapper">
<Logger className="org.apache.catalina.logger.FileLogger" debug="0"
directory="logs" prefix="localhost_examples_log." suffix=".txt" timestamp="true"
verbosity="1"/>
<Parameter name="context.param.name" override="false"
value="context.param.value"/>
<Ejb home="com.wombat.empl.EmployeeRecordHome" name="ejb/EmplRecord"
remote="com.wombat.empl.EmployeeRecord" type="Entity"/>
<Ejb description="Example EJB Reference"
home="com.mycompany.mypackage.AccountHome" name="ejb/Account"
remote="com.mycompany.mypackage.Account" type="Entity"/>
<Environment name="maxExemptions" override="true" type="java.lang.Integer"
value="15"/>
<Environment name="foo/name4" override="true" type="java.lang.Integer"
value="10"/>
<Environment name="minExemptions" override="true" type="java.lang.Integer"
value="1"/>
<Environment name="foo/bar/name2" override="true" type="java.lang.Boolean"
value="true"/>
<Environment name="name3" override="true" type="java.lang.Integer"
value="1"/>
<Environment name="foo/name1" override="true" type="java.lang.String"
value="value1"/>
<LocalEjb description="Example Local EJB Reference"
home="com.mycompany.mypackage.ProcessOrderHome"
local="com.mycompany.mypackage.ProcessOrder" name="ejb/ProcessOrder" type="Session"/>
<Resource auth="SERVLET" name="jdbc/EmployeeAppDb" scope="Shareable"
type="javax.sql.DataSource"/>
<Resource auth="Container" name="mail/Session" scope="Shareable"
type="javax.mail.Session"/>
<ResourceParams name="jdbc/EmployeeAppDb">
<parameter>
<name>user</name>
<value>sa</value>
</parameter>
<parameter>
<name>password</name>
<value></value>
</parameter>
<parameter>
<name>driverName</name>
<value>jdbc:HypersonicSQL:database</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>org.hsql.jdbcDriver</value>
</parameter>
</ResourceParams>
<ResourceParams name="mail/Session">
<parameter>
<name>mail.smtp.host</name>
<value>localhost</value>
</parameter>
</ResourceParams>
<ResourceLink global="simpleValue" name="linkToGlobalResource"
type="java.lang.Integer"/>
</Context>
<Context className="org.apache.catalina.core.StandardContext"
cachingAllowed="true" charsetMapperClass="org.apache.catalina.util.CharsetMapper"
cookies="true" crossContext="false" debug="0" displayName="Tomcat Documentation"
docBase="C:\Apache\Tomcat4.1\webapps\tomcat-docs"
mapperClass="org.apache.catalina.core.StandardContextMapper" path="/tomcat-docs"
privileged="false" reloadable="false" swallowOutput="false" useNaming="true"
wrapperClass="org.apache.catalina.core.StandardWrapper">
</Context>
<Context className="org.apache.catalina.core.StandardContext"
cachingAllowed="true" charsetMapperClass="org.apache.catalina.util.CharsetMapper"
cookies="true" crossContext="false" debug="9" displayName="ISO Download Application"
docBase="C:\Apache\Tomcat4.1\webapps\ISOdownload"
mapperClass="org.apache.catalina.core.StandardContextMapper" path="/ISOdownload"
privileged="false" reloadable="false" swallowOutput="false" useNaming="true"
wrapperClass="org.apache.catalina.core.StandardWrapper">
<Loader className="org.apache.catalina.loader.WebappLoader"
checkInterval="15" debug="5" delegate="false"
loaderClass="org.apache.catalina.loader.WebappClassLoader" reloadable="false"/>
<Logger className="org.apache.catalina.logger.FileLogger" debug="5"
directory="logs" prefix="localhost_ISOdownload_log." suffix=".txt" timestamp="true"
verbosity="3"/>
<Manager className="org.apache.catalina.session.StandardManager"
algorithm="MD5" checkInterval="60" debug="5" maxActiveSessions="-1"
maxInactiveInterval="1800" pathname="SESSIONS.ser"
randomClass="java.security.SecureRandom">
</Manager>
</Context>
<Context className="org.apache.catalina.core.StandardContext"
cachingAllowed="true" charsetMapperClass="org.apache.catalina.util.CharsetMapper"
cookies="true" crossContext="false" debug="0" displayName="Tomcat Manager Application"
docBase="../server/webapps/manager"
mapperClass="org.apache.catalina.core.StandardContextMapper" path="/manager"
privileged="true" reloadable="false" swallowOutput="false" useNaming="true"
wrapperClass="org.apache.catalina.core.StandardWrapper">
<ResourceLink global="UserDatabase" name="users"
type="org.apache.catalina.UserDatabase"/>
</Context>
<Context className="org.apache.catalina.core.StandardContext"
cachingAllowed="true" charsetMapperClass="org.apache.catalina.util.CharsetMapper"
cookies="true" crossContext="false" debug="0" displayName="Welcome to Tomcat"
docBase="C:\Apache\Tomcat4.1\webapps\ROOT"
mapperClass="org.apache.catalina.core.StandardContextMapper" path=""
privileged="false" reloadable="false" swallowOutput="false" useNaming="true"
wrapperClass="org.apache.catalina.core.StandardWrapper">
</Context>
<Logger className="org.apache.catalina.logger.FileLogger" debug="4"
directory="logs" prefix="localhost_log." suffix=".txt" timestamp="true" verbosity="4"/>
</Host>
<Logger className="org.apache.catalina.logger.FileLogger" debug="9"
directory="logs" prefix="catalina_log." suffix=".txt" timestamp="true" verbosity="4"/>
<Realm className="org.apache.catalina.realm.UserDatabaseRealm" debug="0"
resourceName="UserDatabase" validate="true"/>
</Engine>
</Service>
</Server>
--------------------------------------------------------
Any help would be greatly appreciated.
Thanks
-Becky
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>