We are moved to new domain
Click -> www.ehowtonow.com
Saturday, 22 March 2014

Servlet - Process From Data

In this tutorials we are going see about submit form with all input type and how to read the values in servlet.
1. Create new Dynamic web project by choosing File –> New –> Dynamic Web Project .
2. Create the Project called ServletExample as given below.
Servlet-dynamic web project
3. Create package called com.javatutorialscorner.servlet under ServletExample.
4. Create Servlet called ServletFormProcessing as shown in figure.
Create Servlet
http servlet 
5. Click Next it will show URL mapping.You can edit Servlet URL if you need.
6. Click Next it will show methods available  in HttpServlet. Select appropriate method you need.
http servlet Services
7. By default your servlet will be mapped in web.xml, if your servlet not mapped in your web.xml use the following configuration to map the servlet in your web.xml
Servlet Mapping
<servlet>
    <servlet-name>Your Servlet Name</servlet-name>
    <servlet-class>Fully Qulaified Servlet Class Name</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>Your Servlet Name</servlet-name>
    <url-pattern>/URL to Call Servlet</url-pattern>
  </servlet-mapping> 

web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>ServetExample</display-name>
  <welcome-file-list>
    <welcome-file>index.html</welcome-file>
    <welcome-file>index.htm</welcome-file>
    <welcome-file>index.jsp</welcome-file>
    <welcome-file>default.html</welcome-file>
    <welcome-file>default.htm</welcome-file>
    <welcome-file>default.jsp</welcome-file>
  </welcome-file-list>
  <servlet>
    <servlet-name>ServletFormProcessing</servlet-name>
    <servlet-class>com.javatutorialscorner.servlet.ServletFormProcessing</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>ServletFormProcessing</servlet-name>
    <url-pattern>/ServletFormProcessing</url-pattern>
  </servlet-mapping>
</web-app>

8. Add the required code inside doPost() method.

SelectBoxServlet.java

package com.javatutorialscorner.servlet;

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

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

/**
 * Servlet implementation class ServletFormProcessing
 */

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

 /**
  * @see HttpServlet#HttpServlet()
  */
 public ServletFormProcessing() {
  super();
  // TODO Auto-generated constructor stub
 }

 /**
  * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse
  *      response)
  */
 protected void doGet(HttpServletRequest request,
   HttpServletResponse response) throws ServletException, IOException {
  // TODO Auto-generated method stub
 }

 /**
  * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse
  *      response)
  */
 protected void doPost(HttpServletRequest request,
   HttpServletResponse response) throws ServletException, IOException {
  // TODO Auto-generated method stub

  response.setContentType("text/html");
  PrintWriter writer = response.getWriter();
  Enumeration<String> paramNames = request.getParameterNames();
  writer.write("<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">\n"
    + "<html><head><meta http-equiv=\"Content-Type\" content=\"text/html; charset=ISO-8859-1\"><title>Java Tutorials Corner - Servlet - Submit Form and Process Data</title>"
    + "</head><body><h1>Java Tutorials Corner - Servlet - Submit Form and Process Data</h1><table>");
  while (paramNames.hasMoreElements()) {
   String param = (String) paramNames.nextElement();
   writer.write("<tr><td>" + param + "</td><td>");
   String[] paramValues = request.getParameterValues(param);

   if (paramValues.length == 1) {
    String paramValue = paramValues[0];
    if (paramValue.length() == 0)
     writer.println("N/A");
    else
     writer.println(paramValue);
   } else {

    for (int i = 0; i < paramValues.length; i++) {
     writer.println(paramValues[i] + "<br/>");
    }

   }
   writer.write("</td></tr>");
  }
  writer.write("</table></body></html>");
 }

}

In above program request.getParameterNames(); reads all the parameter in the form and return as Enumeration<String> , So We can read all the values by iterating the Enumeration<String> .

9. Create html page in WebContent folder

formsubmit.html

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Java Tutorials Corner - Servlet Form Processing</title>
</head>
<body>
 <h1>Java Tutorials Corner - Servlet Form Processing</h1>
 <form action="ServletFormProcessing" method="post">

  <table>
   <tr>
    <td>Name :</td>
    <td><input type="text" name="name" /></td>
   </tr>
   <tr>
    <td>Job :</td>
    <td><input type="text" name="job" /></td>
   </tr>
   <tr>
    <td>Password :</td>
    <td><input type="password" name="password" /></td>
   </tr>
   <tr>
    <td>Gender :</td>
    <td><input type="radio" name="geneder" value="male" />Male <input
     type="radio" name="geneder" value="female" />Female</td>
   </tr>

   <tr>
    <td>Experience :</td>
    <td><select name="experience">
      <option value="fresher">Fresher</option>
      <option value="experienced">Experience</option>
    </select></td>
   </tr>
   <tr>
    <td>Technology :</td>
    <td><select multiple="multiple" size="5" name="technology">
      <option value="Java">Java</option>
      <option value="Servlet">Servlet</option>
      <option value="JSP">JSP</option>
      <option value="Spring">Spring</option>
      <option value="Struts">Struts</option>
      <option value="Hibernate">Hibernate</option>
      <option value="Web Service">Web Service</option>
      <option value="XML">XML parsing</option>
      <option value="JSON">JSON</option>
    </select></td>
   </tr>
  </table>
  <table>
   <tr>
    <td><input type="checkbox" name="servlet" checked="checked" />
     Servlet Tutorial</td>
   </tr>
   <tr>
    <td><input type="checkbox" name="spring" checked="checked" />
     Spring Tutorial</td>
   </tr>
   <tr>
    <td><input type="checkbox" name="webservice" />Web Service
     Tutorial</td>
   </tr>
  </table>
  <input type="submit" value="Submit" />
 </form>
</body>
</html>

In above html page in form tag method="post"to mention the form submit using post method.The default method to submit form is GET.

9. Now save and Run the servlet, Run As –> Run on Server – Select your web Server to run the servlet. ( see How to configure tomcat in eclipse) 
http://www.javatutorialcorner.com/2014/03/how-to-configure-tomcat-in-eclipse.html

10.call the following URL.

http://localhost:8080/ServletExample/formsubmit.html

Output

servlet form processingAfter Form submit

servlet form processing output

Shop and help us

Flipkart Offer Snapdeal offer Amazon.in offer Amazon.com offer
  • Blogger Comments
  • Facebook Comments
  • Disqus Comments

0 comments:

Post a Comment

Item Reviewed: Servlet - Process From Data Rating: 5 Reviewed By: eHowToNow