You are on page 1of 27

Generating dynamic content

• Create new folder “dynamic”


• Files needed
– info.html
– DynamicHello.java
– web.xml
info.html
<html>
<body>
<form method=“GET”
action="http://localhost:8080/dynamic/abc">
enter your name <input type="text"
name="username" /><br />
<input type="submit" value="submit" />
</form>
</body>
</html>
DynamicHello.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class DynamicHello extends HttpServlet
{
public void doGet(HttpServletRequest request, HttpServletResponse
response) throws ServletException, IOException
{
response.setContentType("text/html");
PrintWriter out=response.getWriter();
String name=request.getParameter("username");
out.println("<html><body><h1>");
out.println("Hello "+name+"Welcome to our webpage");
out.println(“</h1></body></html>");
out.close();
}
}
web.xml
<?xml version="1.0" encoding="utf-8"?>
<web-app>
<servlet>
<servlet-name>servlet1</servlet-name>
<servlet-class>DynamicHello</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>servlet1</servlet-name>
<url-pattern>/abc</url-pattern>
</servlet-mapping>
</web-app>
sendRedirect( ) Example
• Create new folder “redirect”
• Files needed
– login.html
– FirstServlet.java
– SecondServlet.java
– web.xml
login.html
<html>
<body>
<form method="GET"
action=“http://localhost:8080/redirect/abc1”>
Enter your name
<input type="text" name="username" /><br />
Enter your password
<input type="password" name="pwd" /><br />
<input type="submit" value="submit" />
</form>
</body>
</html>
FirstServlet.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class FirstServlet extends HttpServlet
{
public void doGet(HttpServletRequest request,
HttpServletResponse response) throws
ServletException, IOException
{
response.setContentType("text/html");
PrintWriter out=response.getWriter();
FirstServlet.java (contd..)
String a = request.getParameter("username");
String b = request.getParameter("pwd");
if(a.equals("abc") && b.equals("xyz"))
{
response.sendRedirect("http://localhost:8080/redirect/abc2");
}
else
{
out.println(“<html><body><h1>”);
out.println("You are not a valid user");
out.println(“</h1></body></html>”);
}
out.close();
}
}
SecondServlet.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class SecondServlet extends HttpServlet
{
public void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException,
IOException
{
response.setContentType("text/html");
PrintWriter out=response.getWriter();
out.println("<html><body><h1>");
out.println("Welcome to our webpage");
out.println(“</h1></body></html>");
out.close();
}}
web.xml
<?xml version="1.0" encoding="utf-8"?>
<web-app>
<servlet>
<servlet-name>servlet1</servlet-name>
<servlet-class>FirstServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>servlet1</servlet-name>
<url-pattern>/abc1</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>servlet2</servlet-name>
<servlet-class>SecondServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>servlet2</servlet-name>
<url-pattern>/abc2</url-pattern>
</servlet-mapping>
</web-app>
Filters Example
• Create new folder “filter”
• Files needed
– add.html
– AddServlet.java (servlet class)
– CheckFilter.java (filter class)
– web.xml
add.html
<html>
<body>
<form method="get"
action="http://localhost:8080/filter/abc">
Enter First Number
<input type="text" name="first" /><br />
Enter Second Number
<input type="text" name="second" /><br />
<input type="submit" value="ADD" />
</form>
</body>
</html>
CheckFilter.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class CheckFilter implements Filter
{
public void init(FilterConfig fcon) throws ServletException
{
}
public void destroy()
{
}
public void doFilter(ServletRequest request, ServletResponse
response, FilterChain fc) throws ServletException, IOException
{
String a=request.getParameter("first");
CheckFilter.java (contd)
String b=request.getParameter("second");
int x=Integer.parseInt(a);
int y=Integer.parseInt(b);
if(x<0 || y<0)
{
response.setContentType(“text/html”);
PrintWriter out=response.getWriter();
out.println("<html><body><h1>");
out.println("sorry your input should be only +ve numbers.");
out.println(“</h1></body></html>");
out.close();
}
else
{
fc.doFilter(request,response);
}
}
}
AddServlet.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class AddServlet extends HttpServlet
{
public void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException,
IOException
{
response.setContentType("text/html");
PrintWriter out=response.getWriter();
String a=request.getParameter("first");
String b=request.getParameter("second");
AddServlet.java (contd..)
int x=Integer.parseInt(a);
int y=Integer.parseInt(b);
int z=x+y;
out.println("<html><body>
<h1>Result is” +z+ “</h1></body></html>");
out.close();
}
}
web.xml
<?xml version="1.0" encoding="utf-8"?>
<web-app>
<filter>
<filter-name>filter1</filter-name>
<filter-class>CheckFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>filter1</filter-name>
<url-pattern>/abc</url-pattern>
</filter-mapping>
<servlet>
<servlet-name>servlet1</servlet-name>
<servlet-class>AddServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>servlet1</servlet-name>
<url-pattern>/abc</url-pattern>
</servlet-mapping>
</web-app>
Cookies Example
• Create new folder “cookies”
• Files needed
– welcome.html
– FirstCookie.java
– SecondCookie.java
– ThirdCookie.java
– web.xml
welcome.html
<html>
<body>
<form action="http://localhost:8080/cookies/s1"
method=“POST">
enter your name
<input type="text" name="uname" /><br />
enter your father's name
<input type="text" name="fname" /><br />
<input type="submit" value="submit" />
</form>
</body>
</html>
FirstCookie.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class FirstCookie extends HttpServlet
{
public void doPost(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException
{
response.setContentType("text/html");
PrintWriter out=response.getWriter();
String a = request.getParameter("uname");
String b = request.getParameter("fname");
FirstCookie.java (contd..)
Cookie c1=new Cookie(“UserName",a);
Cookie c2=new Cookie(“FatherName",b);
response.addCookie(c1);
response.addCookie(c2);
out.println("<html> <body> <form method=‘POST’
action='http://localhost:8080/cookies/s2’>
Enter your roll no <input type='text' name='rollno' /> <br />
Enter your attendance <input type='text' name='attend' />
<br /> <input type='submit' value='submit' /> <br /> </form>
</body> </html>");
out.close();
}}
SecondCookie.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class SecondCookie extends HttpServlet
{
public void doPost(HttpServletRequest request,
HttpServletResponse response) throws
ServletException, IOException
{
response.setContentType("text/html");
PrintWriter out=response.getWriter();
String e = request.getParameter("rollno");
String d = request.getParameter("attend");
SecondCookie.java (contd..)
Cookie c3=new Cookie("RollNumber",e);
Cookie c4=new Cookie("Attendance",d);
response.addCookie(c3);
response.addCookie(c4);
out.println("<html><body><form method=‘POST’>
action=‘http://localhost:8080/cookies/s3’
<h2>Thank You for entering the details.</h2>
<input type=‘submit’ value=‘check details’ />
</form></body></html>");
out.close();
}
}
ThirdCookie.java
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class ThirdCookie extends HttpServlet


{

public void doPost(HttpServletRequest request, HttpServletResponse


response) throws ServletException, IOException
{
response.setContentType("text/html");
PrintWriter out=response.getWriter();
out.println("<html><body><h2> You have entered following details”);
Cookie[] c=request.getCookies();
ThirdCookie.java

if(c!=null)
{
out.println ("<br />"+ c[0].getName()+" "+c[0].getValue());
out.println("<br />"+c[1].getName()+" "+c[1].getValue());
out.println("<br />"+c[2].getName()+" "+c[2].getValue());
out.println("<br />"+c[3].getName()+" "+c[3].getValue());
}
out.println("</h2></body></html>");
out.close();
}
}
web.xml
<?xml version="1.0" encoding="utf-8"?>
<web-app>

<servlet>
<servlet-name>cookie1</servlet-name>
<servlet-class>FirstCookie</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>cookie1</servlet-name>
<url-pattern>/s1</url-pattern>
</servlet-mapping>

<servlet>
<servlet-name>cookie2</servlet-name>
<servlet-class>SecondCookie</servlet-class>
</servlet>
web.xml contd..
<servlet-mapping>
<servlet-name>cookie2</servlet-name>
<url-pattern>/s2</url-pattern>
</servlet-mapping>

<servlet>
<servlet-name>cookie3</servlet-name>
<servlet-class>ThirdCookie</servlet-class>
</servlet>

<servlet-mapping>
<servlet-name>cookie3</servlet-name>
<url-pattern>/s3</url-pattern>
</servlet-mapping>
</web-app>

You might also like