Doubt regarding web.xml

I have a serlet that is using a file which contains the list of email addresses. I have passed that file in init method. But when I execute that I am getting error. I guess I have to make some changes in my web.xml file. Can anyone tell me how to do that.
In my init method I have used the following like to get the file:
filename = config.getInitParameter("addressfile");
Also tell me where we have to place the file-addressfile.
And also tell me whst code in web.xml will make it work.
This is the code
import java.util.Vector;
import java.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class ListManagerServlet extends HttpServlet
private Vector addresses;
private String filename;
public void init(ServletConfig config) throws ServletException
super.init(config);
System.out.println("Before");
filename = config.getInitParameter("addressfile");
if(filename == null)
throw new UnavailableException(this,
"The \"addressfile\" property "+
"must be set to a file name");
try
     System.out.println("After");
ObjectInputStream in =
new ObjectInputStream(new FileInputStream(filename));
addresses = (Vector)in.readObject();
in.close();
catch(FileNotFoundException e) { addresses = new Vector(); }
catch(Exception e)
throw new UnavailableException(this,
"Error reading address file: "+e);
protected void doGet(HttpServletRequest req,
HttpServletResponse res)
throws ServletException, IOException
res.setContentType("text/html");
res.setHeader("pragma", "no-cache");
PrintWriter out = res.getWriter();
out.print("<HTML><HEAD><TITLE>List Manager</TITLE></HEAD>");
out.print("<BODY><H3>Members:</H3><UL>");
for(int i=0; i<addresses.size(); i++)
out.print("<LI>" + addresses.elementAt(i));
out.print("</UL><HR><FORM METHOD=POST>");
out.print("Enter your email address: <INPUT TYPE=TEXT NAME=email><BR>");
out.print("<INPUT TYPE=SUBMIT NAME=action VALUE=subscribe>");
out.print("<INPUT TYPE=SUBMIT NAME=action VALUE=unsubscribe>");
out.print("</FORM></BODY></HTML>");
out.close();
protected void doPost(HttpServletRequest req,
HttpServletResponse res)
throws ServletException, IOException
String email = req.getParameter("email");
String msg;
if(email == null)
res.sendError(res.SC_BAD_REQUEST,
"No email address specified.");
return;
if(req.getParameter("action").equals("subscribe"))
if(subscribe(email))
msg = "Address " + email + " has been subscribed.";
else
res.sendError(res.SC_BAD_REQUEST,
"Address " + email + " was already subscribed.");
return;
else
if(unsubscribe(email))
msg = "Address " + email + " has been removed.";
else
res.sendError(res.SC_BAD_REQUEST,
"Address " + email + " was not subscribed.");
return;
res.setContentType("text/html");
res.setHeader("pragma", "no-cache");
PrintWriter out = res.getWriter();
out.print("<HTML><HEAD><TITLE>List Manager</TITLE></HEAD><BODY>");
out.print(msg);
out.print("<HR><A HREF=\"");
out.print(req.getRequestURI());
out.print("\">Show the list</A></BODY></HTML>");
out.close();
public String getServletInfo()
return "ListManagerServlet 1.0 by Stefan Zeiger";
private synchronized boolean subscribe(String email) throws IOException
if(addresses.contains(email)) return false;
addresses.addElement(email);
save();
return true;
private synchronized boolean unsubscribe(String email) throws IOException
if(!addresses.removeElement(email)) return false;
save();
return true;
private void save() throws IOException
ObjectOutputStream out =
new ObjectOutputStream(new FileOutputStream(filename));
out.writeObject(addresses);
out.close();
Message was edited by:
aniketh_parmar

I want to know what chnages we have to make in web.xml so that my servlet can use the file that I have passed in init method.
Please reply

