Tuesday 3 April 2012

Initialization of parameter and reading parameters

1. Why should we use initialization Parameters ?

Ans:
  • While we are developing Web applications, we should provide some data into the servlet programs
  • Example: I'm developing a Login form as a part of my task, in the login application, i obtained the database connection by using the database user name and password (scott, tiger in my system)
  • But actual DB username and password are available only at the time of deploying the application. That means DB username and password changes (it totally depends on DBA).
  • If I give DB usernmae =scott, password=tiger in the servlet program , if I handover my task to the client, his username and password may be different
  • So again i have to change the servlet program and change the username and password according to client system username and password,(this is known as hadrcoding)
  • Instead of providing the database details (hard coding the data) in the Servlet, you can configure the data externally from the Servlet and then retrieve(inject) it into the servlet by using "Initialization Parameters" .
  • In other words (technically) the Servlet Container provides the ability to store startup and configuration information for a Servlet in the form of initialization parameters, this is called as "init parameters" and "context init parameters" are specific to all or multiple Servlet's configured in the deployment descriptor file.
Simple answer:
What is the purpose of the init-parameters?

=>whenever we need to supply different set of values to a servlet at different times of its deployment without changing its sourcecode ,we go for initparameters.

=>Initparameters ensure prevention of hardcoding of certain values in a servlet.

for e.g: database connection details.
 2. Advantages of Initialization Parameters

Ans:
  1.  To reduce the complexity code of the server-side program
  2.  To minimize the maintenance of web application to build successful in java .
Example:
  •      Suppose I have developed one web application, in the contact page, i have to give my phone number. To do this one in Servlet, i have to write the following code in my servlet:
  PrintWriter out=response.getWriter(); //creating the PrintWriter object
  out.println("mobile number: 999999986" );
  • For the above code, I have to recompile the Servlet every time if mobile number changes
  • Rather than hard-coding the mobile number directly into the Servlet's source code, I must always maintain the same mobile number (data value) in the deployment descriptor file (web.xml ), so that any changes in the mobile number does not affect the web application.
  • In Other words, I can pass the value of mobile number through the init parameter in the web.xml file.
3. Syntax for initialization parameters in the web.xml:

<servlet>
   <servlet-name>.....</servlet-name>
     <servlet-class>...</servlet-class>
         <init-param>
            <param-name>MobileNumber</param-name>
             <param-value>999999986</param-value>
        </init-param>
</servlet>

4. Accessing the initialization parameters from web.xml into servlet:

By using getInitParameter("MobileNumber");
             getInitParameterNames();

5. Example program for initialization parameters
//Home.html
<HTML>
<HEAD>
<TITLE> Servlet Examples (Init Parameters Example) </TITLE>
</HEAD>
<BODY>
<FORM ACTION="initParamsSer" method="get">
<INPUT TYPE="submit" value="Get Init Parameters Configured in DD file"/>
</FORM><br/>
</BODY>
</HTML>
//InitParamsServlet.java
package com.rajendra.servlets;

import javax.servlet.*;
import java.util.*;

