Excellent, tried running that JSP and it revealed the true error:

A missing jar file on the deployment box. The jar is expected in tomcat/common/lib directory.

I've added it to my application lib directory and the problem has disappeared.

Thanks for your help
Robin

The error shown:

17-Jul 12:31:12 ERROR TP-Processor5 [StandardWrapperValve.invoke] Servlet.service() for servlet jsp threw exception
java.lang.NoClassDefFoundError: org/apache/commons/collections/FastHashMap
at org.apache.struts.action.ActionServlet.<init>(ActionServlet.java:348) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
       at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
       at java.lang.Class.newInstance0(Class.java:350)
       at java.lang.Class.newInstance(Class.java:303)
at org.apache.jsp.pages.test_jsp._jspService(org.apache.jsp.pages.test_jsp:47) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:99)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:325) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
       at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:245)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:214) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) at org.apache.catalina.valves.FastCommonAccessLogValve.invoke(FastCommonAccessLogValve.java:481) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:526) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:306) at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:385)
       at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:745)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:675) at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:868) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
       at java.lang.Thread.run(Thread.java:595)

From: "Frank W. Zammetti" <[EMAIL PROTECTED]>
Reply-To: "Struts Users Mailing List" <user@struts.apache.org>
To: "Struts Users Mailing List" <user@struts.apache.org>
CC: user@struts.apache.org
Subject: Re: ActionServlet failing to load
Date: Sun, 17 Jul 2005 12:18:14 -0400 (EDT)

Is there any chance struts.jar is simply not in the classpath?

The stack trace seems to indicate your not even getting into Struts code,
so its I think either (a) not finding the ActionServlet class or (b)
failing during construction.  The first seems far more likely.

I suppose an easy way to test would be to remove the ActionServlet entry
from web.xml, then just have a simple JSP that tries to dynamically load
the class...

<%@ page language="java" import="org.apache.struts.action.*" %>
<%
  try {
    Class clazz = Class.forName("org.apache.struts.action.ActionServlet");
    ActionServlet as = (ActionServlet)clazz.newInstance();
  } catch (Exception e) {
    e.printStackTrace();
  }
%>

...and see if you get an exception... Looking at the ActionServlet source
for 1.2.6, unless I'm missing something, it's just using the default
constructor, so I very much doubt its a construction problem.

--
Frank W. Zammetti
Founder and Chief Software Architect
Omnytex Technologies
http://www.omnytex.com

