You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by Claire Wall <cl...@kurtosys.com> on 2004/01/16 10:22:29 UTC

weird Tomcat prob

Hi,

I have a struts application which i am deploying to another server which is running Tomcat 4.1.29 via a WAR file. The application works fine except for one problem:

I have a servlet which loads on start-up via the following declaration in web.xml:

  <servlet>
    <servlet-name>hasAttachments</servlet-name>
    <servlet-class>HasAttachmentsServlet</servlet-class>
    <load-on-startup>5</load-on-startup>
  </servlet>


It loads up fine - the servlet is found as it is logging to the log file that it is loaded. However, when I try to access this servlet it does not find the servlet at all. The servlet has a doGet() method which just passes back some text to be outputted. I call it like this: http://localhost:8080/CRM/servlet/hasAttachments. I get the following error message:


org.apache.jasper.JasperException: Exception reading resource http://localhost:8080/CRM/servlet/hasAttachments;jsessionid=B0636FAB02DF85F4E4980AF8092618AF?context=12&upload=false: java.io.FileNotFoundException: http://localhost:8080/CRM/servlet/hasAttachments;jsessionid=B0636FAB02DF85F4E4980AF8092618AF?context=12&upload=false
 at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:254)
 at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
 at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
 at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:684)
 at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:575)
 at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:498)
 at org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:822)
 at org.apache.jsp.identification_jsp._jspService(identification_jsp.java:278)
 at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
 at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:210)
 at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
 at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
 at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:684)
 at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:432)
 at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:356)
 at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1069)
 at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:455)
 at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279)
 at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
 at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
 at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
 at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
 at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
 at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
 at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
 at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2417)
 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
 at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
 at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
 at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
 at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
 at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
 at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
 at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
 at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:193)
 at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:781)
 at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:549)
 at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:589)
 at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:666)
 at java.lang.Thread.run(Thread.java:534)
----- Root Cause -----
javax.servlet.ServletException: Exception reading resource http://192.168.254.4:8080/CRM/servlet/hasAttachments;jsessionid=B0636FAB02DF85F4E4980AF8092618AF?context=12&upload=false: java.io.FileNotFoundException: http://192.168.254.4:8080/CRM/servlet/hasAttachments;jsessionid=B0636FAB02DF85F4E4980AF8092618AF?context=12&upload=false
 at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:533)
 at org.apache.jsp.incAttachment_jsp._jspService(incAttachment_jsp.java:120)
 at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
 at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:210)
 at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
 at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
 at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:684)
 at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:575)
 at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:498)
 at org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:822)
 at org.apache.jsp.identification_jsp._jspService(identification_jsp.java:278)
 at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
 at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:210)
 at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
 at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
 at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:684)
 at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:432)
 at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:356)
 at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1069)
 at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:455)
 at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279)
 at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
 at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
 at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)
 at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
 at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
 at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
 at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
 at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2417)
 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
 at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
 at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)
 at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
 at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
 at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
 at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
 at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
 at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:193)
 at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:781)
 at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:549)
 at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:589)
 at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:666)
 at java.lang.Thread.run(Thread.java:534)



I know that the servlet is there and it's found it because it is successfully starting on loadup! Funny thing is that I've installed this application on another server running the same version of Tomcat and it has no problems - the servlet is found fine. I've tried reinstalling Tomcat but this doesn't help. What could be going wrong? It may be worthy to note that the two Tomcats have the exact same JAR files in their common folder.

any help would be greatly appreciated as its doin my head in!

claire :)

Re: weird Tomcat prob

Posted by Claire Wall <cl...@kurtosys.com>.
i've just this minute fixed the problem - the servlet mapping for servlets
(/servlet/) was commented out in the web.xml file in the Tomcat conf folder
for some reason - this must be what it is like when Tomcat is first
installed - knew it would be something small and annoying.

cheers :)

claire


----- Original Message -----
From: "Max Cooper" <ma...@maxcooper.com>
To: "Struts Users Mailing List" <st...@jakarta.apache.org>
Sent: Friday, January 16, 2004 10:08 AM
Subject: Re: weird Tomcat prob