public class InitParamsServlet extends GenericServlet 
{

public void init()throws ServletException {

//Test Code to demonstrate hot to get init parameters
//Here to demonstrate this we will print the name & values

//Getting the parameter value of the given name
String value=getInitParameter("Ram");//it is a predefined method, read the value of "Ram" in the web.xml file and returns its value
System.out.println("Ram Salary is : "+value);

//To get all the parameter values
System.out.println("Getting all the parameters");
System.out.println("----------------------");
System.out.println("Name \t Salary");
System.out.println("----------------------");
/*Enumeration is a interface used to store the elements and getInitParameterNames() is used to read the values
from the web.xml file and stores into en object */
Enumeration en=getInitParameterNames();
while (en.hasMoreElements()) //returns true if the elements are there in the enumeration, false otherwise

 {

String name=(String)en.nextElement();
value=getInitParameter(name);
System.out.println(name+"\t"+value);
}//while
}
public void service(ServletRequest req,ServletResponse res)
throws java.io.IOException,ServletException {

  res.setContentType("text/html");
  java.io.PrintWriter out=res.getWriter();
out.println("<html><body>");
/*
As described like Initialization parameters are available to the servlet at any time i.e. in initialization, servicing the client and destroying.
*/
 
//Getting the parameter value of the given name

String value=getInitParameter("name");

out.println("Ravi salary is : <b>"+value+"</b><br/>");


//To get all the parameter values
out.println("Getting all the parameters<br/>");
out.println("<table border='1'>");
out.println("<tr><th>Name</th>");
// out.println("<th>Value</th></tr>");
out.println("<th>salary</th></tr>");
Enumeration en=getInitParameterNames();
while (en.hasMoreElements()){

String name=(String)en.nextElement();
String salary=getInitParameter(name);
out.println("<tr><td>"+name+"</td>");
// out.println("<td>"+value+"</tr>");
out.println("<td>"+salary+"</tr>");
}//while
out.println("</table>");
out.println("</body></html>");
  }//service
}//class
/*
D:\webtechnologies\servlets\\initParams>javac -d . InitParamsServlet.java
*/
//web.xml
<?xml version="1.0"?>
<!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>myser</servlet-name>
<servlet-class>
com.servlets.InitParamsServlet
</servlet-class>
<init-param>
<param-name>Ram</param-name>
<param-value>20000</param-value>
</init-param>
<init-param>
<param-name>Ravi</param-name>
<param-value>30000</param-value>
</init-param>
<init-param>
<param-name>Rajesh</param-name>
<param-value>40000</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>myser</servlet-name>
<url-pattern>/initParamsSer</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>Home.html</welcome-file>
</welcome-file-list>
</web-app>

You may like the following posts:

Sunday 1 April 2012

URL Rewriting and hidden fields example ppt

URL Rewriting and Hiding fields example

Steps: (using notepad)
1. create any folder Example SessionExample
Maintain the folder structure
 that is:
 
  1. create SiteHome.html



<html>
  <head>
    <title>URL Rewriting Example</title>
  </head>
  <body>
 This is the Home page for the example to demonstrate how to use <BR>
 URL Rewriting and Hidden form fields to mantain the client state. <BR><BR>

<a href="Login.html">Login</a>
  </body>
</html>






  2. create Login.html
<html>
  <head>
    <title>URL Rewriting Example</title>
  </head>
  <body>
    <form name="loginform" action="login" method="post">
      <table border="0">
        <tr>
          <td>UserName:</td>
          <td><input type="text" name="uname"></td>
        </tr>
        <tr>
          <td>Password:</td>
          <td><input type="password" name="password"></td>
        </tr> 
        <tr>
          <td colspan="2" align="center"><input type="submit"></td>
        </tr>
      </table>
    </form>
  </body>
</html>


  3. create Send.html
<html>
  <body>
    Page Underconstruction
  </body>
</html>

  4. create folder name is WEB-INF
       Go to WEB-INF,
       (a) create classes folder
       (b) create lib folder
       (c) create web.xml file

5. Go to classes folder,

  write LoginServlet.java

package com.rajendra.servlets;

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.*;
import javax.servlet.http.*;