On Sun, July 17, 2005 12:02 pm, Robin Mannering said:
> Sure, I've just included the relevant bits I hope.
>
> The strtup serlvet loads just fine by the way..
>
> web.xml snippet
> -----------------------
>
>
>    <!-- Standard Action Servlet Configuration (with debugging) -->
>    <servlet>
>            <servlet-name>action</servlet-name>
>            
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
>            <init-param>
>                    <param-name>config</param-name>
>                    <param-value>/WEB-INF/struts-config.xml</param-value>
>            </init-param>
>            <init-param>
>                    <param-name>debug</param-name>
>                    <param-value>2</param-value>
>            </init-param>
>            <init-param>
>                    <param-name>detail</param-name>
>                    <param-value>2</param-value>
>            </init-param>
>
>            <!--
>                    The name of the application resource bundle, styled as a 
classname
>                    To refer to a file named application.properties in a 
package
>                    named resources, use resources.application here
>            -->
>            <init-param>
>                    <param-name>application</param-name>
>                    
<param-value>uk.co.sibo.buyone.struts.resources.sibo</param-value>
>            </init-param>
>            <load-on-startup>2</load-on-startup>
>    </servlet>
>    <servlet>
>            <servlet-name>StartupServlet</servlet-name>
>
> <servlet-class>uk.co.sibo.buyone.servlets.StartupServlet</servlet-class>
>        <load-on-startup>3</load-on-startup>
>    </servlet>
>
>    <servlet-mapping>
>            <servlet-name>action</servlet-name>
>            <url-pattern>*.htm</url-pattern>
>    </servlet-mapping>
>
>   <servlet-mapping>
>     <servlet-name>StartupServlet</servlet-name>
>     <url-pattern>/servlets/StartupServlet</url-pattern>
>   </servlet-mapping>
>
> Struts-config.xml snippet
> ----------------------------------
> <?xml version="1.0" encoding="ISO-8859-1" ?>
>
> <!DOCTYPE struts-config PUBLIC
>           "-//Apache Software Foundation//DTD Struts Configuration
> 1.1//EN"
>           "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd";>
>
> <struts-config>
>
>     <form-beans>
>
>     </form-beans>
>
>     <global-exceptions>
>
>
>     </global-exceptions>
>
>
>     <global-forwards>
>
>         <forward name="welcome" path="/welcome.htm"/>
>
>     </global-forwards>
>
>     <action-mappings>
>
>
>         <action
>             path="/welcome"
>             type="org.apache.struts.actions.ForwardAction"
>             parameter=".welcomeDefinition"/>
>
>
>     </action-mappings>
>
>    <plug-in
>        className="org.apache.struts.tiles.TilesPlugin">
>        <set-property
>            property="definitions-config"
>            value="/WEB-INF/tiles-defs.xml"/>
>    </plug-in>
>
>
> </struts-config>
>
>
> index.jsp
> ------------
> <jsp:include page="/welcome.htm" />
>
>>From: "Martin Gainty" <[EMAIL PROTECTED]>
>>Reply-To: "Martin Gainty" <[EMAIL PROTECTED]>
>>To: "Struts Users Mailing List" <user@struts.apache.org>
>>Subject: Re: ActionServlet failing to load
>>Date: Sun, 17 Jul 2005 10:43:29 -0400
>>
>>Hard to decipher without knowing the 'root cause'
>>can we see the contents of your
>>web.xml
>>index.jsp
>>struts-config.xml
>>
>>M-
>>----- Original Message ----- From: "Robin Mannering"
>><[EMAIL PROTECTED]>
>>To: <user@struts.apache.org>
>>Sent: Sunday, July 17, 2005 9:55 AM
>>Subject: ActionServlet failing to load
>>
>>
>>>Hi all,
>>>
>>>I'm having a bizarre problem upon application startup where the
>>>ActionServlet is failing to load.
>>>
>>>This only happens on our deployment server, and the ActionServlet loads
>>>normally whilst on our dev machine.
>>>
>>>Does anyone have on ideas on the below error?  I'd be very grateful for
>>>any help.
>>>
>>>17-Jul 09:53:30 INFO  main [ApplicationContext.log] Marking servlet
>>> action
>>>as unavailable
>>>17-Jul 09:53:30 ERROR main [ApplicationContext.log] Servlet /sibo threw
>>>load() exception
>>>javax.servlet.ServletException: Error instantiating servlet class
>>>org.apache.struts.action.ActionServlet
>>>        at
>>>org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1034)
>>>        at
>>>org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:900)
>>>        at
>>>org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3823)
>>>        at
>>>org.apache.catalina.core.StandardContext.start(StandardContext.java:4087)
>>>        at
>>>org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1011)
>>>        at
>>>org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
>>>        at
>>>org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1011)
>>>        at
>>>org.apache.catalina.core.StandardEngine.start(StandardEngine.java:440)
>>>        at
>>>org.apache.catalina.core.StandardService.start(StandardService.java:450)
>>>        at
>>>org.apache.catalina.core.StandardServer.start(StandardServer.java:683)
>>> at org.apache.catalina.startup.Catalina.start(Catalina.java:537)
>>>        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:585)
>>>        at
>>> org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:271)
>>>        at
>>> org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:409)
>>>17-Jul 09:53:30 DEBUG main [JspRuntimeContext.<init>] Parent class
>>> loader
>>>is: WebappClassLoader
>>>  delegate: false
>>>  repositories:
>>>    /WEB-INF/classes/
>>>----------> Parent Classloader:
>>>[EMAIL PROTECTED]
>>>
>>>
>>>Many thanks
>>>Robin
>>>
>>>_________________________________________________________________
>>>It's fast, it's easy and it's free. Get MSN Messenger 7.0 today!
>>>http://messenger.msn.co.uk
>>>
>>>
>>>---------------------------------------------------------------------
>>>To unsubscribe, e-mail: [EMAIL PROTECTED]
>>>For additional commands, e-mail: [EMAIL PROTECTED]
>>>
>>>
>>
>>---------------------------------------------------------------------
>>To unsubscribe, e-mail: [EMAIL PROTECTED]
>>For additional commands, e-mail: [EMAIL PROTECTED]
>>
>
> _________________________________________________________________
> Be the first to hear what's new at MSN - sign up to our free newsletters!
> http://www.msn.co.uk/newsletters
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


_________________________________________________________________
It's fast, it's easy and it's free. Get MSN Messenger 7.0 today! http://messenger.msn.co.uk


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to