> My guess is that it is finding and executing the servlet, but that
something
> goes wrong while the servlet is being processed. It looks like it drops
down
> into some JSPs, and that seems to be the source of the exception.
>
> We need to know more about what that servlet does. I see Struts classes in
> the stack trace. It also seems like there might be an 'identification.jsp'
> file that includes an 'incAttachment.jsp' file. Can you look at line 120
of
> the incAttachment_jsp.java file that Tomcat generates when it transforms
the
> JSP file into a Java class? It might have comments that tell you what the
> line number in the incAttachment.jsp file is causing the exception.
>
> -Max
>
> ----- Original Message -----
> From: "Claire Wall" <cl...@kurtosys.com>
> To: "Struts Users Mailing List" <st...@jakarta.apache.org>
> Sent: Friday, January 16, 2004 1:22 AM
> Subject: weird Tomcat prob
>
>
> Hi,
>
> I have a struts application which i am deploying to another server which
is
> running Tomcat 4.1.29 via a WAR file. The application works fine except
for
> one problem:
>
> I have a servlet which loads on start-up via the following declaration in
> web.xml:
>
>   <servlet>
>     <servlet-name>hasAttachments</servlet-name>
>     <servlet-class>HasAttachmentsServlet</servlet-class>
>     <load-on-startup>5</load-on-startup>
>   </servlet>
>
>
> It loads up fine - the servlet is found as it is logging to the log file
> that it is loaded. However, when I try to access this servlet it does not
> find the servlet at all. The servlet has a doGet() method which just
passes
> back some text to be outputted. I call it like this:
> http://localhost:8080/CRM/servlet/hasAttachments. I get the following
error
> message:
>
>
> org.apache.jasper.JasperException: Exception reading resource
>
http://localhost:8080/CRM/servlet/hasAttachments;jsessionid=B0636FAB02DF85F4
E4980AF8092618AF?context=12&upload=false:
> java.io.FileNotFoundException:
>
http://localhost:8080/CRM/servlet/hasAttachments;jsessionid=B0636FAB02DF85F4
E4980AF8092618AF?context=12&upload=false
>  at
>
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:2
> 54)
>  at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
>  at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>  at
>
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.
> java:684)
>  at
>
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatch
> er.java:575)
>  at
>
org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher
> .java:498)
>  at
>
org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:8
> 22)
>  at
> org.apache.jsp.identification_jsp._jspService(identification_jsp.java:278)
>  at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>  at
>
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:2
> 10)
>  at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
>  at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>  at
>
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.
> java:684)
>  at
>
org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatch
> er.java:432)
>  at
>
org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher
> .java:356)
>  at
>
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:10
> 69)
>  at
>
org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProces
> sor.java:455)
>  at
>
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279)
>  at
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
>  at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>  at
>
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
> FilterChain.java:247)
>  at
>
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
> ain.java:193)
>  at
>
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
> va:256)
>  at
>
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> eNext(StandardPipeline.java:643)
>  at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>  at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>  at
>
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
> va:191)
>  at
>
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> eNext(StandardPipeline.java:643)
>  at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>  at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>  at
> org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2417)
>  at
>
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180
> )
>  at
>
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> eNext(StandardPipeline.java:643)
>  at
>
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.
> java:171)
>  at
>
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> eNext(StandardPipeline.java:641)
>  at
>
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172
> )
>  at
>
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> eNext(StandardPipeline.java:641)
>  at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>  at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>  at
>
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
> :174)
>  at
>
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> eNext(StandardPipeline.java:643)
>  at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>  at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>  at
org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:193)
>  at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:781)
>  at
>
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConne
> ction(Http11Protocol.java:549)
>  at
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:589)
>  at
>
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav
> a:666)
>  at java.lang.Thread.run(Thread.java:534)
> ----- Root Cause -----
> javax.servlet.ServletException: Exception reading resource
>
http://192.168.254.4:8080/CRM/servlet/hasAttachments;jsessionid=B0636FAB02DF
85F4E4980AF8092618AF?context=12&upload=false:
> java.io.FileNotFoundException:
>
http://192.168.254.4:8080/CRM/servlet/hasAttachments;jsessionid=B0636FAB02DF
85F4E4980AF8092618AF?context=12&upload=false
>  at
>
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImp
> l.java:533)
>  at
org.apache.jsp.incAttachment_jsp._jspService(incAttachment_jsp.java:120)
>  at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>  at
>
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:2
> 10)
>  at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
>  at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>  at
>
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.
> java:684)
>  at
>
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatch
> er.java:575)
>  at
>
org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher
> .java:498)
>  at
>
org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:8
> 22)
>  at
> org.apache.jsp.identification_jsp._jspService(identification_jsp.java:278)
>  at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>  at
>
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:2
> 10)
>  at
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
>  at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>  at
>
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.
> java:684)
>  at
>
org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatch
> er.java:432)
>  at
>
org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher
> .java:356)
>  at
>
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:10
> 69)
>  at
>
org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProces
> sor.java:455)
>  at
>
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279)
>  at
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
>  at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
>  at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
>  at
>
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
> FilterChain.java:247)
>  at
>
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
> ain.java:193)
>  at
>
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
> va:256)
>  at
>
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> eNext(StandardPipeline.java:643)
>  at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>  at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>  at
>
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
> va:191)
>  at
>
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> eNext(StandardPipeline.java:643)
>  at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>  at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>  at
> org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2417)
>  at
>
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180
> )
>  at
>
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> eNext(StandardPipeline.java:643)
>  at
>
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.
> java:171)
>  at
>
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> eNext(StandardPipeline.java:641)
>  at
>
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172
> )
>  at
>
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> eNext(StandardPipeline.java:641)
>  at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>  at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>  at
>
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
> :174)
>  at
>
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
> eNext(StandardPipeline.java:643)
>  at
>
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
>  at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
>  at
org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:193)
>  at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:781)
>  at
>
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConne
> ction(Http11Protocol.java:549)
>  at
> org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:589)
>  at
>
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav
> a:666)
>  at java.lang.Thread.run(Thread.java:534)
>
>
>
> I know that the servlet is there and it's found it because it is
> successfully starting on loadup! Funny thing is that I've installed this
> application on another server running the same version of Tomcat and it
has
> no problems - the servlet is found fine. I've tried reinstalling Tomcat
but
> this doesn't help. What could be going wrong? It may be worthy to note
that
> the two Tomcats have the exact same JAR files in their common folder.
>
> any help would be greatly appreciated as its doin my head in!
>
> claire :)
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: struts-user-help@jakarta.apache.org
>
>



