Thursday 28 April 2011

16) Simple Project on cookies

To run this project we need following files:
1)web.xml
2)LForm.jsp
3)LoginServlet.java
4)Success.jsp

5)WForm.jsp
6)BeerSelect.java
7)Failure.jsp




1)web.xml

<?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>login servlet</servlet-name>
    <servlet-class>com.jexamples.web.LoginServlet</servlet-class>
</servlet>
<servlet-mapping>
     <servlet-name>login servlet</servlet-name>
     <url-pattern>/SelectForm.do</url-pattern>
</servlet-mapping>
<servlet>
       <servlet-name>Ch3 Beer</servlet-name>
       <servlet-class>com.jexamples.web.BeerSelect</servlet-class>
  </servlet>
  
  <servlet-mapping>
       <servlet-name>Ch3 Beer</servlet-name>
       <url-pattern>/SelectBeer.do</url-pattern>
  </servlet-mapping>
  
  <welcome-file-list>
    <welcome-file>LForm.jsp</welcome-file>
  </welcome-file-list>
</web-app>

2)LForm.jsp

<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>Login Form Page</title>

  </head>
  
  <body>
   <h1>Please Login</h1>
   <hr>
   
   <form method="get" name="getForm" action="SelectForm.do">
   <!-- Never put '/' here like action="/SelectForm.do" 
        or u will get error HTTP Status 404 - /SelectForm.do
        The requested resource (/SelectForm.do) is not available.
   -->
      <table bgcolor="skyblue" >
        <tr>
          <td colspan="2"> Please provide correct UserId and Password</td>
        </tr>
        <tr>  
          <td>UserName</td>
          <td><input type="text" name="Uname" value="" /></td>
        </tr>
        <tr>
          <td>Password</td>
          <td><input type="text" name="Pword" value="" /></td>
        </tr>  
        </table>
        <input type="submit" name="submitData" value="SUBMIT DATA" />
   </form>
  </body>
</html>

3)LoginServlet.java

package com.jexamples.web;

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

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

public class LoginServlet extends HttpServlet
{

private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException,IOException
{
response.setContentType("text/html");
PrintWriter out=response.getWriter();
String un = request.getParameter("Uname");
String pw = request.getParameter("Pword");
if( ("javaj2eepro".equals(un)) && ("jj").equals(pw))
{
//success
RequestDispatcher view = request.getRequestDispatcher("Success.jsp");

view.include(request, response);
out.println("<h1> <font color='blue'>Congrats..!!!</font><br></h1>");
       

}
else
RequestDispatcher view = request.getRequestDispatcher("Failure.jsp");
view.include(request, response);
out.println("<h1> <font color='red'>Failure..!!!</font><br></h1>");
}
   //failure
   }
}
4)Success.jsp

<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href="<%=basePath%>">
    
    <title>My JSP 'Success.jsp' starting page</title>
    
  </head>
  
  <body bgcolor="green">
    Login Sucessfull...! <br>
    <form name="bForm" method="get" action="WForm.jsp">
       <table>
          <tr> 
             <td>ur nick name plz</td>
             <td><input type="text" name="nName" ></td>
          </tr>
        </table>
        <input type="submit" value="Order Beer" />  
     
     
     <br>
     <br>
     <br>
  <!--  <a href="LOut.jsp">Click if want to logout </a>  --> 
    </form>
  </body>
</html>


5)WForm.jsp

<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
    <head>
    <title>Beer Choice</title>
    
  </head>
  <br>
  
  <body>
  <%
     String nNme= request.getParameter("nName");
     
     Cookie cookie = new Cookie("nick",nNme);
     cookie.setMaxAge(1*10);
     response.addCookie(cookie);
   %>
   <h1 align="center"> Beer Selection Page</h1>
   <hr>
   <form name="beerForm" method="post" action="SelectBeer.do">
   <p>hi <%=nNme %> Plz Select Beer Characteristics <br>
   Color:
     <select name="color" size="1">
       <option value="light"> light </option>
       <option value="amber"> amber </option>
       <option value="brown"> brown </option>
       <option value="dark"> dark </option>
     </select>
     <br>
      <input type="submit" name="submitc" value="Submit Color" />
     </form>"
  </body>
</html>


6)BeerSelect.java

package com.jexamples.web;

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

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


public class BeerSelect extends HttpServlet
{
private static final long serialVersionUID = 1L;

public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException
{
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("Beer Selection Advice <br>");
String c = request.getParameter("color");
out.println("<br> Got Beer Color "+c);
Cookie[] cookies = request.getCookies();
String cName, cValue;
for(int i=0; i< cookies.length; i++)
{
Cookie cookie =cookies[i];
cName = cookie.getName();
cValue = cookie.getValue();
out.println("<br> hi "+cValue+" Thanks for choosing our brand <br>");
out.println("cookie name ="+cName+", cookie value ="+cValue+"<hr>");
}
}
}


7)Failure.jsp

<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    
    <title>My JSP 'Failure.jsp' starting page</title>
    
  </head>
  
  <body bgcolor="red">
    Login Failed...! <br>
  </body>
</html>

No comments:

Post a Comment