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.
3. Create package called com.javatutorialscorner.servlet under ServletExample.
4. Create Servlet called ServletFormProcessing as shown in figure.
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.
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
web.xml
8. Add the required code inside doPost() method.
SelectBoxServlet.java
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
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
After Form submit
1. Create new Dynamic web project by choosing File –> New –> Dynamic Web Project .
2. Create the Project called ServletExample as given below.
3. Create package called com.javatutorialscorner.servlet under ServletExample.
4. Create Servlet called ServletFormProcessing as shown in figure.
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.
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
After Form submit
0 comments:
Post a Comment