Just a "preemptive question," Mark. Is your servlet's class object really called "myservlet.class" rather than, say, "MyServlet.class"?
-----Original Message----- From: Mark <[EMAIL PROTECTED]> To: Tomcat Users List <[EMAIL PROTECTED]> Date: Monday, November 26, 2001 7:00 AM Subject: Re: TC 4.0 newbie - servlet app won't run >Thanks for your reply Scott, and thanks to your and Micael's responses I >_believe_ I understand the relationship between the servlet naming/mapping >and the associated html. As Micael noted, one could put "pudding" in the >url-pattern as long as the html was setup as ACTION="pudding". But... how >do the example servlets work when they don't seem to have any servlet >mapping in the ..\examples\WEB-INF\web.xml? > >Even after all the advice, I *STILL* can't get my app to run - I still get >a 404 error on the servlet. This seems like such a simple issue but I can >NOT get past it. I've even gone as far as downloading Tomcat 3.3, with the >same result. Again, I know Tomcat is parsing my web.xml, because if I >intentionally make a typo, the parser complains when Tomcat is started. > >To recap where I am: > >(a) I have myservlet.class in the >$CATALINA_HOME\webapps\myapp\WEB-INF\classes > directory. The servlet has no associated package. >(b) The html is <FORM ACTION="/servlet/myservlet" method="POST"> >(c) My $CATALINA_HOME\webapps\myapp\WEB-INF\web.xml is as follows: > > <?xml version="1.0" encoding="ISO-8859-1"?> > > <!DOCTYPE web-app > PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" > "http://java.sun.com/dtd/web-app_2_3.dtd"> > > <web-app> > <servlet> > <servlet-name>myservlet</servlet-name> > <servlet-class>myservlet</servlet-class> > </servlet> > <servlet-mapping> > <servlet-name>myservlet</servlet-name> > <url-pattern>/servlet/myservlet</url-pattern> > </servlet-mapping> > </web-app> > > >Am I still missing something? This is driving me berserk... > >TIA. Mark. > > > >At 12:22 AM 11/22/2001 -0500, you wrote: >>Mark, >> >>The servlet tag is used to assign a name to a particular servlet class >>file. >> >> <servlet> >> <servlet-name>myservlet</servlet-name> >> <servlet-class>myservlet</servlet-class> >> </servlet> >> >>This would attempt to assign the name 'myservlet' to the class >>'myservlet.class.' >> >>The servlet-mapping tag defines the pattern or 'location' of a named >>servlet from the root of your context. This means that .... >> >><servlet-mapping> >> <servlet-name>myservlet</servlet-name> >> <url-pattern>/classes</url-pattern> >> </servlet-mapping> >> >>if this were the ROOT context, this would map your servlet at /classes >>and your form action would need to be defined as >> >><FORM ACTION="/classes" method="POST"> >> >>A more common mapping for servlets is >> >><servlet-mapping> >> <servlet-name>myservlet</servlet-name> >> <url-pattern>/servlet/myservlet</url-pattern> >> </servlet-mapping> >> >>which would have a coresponding form tag of >> >><FORM ACTION="/servlet/myservlet" method="POST"> >> >> >>~Scott >> >>Mark wrote: >> >>>I installed Tomcat 4.0.1 under Win 2k using JDK 1.3 and able to run the >>>example servlets, but not my own. My html displays and I can execute my >>>JSPs, but a POST to a servlet does not work (this app has run under Forte >>>and VA Java in the past). I get a 404 error with "the requested resource >>>(/myservlet) is not available". Since the examples work, I have to assume >>>it's something in my configuration. Any help figuring out why the servlet >>>won't run would be *greatly* appreciated. I suspect it's something >>>simple/braindead on my part. >>> >>> >>>o My directory structure for the app: >>> TomcatHome >>> | >>> +--webapps >>> | >>> +--myapp\.jsp, .html .gif >>> | >>> +--WEB-INF\web.xml >>> | >>> +--classes\.class files >>> >>> >>>o My html POST stmt. I've tried various path prefixes to myservlet, eg > >>> "classes/myservlet". As with the Tomcat examples, this servlet has no >>> package: >>> >>> <FORM ACTION="/myservlet" method="POST"> >>> >>> >>>o My web.xml - I know Tomcat's seeing/parsing this because if I >deliberately >>> make a typo I get an error upon startup: >>> >>> <?xml version="1.0" encoding="ISO-8859-1"?> >>> <!DOCTYPE web-app >>> PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" >>> "http://java.sun.com/dtd/web-app_2_3.dtd"> >>> <web-app> >>> <!-- Define servlets that are included in the application --> >>> <servlet> >>> <servlet-name>myservlet</servlet-name> >>> <servlet-class>myservlet</servlet-class> >>> </servlet> >>> <servlet-mapping> >>> <servlet-name>myservlet</servlet-name> >>> <url-pattern>/classes</url-pattern> >>> </servlet-mapping> >>> </web-app> >>> >>> >>>o Update to server.xml >>> >>> <Context path="/myapp" docBase="myapp" debug="0"> >>> <Logger className="org.apache.catalina.logger.FileLogger" >>> prefix="myapp_log." suffix=".txt" >>> timestamp="true"/> >>> </Context> >>> >>> >>> >>> >>> >>> >>> >>> >>>-- >>>To unsubscribe: <mailto:[EMAIL PROTECTED]> >>>For additional commands: <mailto:[EMAIL PROTECTED]> >>>Troubles with the list: <mailto:[EMAIL PROTECTED]> >>> >>> >>> >>> >> >> >> >> >> >>-- >>To unsubscribe: <mailto:[EMAIL PROTECTED]> >>For additional commands: <mailto:[EMAIL PROTECTED]> >>Troubles with the list: <mailto:[EMAIL PROTECTED]> >> >> > > >-- >To unsubscribe: <mailto:[EMAIL PROTECTED]> >For additional commands: <mailto:[EMAIL PROTECTED]> >Troubles with the list: <mailto:[EMAIL PROTECTED]> > > -- To unsubscribe: <mailto:[EMAIL PROTECTED]> For additional commands: <mailto:[EMAIL PROTECTED]> Troubles with the list: <mailto:[EMAIL PROTECTED]>