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]>