Example 6:
Handling Http Request &
Responses(doPost)
·
This example uses doPost method
·
Create following files in a folder (Please check
next slide for code)
o HTMLFile
index. html Contains html that allows user to enter details
o Java
File HTTPReqResPost.java Contains logic to get the params details
o DD
web.xml Contains deployment details. Deployment Descriptor
·
Compile the Java File as you did in earlier
example
·
Create below structure with files that you
created above
o Folder
"HTTPReqResPost" contains
o I__"WEB-INF"
Folder and index.html
o I__"WEB-INF"
Folder contains "classes" Folder and web.xml File
o I__"classes"
Folder contains "HTTPReqResPost.class" File
·
Deploy the HTTPReqResPost folder inside webapps
folder of Tomcat
·
Bounce the Server
·
Send request using
"http://localhost:8550/HTTPReqResPost/index.html"
index.html
<html>
<body>
<center> <hl
align="center">Welcome to Student Registration Page...</h1.>
<form
name="StudentForm" method="post"
action="StudentPost.do">
<table>
<tr>
<td><B>Name of
Student : </td>
<td><input
type=textbox name="StudentNameParam" size="25"
value=""></td>
</tr>
<tr>
<td><B>Registration
S : </td> <td><input type=textbox
name="RollNumberParam" size="25"
value=""></td>
</tr>
<tr>
<td><B>Father's
Name : </td>
<td><input
type=textbox name="FatherName" size="25"
value=""></td>
</tr>
<tr>
<td><B>Gender :
<input type="radio" name="gender"
value="male">Male <input
type="radio" name="gender"
value="female">Female </td>
</tr>
</table>
<input type=submit
value="Submit”>
</form>
</body>
</html>
HTTPReqResPet.java: This prepares the
response as HTML file that displays value of request parameters that are
provided in servlet
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HTTPReqResPost
extends HttpServlet {
public void
doPost(HttpServletRequest request, HttpServletResponse response) throws
ServletException, IOException {
String name =
request.getParameter("StudentNameParam");
response.setContentType("text/html");
PrintWriter pw =
response.getWriter();
pw.println("<B>Entered
Student name is : ");
pw.println(name);
pw.close();
}
}
·
web.xml
<servlet> tag maps your
servlet class with internal name
<servlet-mapping> tag
maps internal name with url-pattern that your invoke
<web-app
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/web-app_2_4.xsd"
version="2.4">
<servlet>
<serviet-name>getservletpost</servlet-name>
<serviet-class>HTTPReqResPost</servlet-class>
</servlet>
<servlet-mapping>
<serviet-name>getservletpost</servlet-name>
<url-pattern>/StudentPost.do</url-pattern>
</servlet-mapping>
</web-app>