public class LoginServlet extends HttpServlet {

public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

String uname=request.getParameter("uname");
String pass=request.getParameter("password");

response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("<HTML>");
out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
out.println("  <BODY>");

if (uname==null||uname.equals("")){
out.println("<b><i>Username Cannot be empty</i></b>");
RequestDispatcher rd=request.getRequestDispatcher("/Login.html");
rd.include(request, response);
return;
}
if (pass==null||pass.equals("")){
out.println("<b><i>Password Cannot be empty</i></b>");
RequestDispatcher rd=request.getRequestDispatcher("/Login.html");
rd.include(request, response);
return;
}

UserDAO ud=new UserDAO();

if(ud.validate(uname,pass)){
out.println("<table width=98% height=95% border=1><tr>");
out.println("<td height=45 colspan=2 align=center><font size=5>My Email Site</font></td>");
out.println("</tr><tr>");
out.println("<td width=12% height=545 align=center valign=top>");
out.println("<p>&nbsp;</p><p><font size=4>");
out.println("<a href='inbox?uname="+uname+"'>InBox</a>");
out.println("</font></p>");
out.println("<p><font size=4>Bulk Mail</font></p>");
out.println("<p><font size=4>Sent Items</font></p>");
out.println("<p><font size=4>Write Mail</font></p>");
out.println("<p><font size=4><a href='Login.html'>Logout</a></font></p>");
out.println("<p>&nbsp;</p></td>");
out.println("<td width=88% align=left valign=top><p>&nbsp;</p>");
out.println("<p><font size=4>Welcome, "+uname+"</font></p></td>");
out.println("</tr><tr align=center>");
out.println("<td colspan=2><div align=center>@Copyrights 2001-08</div></td>");
out.println("</tr></table>");
}//if

else{
out.println("<b><i>Username or Password given are not valid</i></b>");
RequestDispatcher rd=request.getRequestDispatcher("/Login.html");
rd.include(request, response);
return;
}
out.println("  </BODY>");
out.println("</HTML>");
out.flush();
out.close();
}

}
SETTING THE CLASSPATH FOR TOM CAT SERVER
1. GO TO TOMCAT SERVER INSTALLED FOLDER, LIB FOLDER AND SELECT servlet-api .jar(if you are using servlet program, in case u are using jsp programs, u have to set classpath as jsp-api.jar file)
2. set the class path for mysql-connector.jar file if you are using database connectivity (Ex: my sql database s/w) you have to download "mysql-connector.jar" file and save it in any folder (for example here i have saved that my sql connector.jar file in "D:\softwares\MySQL\new" folder
now we need to set the classpath for servlets and mysql connector jar file
D:\webtechnologies\servlets\session tracking\sessionex1\WEB-INF\classes>
set classpath=D:\softwares\MySQL\new\mysql-connector-java-5.1.18-bin.jar;.;
D:\webtechnologies\servlets\session tracking\sessionex1\WEB-INF\classes>set CLASSPATH=C:\Program Files\Apache Software Foundation\Tomcat 6.0\lib\servlet-api.jar;.;
D:\webtechnologies\servlets\session tracking\sessionex1\WEB-INF\classes>javac LoginServlet.java

Write DriverConnection.java
package com.rajendra.servlets;

import java.sql.*;

public class DriverConnection {

public static Connection getConnection() 
  throws Exception{
Class.forName("com.mysql.jdbc.Driver");
return DriverManager.getConnection(
"jdbc:mysql://localhost:3306/test","root","admin");
}
}
D:\webtechnologies\servlets\session tracking\sessionex1\WEB-INF\classes>javac DriverConnection.java
write UserDao.java

package com.rajendra.servlets;
import java.sql.*;
public class UserDAO {
public boolean validate(String uname, String pass){
try {
Connection con=DriverConnection.getConnection();//getConnection() is a user defined class, which connects to the database
Statement st=con.createStatement();
ResultSet rs=st.executeQuery(
"select count(*) from userdetails where uname=\'"+uname+"\' and pass=\'"+pass+"\'");
return rs.next();
}//try
catch(Exception e){
e.printStackTrace();
}
return false;
}
}
D:\webtechnologies\servlets\session tracking\sessionex1\WEB-INF\classes>javac UserDAO.java
//InboxServlet.java

package com.rajendra.servlets;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.*;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class InboxServlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

response.setContentType("text/html");
PrintWriter out = response.getWriter();
String uname=request.getParameter("uname");
out.println("<html><head>");
out.println("<title>InBox Page</title>");
out.println("</head><body>");
out.println("<table width=98% height=95% border=1><tr>");
out.println("<td height=45 colspan=2 align=center><font size=5>My Email Site</font></td>");
out.println("</tr><tr>");
out.println("<td width=12% height=545 align=center valign=top>");
out.println("<p>&nbsp;</p><p><font size=4>");
out.println("<a href='inbox?uname="+uname+"'>InBox</a>");
out.println("</font></p>");
out.println("<p><font size=4>Bulk Mail</font></p>");
out.println("<p><font size=4>Sent Items</font></p>");
out.println("<p><font size=4>Write Mail</font></p>");
out.println("<p><font size=4><a href='Login.html'>Logout</a></font></p>");
out.println("<p>&nbsp;</p></td>");
out.println("<td width=88% align=left valign=top><p><font size=4>Welcome, "+uname+"</font></p>");
out.println("<table width=100% height=82 border=0 cellpadding=0 cellspacing=0>");
out.println("<tr bgcolor=#CCCCCC>");
out.println("<th width=8%>&nbsp; </th>");
out.println("<th width=26% align=center>From</th>");
out.println("<th width=41%>Subject</th>");
out.println("<th width=25%>Sent Date</th>");
out.println("</tr>");
MailsDAO md=new MailsDAO();
Collection c=md.getMails(uname);
Iterator i=c.iterator();
while (i.hasNext()){
Mail m=(Mail)i.next();
out.println("<tr>");
out.println("<td align=center><input type=checkbox name=checkbox></td>");
out.println("<td align=left>"+m.getFromid()+"</td>");
out.println("<td><a href='viewMail?id="+m.getMailid()+"&uname="+uname+"'>"+m.getSubject()+"</a></td>");
out.println("<td>"+m.getSentDate()+"</td>");
out.println("</tr>");
}
out.println("</table>");
out.println("<p><font size=4></font></p>");
out.println("</td></tr><tr align=center>");
out.println("<td colspan=2><div align=center>@Copyrights 2001-08</div></td>");
out.println("</tr></table>");
out.println("</body></html>");
}
}
D:\webtechnologies\servlets\session tracking\sessionex1\WEB-INF\classes>javac InboxServlet.java
MailDAO.java