---------------------------------------------------------------------
To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: struts-user-help@jakarta.apache.org


Re: weird Tomcat prob

Posted by Max Cooper <ma...@maxcooper.com>.
My guess is that it is finding and executing the servlet, but that something
goes wrong while the servlet is being processed. It looks like it drops down
into some JSPs, and that seems to be the source of the exception.

We need to know more about what that servlet does. I see Struts classes in
the stack trace. It also seems like there might be an 'identification.jsp'
file that includes an 'incAttachment.jsp' file. Can you look at line 120 of
the incAttachment_jsp.java file that Tomcat generates when it transforms the
JSP file into a Java class? It might have comments that tell you what the
line number in the incAttachment.jsp file is causing the exception.

-Max

----- Original Message ----- 
From: "Claire Wall" <cl...@kurtosys.com>
To: "Struts Users Mailing List" <st...@jakarta.apache.org>
Sent: Friday, January 16, 2004 1:22 AM
Subject: weird Tomcat prob


Hi,

I have a struts application which i am deploying to another server which is
running Tomcat 4.1.29 via a WAR file. The application works fine except for
one problem:

I have a servlet which loads on start-up via the following declaration in
web.xml:

  <servlet>
    <servlet-name>hasAttachments</servlet-name>
    <servlet-class>HasAttachmentsServlet</servlet-class>
    <load-on-startup>5</load-on-startup>
  </servlet>