Similar Messages

  • Clarification regarding web.xml

    Hi
    we have written the following steps in web.xml.
    <init-param>
    <param-name>debug</param-name>
    <param-value>3</param-value>
    </init-param>
    <init-param>
    <param-name>detail</param-name>
    <param-value>3</param-value>
    </init-param>
    so, what is the main purpose of these init-params

    You've added these to a <servlet> element right? And I'm assuming that this isnt' your servlet or you'd have seen them being used in the code.
    Basically, they're initialization parameters that are passed to your servlet via the ServletConfig object and which you can access.
    For example, you could define your DB URL ( though that would probably be better off as a <context-param> instead ) here, in your web.xml and then use the string in your servlet instead of hardcoding it. This way, changes would be easier.
    In your case, you're adding two parameters, debug=3 and detail=3. When you use ServletConfig.getInitParameter("debug") or ServletConfig.getInitParameter("detail"), you'll get values of 3 and 3.

  • Doubts regarding web development

    hi friends.. iam going to design an web application with jsp,struts,mysql.I need to know how to build strong design while in developing web application.. anyone can tell me the links that related to Web development strategies or anyone tell me the important issues that come into mind while developing web application... thanks in advance

    +>>I need to know how to build strong design while in developing web application.+.
    for mvc model architecture to do better and strong application...
    +>> important issues that come into mind while developing web application+
    - clear data model and app architecuture
    -security
    -internationalization
    -validation
    -standards

  • JSP:web.xml

    Hai Friends !
    I am having one doupt regarding web.xml in Jsp . I really donot know when the web.xml is required and when it is not required.
    Actually I have developed one jsp application without web.xml ,it is running fine when i use Tomcat5.0 .
    when i try to run the same application by using Tomcat6.0 , it is not running .
    I came to know web.xml is heart of Web application when gone through Servlet/Jsp book.
    but i donot understand how it is working without web.xml when i run with tomcat5.0 , why not with Tomcat6.0
    Can any one help me please!
    Thanks
    Selvakumar

    web.xml
    ======
    <web-pp>
    </web-app>
    try this one..

  • Doubts regarding XML Form Builder

    Hi All,
          I am having some doubts regarding XML Forms (Projects) that is created using XML Form Builder. Where are exactly these projects stored. Can I edit these projects and add my own Java Functionality in these. And also the data which I fill using these project where is it stored. Suppose New Project I ve created using XML Form Builder, now I want to feed in the news. Where exactly are these news stored.
    Thanks in Advance
    Anish

    Hi Anish
    You can make the standard settings and modify the XML forms builder in line with your requirements in the options. You can set the standard paths for your project on the <b>Paths</b> tab page.
    To get a clear understanding, please go through this link.
    http://help.sap.com/saphelp_erp2004/helpdata/en/62/ca6f365a6df84e87ba085f9b5fb350/content.htm
    Hope that was helpful
    Warm Regards
    Priya

  • How to configure IP address thrugh web.xml doubts

    Hello there
    I want to configure my web application. How can i initialise the IP Address and ports through web.xml file?
    thanks!

    ashish.251985 wrote:
    I want to configure my web application. How can i initialise the IP Address and ports through web.xml file?You cannot do that in the web.xml.
    At least the port can be configured in one of the configuration files in the /conf directory of the application server. The exact details and procedure depends on the application server implementation. Read its documentations.

  • What is web.xml and why it is used?

    hi,
    am new to servlet technology, i tried to find a topic like this in this fourm also in google but didn't get a exact one. can anybody explain me or suggest me some resource about this.
    thanx in advance.
    Max

    hi stevejluke,
    thanx for the correct link.
    nx for the correct link. but what i in doubt with is
    why we should use web.xml? may be my question is very
    silly, may be too basic, forgive me for that...
    Thanx & Regards,
    SaikatAt the most basic level:
    There are several versions of the Servlet specification, You need the web.xml to tell the server which version of the spec your application conforms to so the server knows how to deal with different things.
    If you have a servlet, you also need the web.xml to define what URL signals a request that should be handled by your servlet.
    At this point, you need to sit down and read a book. Do what it says, blindly at first. Just do what it says (but do try to understand the 'what' of it, just don't question the 'why'). After you have a few applications running, go back and ask yourself this question again and try to see what you are using the web.xml for in those applications you have.

  • Doubts regarding a Servlet.

    few doubts regarding servlets :
    1. Can a servlet have a constructor ? - my answer is yes.
    2. is it mandatory that i should override the doGet() and doPost() methods ? Can I have a servlet(user defined servlet) without doGet() and doPost() methods ?
    3 Suppose I have a userdefined servlet that extends HttpServlet what are the methods that I mandatorily need to override in my user defined servlet ?
    4. In the below code :
    out.println(getServletContext().getInitParameter("adminEmail"); // assuming adminEmail is a context parameter name defined in web.xml.
    I read the explanation in HeadFirst as "Every Servlet inherits a getServletContext() method". I saw in the Servlet and ServletRequest api but didnt find this method there.
    I saw this method only in ServletConfig interface.
    out.println(getServletContext().getInitParameter("adminEmail"); is nothing but out.println(*this*.getServletContext().getInitParameter("adminEmail"); // whats this here, i mean on which object does the method get invoked ?

    1. Can a servlet have a constructor ? - my answer is yes.It must have a public default (no-args) constructor, provided either by you or the compiler. No other constructor will be used, so there's no point in writing any constructor as the compiler will do it for you.
    2. is it mandatory that i should override the doGet() and doPost() methods ?This question is answered in the [Servlet API|http://java.sun.com/products/servlet/2.5/docs/servlet-2_5-mr2/index.html].
    Can I have a servlet(user defined servlet) without doGet() and doPost() methods ?This question is answered in the [Servlet API|http://java.sun.com/products/servlet/2.5/docs/servlet-2_5-mr2/index.html].
    3 Suppose I have a userdefined servlet that extends HttpServlet what are the methods that I mandatorily need to override in my user defined servlet ?This question is answered in the [Servlet API|http://java.sun.com/products/servlet/2.5/docs/servlet-2_5-mr2/index.html].
    I saw this method only in ServletConfig interface.Which is implemented by GenericServlet, which is the base class for all servlets.
    // whats this here, i mean on which object does the method get invoked ?'this' is what it always is. The current object.

  • Tomcat - web.xml

    hi guys
    I am running Tomcat 5 on my system. Unfortunatly I hava to make an entry in the web.xml for every test servlet I deploy. Is there a way to call a servlet without an entry in the web.xml?
    greets
    m.

    Hi,
    I have a doubt , do we really need to make an entry for a servlet in all webservers at web.xml
    I was just thinking like, only those servlet which has defined to have some initparam values that are supposed to used within in the servlet should be made as a part of the entry in an web.xml
    for ex: database uri/some servlet information which always changes
    Im i correct..
    Please tell me more abt the same..
    with Regards
    Lokesh T.C

  • How to give relative path in web.xml?

    Hi All,
    Im creating a servlet which has to load the properties file.
    I don't want to give the location of the properties file as ABSOLUTE PATH. But I'm unable to provide the same as RELATIVE PATH.
    When I give the path is given as ABSOLUTE PATH (drive:/dir/) it is working. But if I give the RELATIVE PATH(../), the same is not working.
    Kindly help me in this.
    Regards,
    Kumar Madhavan.
    My web.xml file is:
    <?xml version="1.0"?>
    <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN" "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
    <web-app>
         <display-name>NGT - ASCII</display-name>
         <description>Application for Safety Critical Information vIew.</description>
         <welcome-file-list>
              <welcome-file>ASCII.html</welcome-file>
         </welcome-file-list>
         <context-param>
              <param-name>asciifiledir</param-name>
    <!-- This is the tag in which I would like to
              <param-value>../</param-value>
         </context-param>
    </web-app

    Hi.
    Exclude the directory path from the <param-value/> in
    the web.xml and just keep the property file name.
    Place the property file in the classpath and load it
    like this from the servlet:
    Properties props = new Properties();
    String propFileName = "" // Read param-value from web.xml
    try {
    InputStream is = TheServlet.class.getResourceAsStream(propFileName);
    props.load(is);
    } catch (Exception ex) {
    System.out.println("Prop file not in classpath!");
    /Jesper

  • Client-cert auth impl in web.xml does not work in Oracle Application Server

    Hi,
    I am new to implementing security features on the web applications.. I have developed a new web service using jdev1012 and deployed in OAS 10.1.2. Its working fine according to the business requirements, but I am in need of implementing client-cert authentication to enable the web service available to only those who have client certificate.
    My server details are:
    Oracle Application Server 10g Release 2 (10.1.2)
    Server certificate is in place and SSL mode have been already enabled.. able to access my web service through https://<mydomain.com>/myws/TreqWS as well able to see the WSDL file through https://<mydomain.com>/myws/TreqWS?WSDL.
    I tried to include the following in my web.xml file as part of implementing CLIENT-CERT authentication.
    <security-constraint>
    <display-name>SecurityConstraint</display-name>
    <web-resource-collection>
    <web-resource-name>WSCollection</web-resource-name>
    <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <user-data-constraint>
    <transport-guarantee>CONFIDENTIAL</transport-guarantee>
    </user-data-constraint>
    </security-constraint>
    <login-config>
    <auth-method>CLIENT-CERT</auth-method>
    <realm-name>WSCollection</realm-name> <!-- am not sure about this realm-name and its purpose -->
    </login-config>
    It is not woking as expected, though I have restarted my oc4j container after including this content to the web.xml file. i.e, I am able to invoke the web service though my sample java client program, though I donot have client certificate/keystore.
    I believe I am missing something..Can anyone help me in this regard to implement CLIENT-CERT authentication successfully?
    Thanks,
    Ms

    I am having the same problem with doc and xsl. I have added this
    <mime-mapping>
    <extension>xls</extension>
    <mime-type>application/vnd.ms-excel</mime-type>
    </mime-mapping>
    <mime-mapping>
    <extension>doc</extension>
    <mime-type>application/msword</mime-type>
    </mime-mapping>
    to my web.xml. I even restarted the server. I still see doc and xsl in binary.
    Is there some other setting that needs to take place?
    I am using WL6.1 with fixpack 1.
    I can see the doc and excel files in the browser if I don't go through the weblogic
    server. That just confirms it's not my browser.
    Kumar Allamraju <[email protected]> wrote:
    <!doctype html public "-//w3c//dtd html 4.0 transitional//en">
    <html>
    It works fine for me in 6.1 SP1.
    <br><br>
    If the following doesn't work , can you
    <br>try application/winword instead of application/msword?
    <p>--
    <br>Kumar
    <p>Siming Mu wrote:
    <blockquote TYPE=CITE>Hi,
    <p>I setup in my web.xml a mime mapping as follows,
    <p><mime-mapping>
    <br><extension>doc</extension><mime-type>application/msword</mime-type>
    <br></mime-mapping>
    <p>When I specify a test.doc url, the doc file appears in my browser
    as
    binary data
    <br>instead of download.
    <p>Please reference change request 055002, which decribes this problem. 
    According
    <br>to edocs, it has been fixed in wls6.1sp1.
    <p>But I am seeing it fixed.  Am I doing anything wrong? Thanks.
    <p>Siming</blockquote>
    </html>

  • Problem in web.xml file with weblogic server 8.1

    Hi frnds,
    I was deployed one Enterprise Application,it deploys successfully. But in server side thows Exeception in web.xml file.
    Here the actual Exception
    <HTTP> <BEA-101248> <[Application:
    'G:\bea\user_projects\domains\mydomain\myserver\upload\jasmine.ear', Module: 'Ja
    smine']: Deployment descriptor "web.xml" is malformed. Check against the DTD: or
    g.xml.sax.SAXParseException: The content of element type "web-app" must match "(
    icon?,display-name?,description?,distributable?,context-param*,filter*,filter-ma
    pping*,listener*,servlet*,servlet-mapping*,session-config?,mime-mapping*,welcome
    -file-list?,error-page*,taglib*,resource-env-ref*,resource-ref*,security-constra
    int*,login-config?,security-role*,env-entry*,ejb-ref*,ejb-local-ref*)". (line 61
    , column 11).>
    My web.xml file as follws....
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <!DOCTYPE web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.4//EN"
    "http://java.sun.com/dtd/web-app_2_4.dtd">
    <web-app>
    <display-name>Jasmine Applications</display-name>
    <description>
    Jasmine Applications
    </description>
    <servlet>
    <servlet-name>LoginServlet</servlet-name>
    <servlet-class>examples.LoginServlet</servlet-class>
    <init-param>
    <param-name>java.naming.factory.initial</param-name>
    <param-value>weblogic.jndi.WLInitialContextFactory</param-value>
    </init-param>
    <init-param>
    <param-name>java.naming.provider.url</param-name>
    <param-value>t3://localhost:7001</param-value>
    </init-param>
    </servlet>
    <servlet>
    <servlet-name>ShowQuoteServlet</servlet-name>
    <servlet-class>examples.ShowQuoteServlet</servlet-class>
    <init-param>
    <param-name>java.naming.factory.initial</param-name>
    <param-value>weblogic.jndi.WLInitialContextFactory</param-value>
    </init-param>
    <init-param>
    <param-name>java.naming.provider.url</param-name>
    <param-value>t3://localhost:7001</param-value>
    </init-param>
    </servlet>
    <servlet>
    <servlet-name>CatalogServlet</servlet-name>
    <servlet-class>examples.CatalogServlet</servlet-class>
    <init-param>
    <param-name>java.naming.factory.initial</param-name>
    <param-value>weblogic.jndi.WLInitialContextFactory</param-value>
    </init-param>
    <init-param>
    <param-name>java.naming.provider.url</param-name>
    <param-value>t3://localhost:7001</param-value>
    </init-param>
    </servlet>
    <servlet-mapping>
    <servlet-name>LoginServlet</servlet-name>
    <url-pattern>/login/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>ShowQuoteServlet</servlet-name>
    <url-pattern>/showQuote/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>CatalogServlet</servlet-name>
    <url-pattern>/catalog/*</url-pattern>
    </servlet-mapping>
    <security-constraint>
    <web-resource-collection>
    <web-resource-name>My secure resources</web-resource-name>
    <description>Resources to be placed under security control.</description>
    <url-pattern>/private/*</url-pattern>
    <url-pattern>/registered/*</url-pattern>
    </web-resource-collection>
    <auth-constraint>
    <role-name>guest</role-name>
    </auth-constraint>
    </security-constraint>
    <login-config>
    <auth-method>FORM</auth-method>
    <realm-name>WebApp</realm-name>
    <form-login-config>
    <form-login-page>/login.jsp</form-login-page>
    <form-error-page>/error.jsp</form-error-page>
    </form-login-config>
    </login-config>
    <!-- Security roles referenced by this web application -->
    <security-role>
    <description>The role allowed to access our content</description>
    <role-name>guest</role-name>
    </security-role>
    </web-app>
    pls give me a good solution this exception.. I tried lot..
    Thanks in Advance
    Regards
    Priya

    Your DOCTYPE references 2.4, it should be 2.3. WLS 8.1 supports J2EE 1.3 which was servlet 2.3.
    Servlet 2.4 is part of J2EE 1.4 and is supported by WLS 9.0/9.1. Also it uses XML Schema not a DTD.
    -- Rob
    WLS Blog http://dev2dev.bea.com/blog/rwoollen/

  • Weblogic.servlet.reloadCheckSecs in web.xml not working

    Given the following web.xml file:
              <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application
              1.2//EN" "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">
              <web-app>
              <context-param>
              <param-name>weblogic.servlet.reloadCheckSecs</param-name>
              <param-value>100</param-value>
              </context-param>
              <servlet>
              <servlet-name>CookieCounter</servlet-name>
              <servlet-class>servlets.CookieCounter</servlet-class>
              </servlet>
              <servlet-mapping>
              <servlet-name>CookieCounter</servlet-name>
              <url-pattern>monster</url-pattern>
              </servlet-mapping>
              <welcome-file-list>
              <welcome-file>hello.html</welcome-file>
              </welcome-file-list>
              <error-page>
              <error-code>404</error-code>
              <location>/error.jsp</location>
              </error-page>
              </web-app>
              It seems the weblogic.servlet.reloadCheckSecs property is not taking effect.
              The
              default value of -1 is always used. I did stop and restart weblogic.
              I also trid to set the servlet classpath in the web.xml file with
              weblogic.servlet.classpath
              property and it did not change the classpath for the servlet. It seems that
              other
              items are working such as adding new servletrs to the web application. Note
              that
              this is the cookie sample application that installes with the beta 2
              download.
              Thanks,
              Dan.
              

    Hi All:
    Thanks for all your help regarding the adfAuthentication success_url. Now I am able to configure to make this work. But now I am facing another issue i.e. I am getting 401 Not authorized message when the success_url is pointed to the jspx page.
    Note: I am using custom login module similar to DBProcOraDataSourceLoginModule so my roles are stored in the custom Role class. So I am not sure how to pass this role info to the security in ADF in order to authorize the page to be viewed.
    Could you please help and can you point me to any specific link.
    Thanks & Regards
    Sridhar Doki

  • Web.xml, struts and ssl

    Hi there,
    on our projects web pages we use struts, to combine the html of our pages with the java code behind. To enable SSL I added a security constraint to the web.xml:
         <security-constraint>
              <display-name>SSL Constraint</display-name>
              <web-resource-collection>
                   <web-resource-name>secured login resource</web-resource-name>
                   <description></description>
                   <url-pattern>/index.html</url-pattern>
                   <url-pattern>*.do</url-pattern>
                   <http-method>GET</http-method>
                   <http-method>PUT</http-method>
                   <http-method>POST</http-method>
              </web-resource-collection>
              <auth-constraint>
                   <description></description>
                   <role-name>authenticatedUser</role-name>
              </auth-constraint>
              <user-data-constraint>
                   <transport-guarantee>CONFIDENTIAL</transport-guarantee>
              </user-data-constraint>
         </security-constraint> Some of our web pages need to use no SSL. So I added (for first testing) a second security constraint to the web.xml and defined which pages should be without SSL:
         <security-constraint>
              <display-name>No-SSL Constraint</display-name>
              <web-resource-collection>
                   <web-resource-name>businesstransaction resource</web-resource-name>
                   <description></description>
                   <url-pattern>*.go</url-pattern>
                   <http-method>GET</http-method>
                   <http-method>PUT</http-method>
                   <http-method>POST</http-method>
              </web-resource-collection>
              <auth-constraint>
                   <description></description>
                   <role-name>authenticatedUser</role-name>
              </auth-constraint>
              <user-data-constraint>
                   <transport-guarantee>NONE</transport-guarantee>
              </user-data-constraint>
         </security-constraint>As you can see, I exchanged *.do with *.go for testing. I simply defined all actions I want to be used without SSL with a .go instead of a .do in the struts.config.
    In principle it works, but there is a problem: The default behaviour for struts seems to be that the name of the new action is posted in the url at the end of the standard starting url.
    Our url starts with https://localhost:9443/client-web/, and whatever action I start, this url text in the browser window never changes, regardless of wether the next action would be protected or not.
    First I thought my url pattern would be wrong, or the user or whatever. But then I found out, that when changing the url in the browser window by hand to http://localhost:9080/client-web/ it works. The web page then is without SSL active. And when I manually change the url while viewing a page that is meant to be SSL protected, the browser automatically changes to the SSL adress.
    But then again, moving to a page without SSL does not enforce the browser to change its adress to the no SSL String. So again, SSL is active though a non secure access would be allowed.
    Anybody has any idea how to change this default behaviour? It would be important to not only tell the server that non secure would be ok, but to actually USE non secure connection automatically.
    The internet explorer is not able to upload files in SSL mode (though any other browser is able to), and our customer insists on using IE. And to tell the users "oh, just edit the line there in the window manually and reload the page will help ... or use Firefox" will not be a suitable solution.
    Regards, Rommie.

    There is a plugin called sslext which will do most of what you need.
    http://sslext.sourceforge.net/
    I think the last time I used it I made some changes to the plugin source so that I could force non-ssl to be the default behavour unless SSL was explictily stated in struts.config, but can't remember for sure. Bottom line is it will do most of what you need and can probably be modified to do the rest without too much trouble.

  • Do we need to put the following code in the web-xml for the project to run

    Hi^^^,
    actually I have created a project in Eclipse WTP and I am running it from remote server. Its giving me 404 error when I tried to run it.
    I know 404 error is generally due to some error in deployment descriptor.
    I am going through this tutorial for creating project in eclipse WTP
    this says that I need to include the following code in web-xml. Please look at the quotes below
    "Web modules in J2EE has a deployment descriptor where you configure the web application and its components. This deployment descriptors is called the web.xml. According to the J2EE specification, it must be located in the WEB-INF folder. web.xml must have definitions for the Servlet and the Servlet URI mapping. Enter the following lines into web.xml:"
    "Listing 2. Deployment Descriptor web.xml"
    <servlet>
    <servlet-name>Snoop Servlet</servlet-name>
    <servlet-class>org.eclipse.wtp.tutorial.SnoopServlet</servlet-class>
    </servlet>
    <servlet-mapping>
    <servlet-name>Snoop Servlet</servlet-name>
    <url-pattern>/snoop/*</url-pattern>
    </servlet-mapping>
    My question is, it is necessary to include the above lines between <servlet> and </servlet-mapping> in web-xml
    thanks and regards,
    Prashant

    pksingh79 wrote:
    actually I have created a project in Eclipse WTP and I am running it from remote server. Its giving me 404 error when I tried to run it.
    I know 404 error is generally due to some error in deployment descriptor. what's the url you've put.
    <servlet>
    <servlet-name>Snoop Servlet</servlet-name>
    <servlet-class>org.eclipse.wtp.tutorial.SnoopServlet</servlet-class>
    </servlet> Every Servlet has to have a <servlet></Servlet> tag in the web.xml
    the <servlet-name>is for the naming the servlet and the <servlet-calss>is for class file of the servlet in your case the .class file is to be in the package of tutorial,if it's not then how the container will no where the calss file is
    <servlet-mapping>
    <servlet-name>Snoop Servlet</servlet-name>
    <url-pattern>/snoop/*</url-pattern>
    </servlet-mapping>You type something in your url likk http://localhost:8080/webappname (Tomcat server),so for url mapping instead of typing the entire class file name ,you just enough have to type what you've put in the <url-mapping> tag and it has to be inside of <servlet-mapping>
    I think the problem is in <url-pattern> change it like /snoop<url-pattern>
    My question is, it is necessary to include the above lines between <servlet> and ></servlet->mapping> in web.xmlSo now you think whether you need something inside <servlet>and </servlet-mapping>

Maybe you are looking for