package com.rajendra.servlets;

import java.util.*;
import java.sql.*;

public class MailsDAO {
public Collection getMails(String uname){
/*
* Connect to Mail server and get all the mails of the given username
* This can be done using Java Mail API
* Java Mail API concept 
* and thus for this example we will get the mails from DB
* insted of getting diverted towards Java Mail API 
*/
try {
Connection con=DriverConnection.getConnection();
Statement st=con.createStatement();
ResultSet rs=st.executeQuery(
"select fromid, subject, sentdate from mails where uname='"+uname+"'");
ArrayList al=new ArrayList();
int count=1;
while (rs.next()){
Mail m=new Mail();
m.setMailid(count+"");
m.setFromid(rs.getString(1));
m.setSubject(rs.getString(2));
m.setSentDate(rs.getString(3));
al.add(m);
count++;
}
return al;
}
catch(Exception e){e.printStackTrace();}
return null;
}
public Mail getMail(String uname, String id){
try {
Connection con=DriverConnection.getConnection();
Statement st=con.createStatement();
ResultSet rs=st.executeQuery(
"select fromid, subject, sentdate, content from mails where uname='"+uname+"' and mid="+id);
if (rs.next()){
Mail m=new Mail();
m.setFromid(rs.getString(1));
m.setSubject(rs.getString(2));
m.setSentDate(rs.getString(3));
m.setContent(rs.getString(4));
return m;
}
}
catch(Exception e){e.printStackTrace();}
return null;
}
}
D:\webtechnologies\servlets\session tracking\sessionex1\WEB-INF\classes>javac MailsDAO .java
Mail.java

package com.rajendra.servlets;

public class Mail {
private String mailid, fromid, subject, sentDate, content;

public String getFromid() {
return fromid;
}

public void setFromid(String fromid) {
this.fromid = fromid;
}

public String getMailid() {
return mailid;
}

public void setMailid(String mailid) {
this.mailid = mailid;
}

public String getSentDate() {
return sentDate;
}

public void setSentDate(String sentDate) {
this.sentDate = sentDate;
}

public String getSubject() {
return subject;
}

public void setSubject(String subject) {
this.subject = subject;
}

public String getContent() {
return content;
}

public void setContent(String content) {
this.content = content;
}
}
D:\webtechnologies\servlets\session tracking\sessionex1\WEB-INF\classes>javac  Mail.java .java

