Did you try to put "struts.jar" on your classpath? If so it will not work --
for Tomcat (and probably many other servlet containers), you *must* put
struts.jar only in WEB-INF/lib of the web app that is using it.
Craig McClanahan
Dario Sluga wrote:
> Hi,
>
> I am trying to run struts-example under jakarta-tomcat-3.2-b8.
> It was unsuccessful.
>
> The following lines are output from a comand line:
>
> 2000-11-27 09:56:24 - ContextManager: Adding context Ctx( )
> Starting tomcat. Check logs/tomcat.log for error messages
> 2000-11-27 09:56:24 - ContextManager: Adding context Ctx( /admin )
> 2000-11-27 09:56:24 - ContextManager: Adding context Ctx( /examples )
> 2000-11-27 09:56:24 - ContextManager: Adding context Ctx( /struts-example )
> 2000-11-27 09:56:24 - ContextManager: Adding context Ctx( /struts2 )
> 2000-11-27 09:56:24 - ContextManager: Adding context Ctx( /test )
> register('-//Apache Software Foundation//DTD Struts Configuration 1.0//EN',
> 'jar:file:/I:/jakarta-struts/lib/struts.jar!/org/apache/struts/resources/str
> uts-config_1_0.dtd'
> resolveEntity('-//Apache Software Foundation//DTD Struts Configuration
> 1.0//EN', 'http://jakarta.apache.org/struts/dtds/struts-config_1_0.dtd')
> Resolving to alternate DTD
> 'jar:file:/I:/jakarta-struts/lib/struts.jar!/org/apache/struts/resources/str
> uts-config_1_0.dtd'
> New org.apache.struts.example.User
> Begin event threw exception
> java.lang.ClassNotFoundException: org.apache.struts.example.User
> at java.net.URLClassLoader$1.run(URLClassLoader.java, Compiled Code)
> at java.lang.Exception.<init>(Exception.java, Compiled Code)
> at
> java.lang.ClassNotFoundException.<init>(ClassNotFoundException.java,
> Compiled Code)
> at java.net.URLClassLoader$1.run(URLClassLoader.java, Compiled Code)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.net.URLClassLoader.findClass(URLClassLoader.java, Compiled
> Code)
> at java.lang.ClassLoader.loadClass(ClassLoader.java, Compiled Code)
> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java,
> Compiled Code)
> at java.lang.ClassLoader.loadClass(ClassLoader.java, Compiled Code)
> at java.lang.Class.forName0(Native Method)
> at java.lang.Class.forName(Class.java:124)
> at
> org.apache.struts.digester.ObjectCreateRule.begin(ObjectCreateRule.java:152)
> at org.apache.struts.digester.Digester.startElement(Digester.java,
> Compiled Code)
> at com.sun.xml.parser.Parser.maybeElement(Parser.java, Compiled
> Code)
> at com.sun.xml.parser.Parser.content(Parser.java, Compiled Code)
> at com.sun.xml.parser.Parser.maybeElement(Parser.java, Compiled
> Code)
> at com.sun.xml.parser.Parser.parseInternal(Parser.java:492)
> at com.sun.xml.parser.Parser.parse(Parser.java:284)
> at javax.xml.parsers.SAXParser.parse(SAXParser.java:155)
> at javax.xml.parsers.SAXParser.parse(SAXParser.java:77)
> at org.apache.struts.digester.Digester.parse(Digester.java:754)
> at
> org.apache.struts.example.DatabaseServlet.load(DatabaseServlet.java:282)
> at
> org.apache.struts.example.DatabaseServlet.init(DatabaseServlet.java:175)
> at javax.servlet.GenericServlet.init(GenericServlet.java:258)
> at
> org.apache.tomcat.core.ServletWrapper.doInit(ServletWrapper.java:317)
> at org.apache.tomcat.core.Handler.init(Handler.java:215)
> at
> org.apache.tomcat.core.ServletWrapper.init(ServletWrapper.java:296)
> at
> org.apache.tomcat.context.LoadOnStartupInterceptor.contextInit(LoadOnStartup
> Interceptor.java, Compiled Code)
> at
> org.apache.tomcat.core.ContextManager.initContext(ContextManager.java,
> Compiled Code)
> at org.apache.tomcat.core.ContextManager.init(ContextManager.java,
> Compiled Code)
> at org.apache.tomcat.startup.Tomcat.execute(Tomcat.java:197)
> at org.apache.tomcat.startup.Tomcat.main(Tomcat.java:237)
> cannot load servlet name: database
> cannot load servlet name: action
> New org.apache.struts.example.User
> Begin event threw exception
> java.lang.ClassNotFoundException: org.apache.struts.example.User
> at java.net.URLClassLoader$1.run(URLClassLoader.java, Compiled Code)
> at java.lang.Exception.<init>(Exception.java, Compiled Code)
> at
> java.lang.ClassNotFoundException.<init>(ClassNotFoundException.java,
> Compiled Code)
> at java.net.URLClassLoader$1.run(URLClassLoader.java, Compiled Code)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.net.URLClassLoader.findClass(URLClassLoader.java, Compiled
> Code)
> at java.lang.ClassLoader.loadClass(ClassLoader.java, Compiled Code)
> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java,
> Compiled Code)
> at java.lang.ClassLoader.loadClass(ClassLoader.java, Compiled Code)
> at java.lang.Class.forName0(Native Method)
> at java.lang.Class.forName(Class.java:124)
> at
> org.apache.struts.digester.ObjectCreateRule.begin(ObjectCreateRule.java:152)
> at org.apache.struts.digester.Digester.startElement(Digester.java,
> Compiled Code)
> at com.sun.xml.parser.Parser.maybeElement(Parser.java, Compiled
> Code)
> at com.sun.xml.parser.Parser.content(Parser.java, Compiled Code)
> at com.sun.xml.parser.Parser.maybeElement(Parser.java, Compiled
> Code)
> at com.sun.xml.parser.Parser.parseInternal(Parser.java:492)
> at com.sun.xml.parser.Parser.parse(Parser.java:284)
> at javax.xml.parsers.SAXParser.parse(SAXParser.java:155)
> at javax.xml.parsers.SAXParser.parse(SAXParser.java:77)
> at org.apache.struts.digester.Digester.parse(Digester.java:754)
> at
> org.apache.struts.example.DatabaseServlet.load(DatabaseServlet.java:282)
> at
> org.apache.struts.example.DatabaseServlet.init(DatabaseServlet.java:175)
> at javax.servlet.GenericServlet.init(GenericServlet.java:258)
> at
> org.apache.tomcat.core.ServletWrapper.doInit(ServletWrapper.java:317)
> at org.apache.tomcat.core.Handler.init(Handler.java:215)
> at
> org.apache.tomcat.core.ServletWrapper.init(ServletWrapper.java:296)
> at
> org.apache.tomcat.context.LoadOnStartupInterceptor.contextInit(LoadOnStartup
> Interceptor.java, Compiled Code)
> at
> org.apache.tomcat.core.ContextManager.initContext(ContextManager.java,
> Compiled Code)
> at org.apache.tomcat.core.ContextManager.init(ContextManager.java,
> Compiled Code)
> at org.apache.tomcat.startup.Tomcat.execute(Tomcat.java:197)
> at org.apache.tomcat.startup.Tomcat.main(Tomcat.java:237)
> cannot load servlet name: database
> cannot load servlet name: action
> 2000-11-27 09:56:26 - PoolTcpConnector: Starting HttpConnectionHandler on
> 8080
> 2000-11-27 09:56:26 - PoolTcpConnector: Starting Ajp12ConnectionHandler on
> 8007
> 2000-11-27 09:56:48 - Ctx( /struts-example ): Exception in: R(
> /struts-example + /index.jsp + null) - javax.servlet.ServletException:
> Missing resources attribute org.apache.struts.
> action.MESSAGE
> at
> org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImp
> l.java:459)
> at
> _0002findex_0002ejspindex_jsp_0._jspService(_0002findex_0002ejspindex_jsp_0.
> java:321)
> at
> org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:119)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> at
> org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.ja
> va:177)
> at
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:318)
> at org.apache.jasper.servlet.JspServlet.service(JspServlet.java,
> Compiled Code)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> at
> org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
> at org.apache.tomcat.core.Handler.service(Handler.java:286)
> at
> org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
> at
> org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:79
> 7)
> at
> org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
> at
> org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpC
> onnectionHandler.java:210)
> at
> org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java,
> Compiled Code)
> at
> org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java,
> Compiled Code)
> at java.lang.Thread.run(Thread.java:479)
> Root cause:
> javax.servlet.jsp.JspException: Missing resources attribute
> org.apache.struts.action.MESSAGE
> at
> org.apache.struts.taglib.bean.MessageTag.doStartTag(MessageTag.java:232)
> at
> _0002findex_0002ejspindex_jsp_0._jspService(_0002findex_0002ejspindex_jsp_0.
> java:98)
> at
> org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:119)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> at
> org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.ja
> va:177)
> at
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:318)
> at org.apache.jasper.servlet.JspServlet.service(JspServlet.java,
> Compiled Code)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> at
> org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
> at org.apache.tomcat.core.Handler.service(Handler.java:286)
> at
> org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
> at
> org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:79
> 7)
> at
> org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
> at
> org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpC
> onnectionHandler.java:210)
> at
> org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java,
> Compiled Code)
> at
> org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java,
> Compiled Code)
>
> The following lines are output on the browser window:
> Error: 500
> Location: /struts-example/index.jsp
> Internal Servlet Error:
> javax.servlet.ServletException: Missing resources attribute
> org.apache.struts.action.MESSAGE
> at
> org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImp
> l.java:459)
> at
> _0002findex_0002ejspindex_jsp_0._jspService(_0002findex_0002ejspindex_jsp_0.
> java:321)
> at
> org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:119)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> at
> org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.ja
> va:177)
> at
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:318)
> at org.apache.jasper.servlet.JspServlet.service(JspServlet.java,
> Compiled Code)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> at
> org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
> at org.apache.tomcat.core.Handler.service(Handler.java, Compiled
> Code)
> at
> org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java, Compiled
> Code)
> at
> org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:79
> 7)
> at
> org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
> at
> org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpC
> onnectionHandler.java:210)
> at
> org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java,
> Compiled Code)
> at
> org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java,
> Compiled Code)
> at java.lang.Thread.run(Thread.java:479)
> Root cause:
> javax.servlet.jsp.JspException: Missing resources attribute
> org.apache.struts.action.MESSAGE
> at
> org.apache.struts.taglib.bean.MessageTag.doStartTag(MessageTag.java:232)
> at
> _0002findex_0002ejspindex_jsp_0._jspService(_0002findex_0002ejspindex_jsp_0.
> java:98)
> at
> org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:119)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> at
> org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.ja
> va:177)
> at
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:318)
> at org.apache.jasper.servlet.JspServlet.service(JspServlet.java,
> Compiled Code)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
> at
> org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
> at org.apache.tomcat.core.Handler.service(Handler.java, Compiled
> Code)
> at
> org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java, Compiled
> Code)
> at
> org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:79
> 7)
> at
> org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
> at
> org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpC
> onnectionHandler.java:210)
> at
> org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java,
> Compiled Code)
> at
> org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java,
> Compiled Code)
> at java.lang.Thread.run(Thread.java:479)
>
> I appreciate any advice.
>
> Regards,
>
> Dario
>
> ---------------------------------
> E-Mail: [EMAIL PROTECTED]
> ---------------------------------