It loads up fine - the servlet is found as it is logging to the log file
that it is loaded. However, when I try to access this servlet it does not
find the servlet at all. The servlet has a doGet() method which just passes
back some text to be outputted. I call it like this:
http://localhost:8080/CRM/servlet/hasAttachments. I get the following error
message:


org.apache.jasper.JasperException: Exception reading resource
http://localhost:8080/CRM/servlet/hasAttachments;jsessionid=B0636FAB02DF85F4E4980AF8092618AF?context=12&upload=false:
java.io.FileNotFoundException:
http://localhost:8080/CRM/servlet/hasAttachments;jsessionid=B0636FAB02DF85F4E4980AF8092618AF?context=12&upload=false
 at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:2
54)
 at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
 at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
 at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.
java:684)
 at
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatch
er.java:575)
 at
org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher
.java:498)
 at
org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:8
22)
 at
org.apache.jsp.identification_jsp._jspService(identification_jsp.java:278)
 at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
 at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:2
10)
 at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
 at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
 at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.
java:684)
 at
org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatch
er.java:432)
 at
org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher
.java:356)
 at
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:10
69)
 at
org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProces
sor.java:455)
 at
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279)
 at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
 at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
 at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:247)
 at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:193)
 at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
va:256)
 at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
 at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
 at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
va:191)
 at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
 at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
 at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2417)
 at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180
)
 at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
 at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.
java:171)
 at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:641)
 at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172
)
 at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:641)
 at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
 at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
:174)
 at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
 at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
 at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:193)
 at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:781)
 at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConne
ction(Http11Protocol.java:549)
 at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:589)
 at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav
a:666)
 at java.lang.Thread.run(Thread.java:534)
----- Root Cause -----
javax.servlet.ServletException: Exception reading resource
http://192.168.254.4:8080/CRM/servlet/hasAttachments;jsessionid=B0636FAB02DF85F4E4980AF8092618AF?context=12&upload=false:
java.io.FileNotFoundException:
http://192.168.254.4:8080/CRM/servlet/hasAttachments;jsessionid=B0636FAB02DF85F4E4980AF8092618AF?context=12&upload=false
 at
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImp
l.java:533)
 at org.apache.jsp.incAttachment_jsp._jspService(incAttachment_jsp.java:120)
 at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
 at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:2
10)
 at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
 at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
 at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.
java:684)
 at
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatch
er.java:575)
 at
org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher
.java:498)
 at
org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:8
22)
 at
org.apache.jsp.identification_jsp._jspService(identification_jsp.java:278)
 at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
 at
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:2
10)
 at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
 at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
 at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.
java:684)
 at
org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatch
er.java:432)
 at
org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher
.java:356)
 at
org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:10
69)
 at
org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProces
sor.java:455)
 at
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:279)
 at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
 at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
 at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:247)
 at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:193)
 at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
va:256)
 at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
 at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
 at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
va:191)
 at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
 at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
 at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2417)
 at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180
)
 at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
 at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.
java:171)
 at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:641)
 at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172
)
 at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:641)
 at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
 at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
:174)
 at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:643)
 at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
 at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
 at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:193)
 at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:781)
 at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConne
ction(Http11Protocol.java:549)
 at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:589)
 at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav
a:666)
 at java.lang.Thread.run(Thread.java:534)



I know that the servlet is there and it's found it because it is
successfully starting on loadup! Funny thing is that I've installed this
application on another server running the same version of Tomcat and it has
no problems - the servlet is found fine. I've tried reinstalling Tomcat but
this doesn't help. What could be going wrong? It may be worthy to note that
the two Tomcats have the exact same JAR files in their common folder.

any help would be greatly appreciated as its doin my head in!

claire :)


---------------------------------------------------------------------
To unsubscribe, e-mail: struts-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: struts-user-help@jakarta.apache.org