ViewMailServlet.java

package com.rajendra.servlets;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class ViewMailServlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

response.setContentType("text/html");
PrintWriter out = response.getWriter();
String uname=request.getParameter("uname");
String mail_no=request.getParameter("id");
MailsDAO md=new MailsDAO();
Mail m=md.getMail(uname, mail_no);
out.println("<html><head>");
out.println("<title>View Mail Page</title>");
out.println("</head><body>");
out.println("<table width=98% height=95% border=1><tr> ");
out.println("<td height=45 colspan=2 align=center><font size=5>My Email Site</font></td>");
out.println("</tr><tr> ");
out.println("<td width=12% height=545 align=center valign=top> ");
out.println("<p>&nbsp;</p><p><font size=4>");
out.println("<a href='inbox?uname="+uname+"'>InBox</a>");
out.println("</font></p>");
out.println("<p><font size=4>Bulk Mail</font></p>");
out.println("<p><font size=4>Sent Items</font></p>");
out.println("<p><font size=4>Write Mail</font></p>");
out.println("<p><font size=4><a href='Login.html'>Logout</a></font></p>");
out.println("<p>&nbsp;</p></td>");
out.println("<td width=88% align=left valign=top><p><font size=4>Welcome, "+uname+"</font></p>");
out.println("<table width=100% height=100% border=0 cellpadding=0 cellspacing=0>");
out.println("<tr bgcolor=#CCCCCC> ");
out.println("<th height=34 colspan=2 bgcolor=#CCCCCC>Read Mail</th>");
out.println("</tr><tr bgcolor=#CCCCCC> ");
out.println("<td width=37% height=54 bgcolor=#FFFFFF>From ID : <strong>"+m.getFromid()+"</strong></td>");
out.println("<td width=63% bgcolor=#FFFFFF>Subject : <strong>"+m.getSubject()+"</strong></td>");
out.println("</tr><tr bgcolor=#FFFFFF> ");
out.println("<td height=36 colspan=2><form method=post action=sendReply>");
out.println("<input type=submit name=Submit value=Reply>");
out.println("<input name=uname type=hidden value='"+uname+"'>");
out.println("<input name=fromid type=hidden value='"+m.getFromid()+"'>");
out.println("<input name=subject type=hidden value='"+m.getSubject()+"'>");
out.println("<input name=content type=hidden value='"+m.getContent()+"'>");
out.println("</form></td></tr>");
out.println("<tr valign=top bgcolor=#CCCCCC> ");
out.println("<td height=375 colspan=2 bgcolor=#FFFFFF><p><strong>Message</strong>:</p>");
out.println("<blockquote> ");
out.println("<p>"+m.getContent()+"</p>");
out.println("</blockquote></td>");
out.println("</tr></table>");
out.println("</td></tr>");
out.println("<tr align=center> ");
out.println("<td colspan=2><div align=center>@Copyrights 2001-08</div></td>");
out.println("</tr></table>");
out.println("</body></html>");
}
}
D:\webtechnologies\servlets\session tracking\sessionex1\WEB-INF\classes>javac  ViewMailServlet.java

/*SendReplyServlet.java*/

