not a surprise to me...not with the experience I had. Try manually compiling one of your servlets and see what happens.
-----Original Message----- From: bharatp80 [mailto:[EMAIL PROTECTED] Sent: Monday, September 17, 2007 2:31 PM To: users@tomcat.apache.org Subject: Re: HTTP status error 500 in tomcat 4.1.36 Thanks for your quick reply. but i am surprised the same code is working on another server. Actually i am moving the web server from another server where it is working just fine.the only difference between this two configuration is on new server i have tomcat 4.1.36 and jdk 1.6 and on running server tomcat 4.0 and jdk 1.4. I have copied all wwwroot files from running server to new server. so i guess to doubt on test.jsp is not appropriate. do you have any other clue for this. Thanks for your interest in solving my problem. Thanks, Bharat bharatp80 wrote: > > Hello Everyone, > > I am getting this error while loading the first test.jsp file after a > fresh windows 2000 server installation and new tomcat 4.1.36 and iis 5.0 > configuration. > > System configuration. > > OS: windows 2000 server > Java : jdk 1.6.2 > tomcat : 4.1.36 > IIs : 5.0 > all the required path ,javahome,catalinhome settings are done. > > > after installing and configuring tomcat 4.1.36 i tried my sample > application but i am getting following error message in internet > explorer..... > > HTTP Status 500 - > > -------------------------------------------------------------------------------- > > type Exception report > > message > > description The server encountered an internal error () that prevented it > from fulfilling this request. > > exception > > org.apache.jasper.JasperException > at > org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:207) > at > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:240) > at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:187) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:199) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:145) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433) > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:955) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:139) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596) > at > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:446) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433) > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:955) > at > org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2460) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596) > at > org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:119) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433) > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:955) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:127) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433) > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:955) > at > org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:157) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874) > at > org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665) > at > org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528) > at > org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81) > at > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685) > at java.lang.Thread.run(Thread.java:619) > > > root cause > > java.lang.NullPointerException > at org.apache.jsp.test_jsp._jspService(test_jsp.java:94) > at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:92) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) > at > org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:162) > at > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:240) > at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:187) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:810) > at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:199) > at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:145) > at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433) > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:955) > at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:139) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596) > at > org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:446) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433) > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:955) > at > org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2460) > at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596) > at > org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:119) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594) > at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:594) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433) > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:955) > at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:127) > at > org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:596) > at > org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433) > at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:955) > at > org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:157) > at > org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874) > at > org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665) > at > org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528) > at > org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81) > at > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685) > at java.lang.Thread.run(Thread.java:619) > > > > -------------------------------------------------------------------------------- > > Apache Tomcat/4.1.36-LE-jdk14 > > > ------------------------------------------------------------------------------------------ > > The file test.jsp is in c:\intepub\wwwroot. > > The server.xml file looks like.................... > <!-- Example Server Configuration File --> > <!-- Note that component elements are nested corresponding to their > parent-child relationships with each other --> > > <!-- A "Server" is a singleton element that represents the entire JVM, > which may contain one or more "Service" instances. The Server > listens for a shutdown command on the indicated port. > > Note: A "Server" is not itself a "Container", so you may not > define subcomponents such as "Valves" or "Loggers" at this level. > --> > > <Server port="8005" shutdown="SHUTDOWN" debug="0"> > > > <!-- Comment these entries out to disable JMX MBeans support --> > <!-- You may also configure custom components (e.g. Valves/Realms) by > including your own mbean-descriptor file(s), and setting the > "descriptors" attribute to point to a ';' seperated list of paths > (in the ClassLoader sense) of files to add to the default list. > e.g. descriptors="/com/myfirm/mypackage/mbean-descriptor.xml" > --> > <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener" > debug="0"/> > <Listener > className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" > debug="0"/> > > <!-- Global JNDI resources --> > <GlobalNamingResources> > > <!-- Test entry for demonstration purposes --> > <Environment name="simpleValue" type="java.lang.Integer" value="30"/> > > <!-- Editable user database that can also be used by > UserDatabaseRealm to authenticate users --> > <Resource name="UserDatabase" auth="Container" > type="org.apache.catalina.UserDatabase" > description="User database that can be updated and saved"> > </Resource> > <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> > > <!-- A "Service" is a collection of one or more "Connectors" that share > a single "Container" (and therefore the web applications visible > within that Container). Normally, that Container is an "Engine", > but this is not required. > > Note: A "Service" is not itself a "Container", so you may not > define subcomponents such as "Valves" or "Loggers" at this level. > --> > > <!-- Define the Tomcat Stand-Alone Service --> > <Service name="Tomcat-Standalone"> > > <!-- A "Connector" represents an endpoint by which requests are > received > and responses are returned. Each Connector passes requests on to > the > associated "Container" (normally an Engine) for processing. > > By default, a non-SSL HTTP/1.1 Connector is established on port > 8080. > You can also enable an SSL HTTP/1.1 Connector on port 8443 by > following the instructions below and uncommenting the second > Connector > entry. SSL support requires the following steps (see the SSL > Config > HOWTO in the Tomcat 4.0 documentation bundle for more detailed > instructions): > * Download and install JSSE 1.0.2 or later, and put the JAR files > into "$JAVA_HOME/jre/lib/ext". > * Execute: > %JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA > (Windows) > $JAVA_HOME/bin/keytool -genkey -alias tomcat -keyalg RSA > (Unix) > with a password value of "changeit" for both the certificate > and > the keystore itself. > > By default, DNS lookups are enabled when a web application calls > request.getRemoteHost(). This can have an adverse impact on > performance, so you can disable it by setting the > "enableLookups" attribute to "false". When DNS lookups are > disabled, > request.getRemoteHost() will return the String version of the > IP address of the remote client. > --> > > <!-- Define a non-SSL Coyote HTTP/1.1 Connector on port 8081 --> > <Connector className="org.apache.coyote.tomcat4.CoyoteConnector" > port="8080" > enableLookups="true" redirectPort="8443" > acceptCount="100" connectionTimeout="20000" > useURIValidationHack="false" disableUploadTimeout="true" /> > <!-- Note : To disable connection timeouts, set connectionTimeout > value > to 0 --> > > <!-- Define a SSL Coyote HTTP/1.1 Connector on port 8443 --> > <!-- > <Connector className="org.apache.coyote.tomcat4.CoyoteConnector" > port="8443" enableLookups="true" scheme="https" > secure="true" > acceptCount="100" > useURIValidationHack="false" disableUploadTimeout="true" > clientAuth="false" sslProtocol="TLS" /> > --> > > <!-- Define a Coyote AJP/1.3 Connector on port 8009 --> > <Connector className="org.apache.coyote.tomcat4.CoyoteConnector" > port="8009" enableLookups="true" redirectPort="8443" > connectionTimeout="0" > useURIValidationHack="false" > > protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler"/> > > > > > > <!-- An Engine represents the entry point (within Catalina) that > processes > every request. The Engine implementation for Tomcat stand alone > analyzes the HTTP headers included with the request, and passes > them > on to the appropriate Host (virtual host). --> > > <!-- You should set jvmRoute to support load-balancing via JK/JK2 ie : > <Engine name="Standalone" defaultHost="localhost" debug="0" > jvmRoute="jvm1"> > --> > > <!-- Define the top level container in our container hierarchy --> > <Engine name="Standalone" defaultHost="localhost" debug="0"> > > <!-- The request dumper valve dumps useful debugging information > about > the request headers and cookies that were received, and the > response > headers and cookies that were sent, for all requests received > by > this instance of Tomcat. If you care only about requests to a > particular virtual host, or a particular application, nest this > element inside the corresponding <Host> or <Context> entry > instead. > > For a similar mechanism that is portable to all Servlet 2.3 > containers, check out the "RequestDumperFilter" Filter in the > example application (the source for this filter may be found in > "$CATALINA_HOME/webapps/examples/WEB-INF/classes/filters"). > > Request dumping is disabled by default. Uncomment the > following > element to enable it. --> > <!-- > <Valve className="org.apache.catalina.valves.RequestDumperValve"/> > --> > > <!-- Global logger unless overridden at lower levels --> > <Logger className="org.apache.catalina.logger.FileLogger" > prefix="catalina_log." suffix=".txt" > timestamp="true"/> > > <!-- Because this Realm is here, an instance will be shared globally > --> > > <!-- This Realm uses the UserDatabase configured in the global JNDI > resources under the key "UserDatabase". Any edits > that are performed against this UserDatabase are immediately > available for use by the Realm. --> > <Realm className="org.apache.catalina.realm.UserDatabaseRealm" > debug="0" resourceName="UserDatabase"/> > > <!-- Comment out the old realm but leave here for now in case we > need to go back quickly --> > <!-- > <Realm className="org.apache.catalina.realm.MemoryRealm" /> > --> > > <!-- Replace the above Realm with one of the following to get a > Realm > stored in a database and accessed via JDBC --> > > <!-- > <Realm className="org.apache.catalina.realm.JDBCRealm" debug="99" > driverName="org.gjt.mm.mysql.Driver" > connectionURL="jdbc:mysql://localhost/authority" > connectionName="test" connectionPassword="test" > userTable="users" userNameCol="user_name" > userCredCol="user_pass" > userRoleTable="user_roles" roleNameCol="role_name" /> > --> > > <!-- > <Realm className="org.apache.catalina.realm.JDBCRealm" debug="99" > driverName="oracle.jdbc.driver.OracleDriver" > connectionURL="jdbc:oracle:thin:@ntserver:1521:ORCL" > connectionName="scott" connectionPassword="tiger" > userTable="users" userNameCol="user_name" > userCredCol="user_pass" > userRoleTable="user_roles" roleNameCol="role_name" /> > --> > > <!-- > <Realm className="org.apache.catalina.realm.JDBCRealm" debug="99" > driverName="sun.jdbc.odbc.JdbcOdbcDriver" > connectionURL="jdbc:odbc:CATALINA" > userTable="users" userNameCol="user_name" > userCredCol="user_pass" > userRoleTable="user_roles" roleNameCol="role_name" /> > --> > > <!-- Define the default virtual host --> > <Host name="localhost" debug="0" appBase="webapps" > unpackWARs="true" autoDeploy="true"> > > <!-- Normally, users must authenticate themselves to each web app > individually. Uncomment the following entry if you would > like > a user to be authenticated the first time they encounter a > resource protected by a security constraint, and then have > that > user identity maintained across *all* web applications > contained > in this virtual host. --> > <!-- > <Valve className="org.apache.catalina.authenticator.SingleSignOn" > debug="0"/> > --> > > <!-- Access log processes all requests for this virtual host. By > default, log files are created in the "logs" directory > relative to > $CATALINA_HOME. If you wish, you can specify a different > directory with the "directory" attribute. Specify either a > relative > (to $CATALINA_HOME) or absolute path to the desired > directory. > --> > <!-- > <Valve className="org.apache.catalina.valves.AccessLogValve" > directory="logs" prefix="localhost_access_log." > suffix=".txt" > pattern="common" resolveHosts="false"/> > --> > > <!-- Logger shared by all Contexts related to this virtual host. > By > default (when using FileLogger), log files are created in the > "logs" > directory relative to $CATALINA_HOME. If you wish, you can > specify > a different directory with the "directory" attribute. > Specify either a > relative (to $CATALINA_HOME) or absolute path to the desired > directory.--> > <Logger className="org.apache.catalina.logger.FileLogger" > directory="logs" prefix="localhost_log." suffix=".txt" > timestamp="true"/> > > <!-- Define properties for each web application. This is only > needed > if you want to set non-default properties, or have web > application > document roots in places other than the virtual host's > appBase > directory. --> > > <!-- Tomcat Root Context --> > <!-- > <Context path="" docBase="ROOT" debug="0"/> > --> > > <Context path="" docBase="c:/InetPub/wwwroot" debug="0" > reloadable="true"/> > > <!-- Tomcat Examples Context --> > <Context path="/examples" docBase="examples" debug="0" > reloadable="true" crossContext="true"> > <Logger className="org.apache.catalina.logger.FileLogger" > prefix="localhost_examples_log." suffix=".txt" > timestamp="true"/> > <Ejb name="ejb/EmplRecord" type="Entity" > home="com.wombat.empl.EmployeeRecordHome" > remote="com.wombat.empl.EmployeeRecord"/> > > <!-- If you wanted the examples app to be able to edit the > user database, you would uncomment the following entry. > Of course, you would want to enable security on the > application as well, so this is not done by default! > The database object could be accessed like this: > > Context initCtx = new InitialContext(); > Context envCtx = (Context) initCtx.lookup("java:comp/env"); > UserDatabase database = > (UserDatabase) envCtx.lookup("userDatabase"); > --> > <!-- > <ResourceLink name="userDatabase" global="UserDatabase" > type="org.apache.catalina.UserDatabase"/> > --> > > > <!-- PersistentManager: Uncomment the section below to test > Persistent > Sessions. > > saveOnRestart: If true, all active sessions will be saved > to the Store when Catalina is shutdown, regardless of > other settings. All Sessions found in the Store will be > loaded on startup. Sessions past their expiration are > ignored in both cases. > maxActiveSessions: If 0 or greater, having too many active > sessions will result in some being swapped out. > minIdleSwap > limits this. -1 means unlimited sessions are allowed. > 0 means sessions will almost always be swapped out after > use - this will be noticeably slow for your users. > minIdleSwap: Sessions must be idle for at least this long > (in seconds) before they will be swapped out due to > maxActiveSessions. This avoids thrashing when the site is > highly active. -1 or 0 means there is no minimum - > sessions > can be swapped out at any time. > maxIdleSwap: Sessions will be swapped out if idle for this > long (in seconds). If minIdleSwap is higher, then it will > override this. This isn't exact: it is checked > periodically. > -1 means sessions won't be swapped out for this reason, > although they may be swapped out for maxActiveSessions. > If set to >= 0, guarantees that all sessions found in the > Store will be loaded on startup. > maxIdleBackup: Sessions will be backed up (saved to the > Store, > but left in active memory) if idle for this long (in > seconds), > and all sessions found in the Store will be loaded on > startup. > If set to -1 sessions will not be backed up, 0 means they > should be backed up shortly after being used. > > To clear sessions from the Store, set maxActiveSessions, > maxIdleSwap, > and minIdleBackup all to -1, saveOnRestart to false, then > restart > Catalina. > --> > <!-- > <Manager > className="org.apache.catalina.session.PersistentManager" > debug="0" > saveOnRestart="true" > maxActiveSessions="-1" > minIdleSwap="-1" > maxIdleSwap="-1" > maxIdleBackup="-1"> > <Store className="org.apache.catalina.session.FileStore"/> > </Manager> > --> > <Environment name="maxExemptions" type="java.lang.Integer" > value="15"/> > <Parameter name="context.param.name" value="context.param.value" > override="false"/> > <Resource name="jdbc/EmployeeAppDb" auth="SERVLET" > type="javax.sql.DataSource"/> > <ResourceParams name="jdbc/EmployeeAppDb"> > <parameter><name>user</name><value>sa</value></parameter> > <parameter><name>password</name><value></value></parameter> > <parameter><name>driverClassName</name> > <value>org.hsql.jdbcDriver</value></parameter> > <parameter><name>driverName</name> > <value>jdbc:HypersonicSQL:database</value></parameter> > </ResourceParams> > <Resource name="mail/Session" auth="Container" > type="javax.mail.Session"/> > <ResourceParams name="mail/Session"> > <parameter> > <name>mail.smtp.host</name> > <value>localhost</value> > </parameter> > </ResourceParams> > <ResourceLink name="linkToGlobalResource" > global="simpleValue" > type="java.lang.Integer"/> > </Context> > > </Host> > > </Engine> > > </Service> > > </Server> > ---------------------------------------------------------------------------- > > i am trying to configure this since last three days. > > All your helps are welcome. > > Thanks, > Bharat > > > > -- View this message in context: http://www.nabble.com/HTTP-status-error-500-in-tomcat-4.1.36-tf4469083.html#a12743540 Sent from the Tomcat - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]