package com.rajendra.servlets;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class SendReplyServlet extends HttpServlet {

public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

response.setContentType("text/html");
PrintWriter out = response.getWriter();
String uname=request.getParameter("uname");
String fromid=request.getParameter("fromid");
String subject=request.getParameter("subject");
String content=request.getParameter("content");
out.println("<html><head>");
out.println("<title>Reply Page</title>");
out.println("</head><body>");
out.println("<table width=98% height=95% border=1><tr>");
out.println("<td height=45 colspan=2 align=center><font size=5>My Email Site</font></td>");
out.println("</tr><tr>"); 
out.println("<td width=12% height=545 align=center valign=top>"); 
out.println("<p>&nbsp;</p><p><font size=4>");
out.println("<a href='inbox?uname="+uname+"'>InBox</a>");
out.println("</font></p>");
out.println("<p><font size=4>Bulk Mail</font></p>");
out.println("<p><font size=4>Sent Items</font></p>");
out.println("<p><font size=4>Write Mail</font></p>");
out.println("<p><font size=4><a href='Login.html'>Logout</a></font></p>");
out.println("<p>&nbsp;</p></td>");
out.println("<td width=88% align=left valign=top><p><font size=4>Welcome, "+uname+"</font></p>");
out.println("<form name=form1 method=post action=/Send.html>");
out.println("<table width=100% height=100% border=0 cellpadding=0 cellspacing=0>");
out.println("<tr bgcolor=#CCCCCC> ");
out.println("<th height=34 colspan=2 bgcolor=#CCCCCC>Read Mail</th>");
out.println("</tr>");
out.println("<tr bgcolor=#CCCCCC> ");
out.println("<td width=15% height=38 bgcolor=#FFFFFF>To : </td>");
out.println("<td width=85% bgcolor=#FFFFFF><input name=to type=text id=to value="+fromid+"></td>");
out.println("</tr>");
out.println("<tr bgcolor=#CCCCCC> ");
out.println("<td height=35 bgcolor=#FFFFFF>Subject : </td>");
out.println("<td bgcolor=#FFFFFF><strong>");
out.println("<input name=subject type=text id=subject value='Re: "+subject+"'>");
out.println("</strong></td></tr>");
out.println("<tr bgcolor=#CCCCCC> ");
out.println("<td height=35 bgcolor=#FFFFFF><strong>Message:</strong></td>");
out.println("<td bgcolor=#FFFFFF>&nbsp;</td>");
out.println("</tr>");
out.println("<tr align=left valign=top bgcolor=#CCCCCC> ");
out.println("<td colspan=2 bgcolor=#FFFFFF><textarea name=content cols=100 rows=20 id=content>"+content+"</textarea></td>");
out.println("</tr>");
out.println("<tr bgcolor=#CCCCCC> ");
out.println("<td height=35 bgcolor=#FFFFFF>&nbsp;</td>");
out.println("<td bgcolor=#FFFFFF><input type=submit value=Send></td>");
out.println("</tr></table>");
out.println("</form></td></tr>");
out.println("<tr align=center> ");
out.println("<td colspan=2><div align=center>@Copyrights 2001-08</div></td>");
out.println("</tr></table>");
out.println("</body></html>");
}
}
D:\webtechnologies\servlets\session tracking\sessionex1\WEB-INF\classes>javac  SendReplyServlet.java
  • Now go to WEB-INF folder, open lib folder paste the mysql-connector-java-5.1.18-bin.jar file in that folder
       (c) create web.xml file
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" 
xmlns="http://java.sun.com/xml/ns/j2ee" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<servlet>
<servlet-name>LoginServlet</servlet-name>
<servlet-class>com.rajendra.servlets.LoginServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>InboxServlet</servlet-name>
<servlet-class>com.rajendra.servlets.InboxServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>ViewMailServlet</servlet-name>
<servlet-class> com.rajendra.servlets.ViewMailServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>SendReplyServlet</servlet-name>
<servlet-class> com.rajendra.servlets.SendReplyServlet
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LoginServlet</servlet-name>
<url-pattern>/login</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>InboxServlet</servlet-name>
<url-pattern>/inbox</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>ViewMailServlet</servlet-name>
<url-pattern>/viewMail</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>SendReplyServlet</servlet-name>
<url-pattern>/sendReply</url-pattern>
</servlet-mapping>  
<welcome-file-list>
<welcome-file>SiteHome.html</welcome-file>
</welcome-file-list>
</web-app>
  • now deploy our project (i.e SessionExample) into Server.
  • go to installed tomcat server
  • C:\Program Files\Apache Software Foundation\Tomcat 6.0
  • double click on webapps folder
  • deploy (paste) our project(i.e SessionExample)
  • start the server: go to bin folder of Tomcat 6.0->double click on tomcat6.exe file
  • once the server start
  • go to any web browser
  • in the address bar type :  step 1 http://localhost:8888
  • here 8888 is my system port number
  • step 2: click on Tomcat manager:


http://localhost:8888/SessionExample/