Home » Enterprise Java » servlet » Java Servlet Hidden Field Example

About Yatin

Yatin
The author is graduated in Electronics & Telecommunication. During his studies, he has been involved with a significant number of projects ranging from programming and software engineering to telecommunications analysis. He works as a technical lead in the information technology sector where he is primarily involved with projects based on Java/J2EE technologies platform and novel UI technologies.

Java Servlet Hidden Field Example

A hidden form field is a technique used to store the session information for a particular client and is one of an important Session Tracking Technique. In this tutorial, we will explain and show you how to handle the hidden fields in a Servlet.

1. Introduction

Session Tracking is a technique to maintain the requests of the same user for a specific time-period. Developers can maintain the session tracking in three ways:
 

  • Hidden Form Field
  • Cookies
  • URL Rewriting

A hidden form field is a way of session tracking so that developers can save the information in the client browser itself. For that, developers can use a hidden field for securing the fields. So at the time of page display, no one can see these fields. When a client submits the form, the browser also transfers these hidden value to the server with the other fields. Developers can secure the field as:

 
Syntax of Hidden Field

<input type="hidden" name="testHidden" value="testHiddenValue" />

In Servlet, developers can get the Hidden Form Field as:

Syntax of Request Parameter

String param1 = request.getParameter("testHidden");

1.1 Advantages

  • Does not have to depend on the browser whether the cookie is disabled or not.
  • Easier implementation.
  • Hidden boxes reside in the web pages of the browser window so they do not provide a burden to the server.

1.2 Disadvantages

  • Extra form submission is required on every page which is a big overhead.
  • Maintained at the server side.
  • More complex than URL rewriting.
  • Only textual information can be used.
  • Hidden boxes do not provide data security because their data can be viewed through the view source option.
  • It increases the network traffic because the hidden data travels over the network along with the request and response object.

Now, open up the Eclipse Ide and let’s see how to implement the Hidden Form field in a sample Java-based web application.

2. Java Servlet Hidden Field Example

In this example, we are mentioning the two Hidden Form fields (i.e. name and location) in the index.jsp and accessing these fields into our Servlet.

index.jsp

<!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=UTF-8">
	    <title>Servlet 3.0 Hidden Field Example</title>
	    <style type="text/css">
	    	.paddingBtm {
	    		padding-bottom: 12px;
	    	}
	    </style>
	</head>
	<body>
	    <center>
	        <h2>Click the Submit button to check the hidden field</h2>
	        <form name="hiddenForm" method="post" action="hiddenFieldServlet">	        		        		        	
	            <div class="paddingBtm">
	            	<input id="nameId" type="hidden" name="name" value="JavaCodeGeek" /> 
	            </div>
	            <div class="paddingBtm">
	            	<input id="locationId" type="hidden" name="location" value="Greece" />
	            </div>
	            <div id="loginBtn">
	            	<input id="btn" type="submit" value="Submit" />
	            </div>
	        </form>
	    </center>
	</body>
</html>

Now in order to retrieve the hidden field value in a Servlet, we will use the HttpServletRequest interface’s getParameter() method.

HiddenFieldServlet.java

package com.jcg.servlet;

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

import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet("/hiddenFieldServlet")
public class HiddenFieldServlet extends HttpServlet {

	private static final long serialVersionUID = 1L;

	// This Method Is Called By The Servlet Container To Process A 'POST' Request.
	public void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {
		handleRequest(req, resp);
	}

	public void handleRequest(HttpServletRequest req, HttpServletResponse resp) throws IOException {

		resp.setContentType("text/html");

		// Post Parameters From The Request
		String param1 = req.getParameter("name");
		String param2 = req.getParameter("location");

		// Print The Response
		PrintWriter out = resp.getWriter();
		out.println("<html><body><center>");		
		out.println("<form action='index.jsp'>");
		out.println("<strong>Company Name: </strong>" + param1);
		out.println("<br><strong>Location: </strong>" + param2);
		out.println("<br><br><i>Click on 'GoBack' button to go on JSP page</i>");
		out.println("<br><input type='submit' value='GoBack'>");
		out.println("</form>");
		out.println("</center></body></html>");		

		out.close();
	}
}

3. Project Deploy & Run

As we are ready for all the changes, let us compile the project and deploy the application on the Tomcat7 server. Open your favorite browser and hit the following URL.

http://localhost:8085/JavaServletHiddenFieldEx/

The output page will be displayed.

Fig. 1 - Application Output

Fig. 1 – Application Output

Click on Submit button.

Fig. 2: Hidden Form Fields Displayed

Fig. 2: Hidden Form Fields Displayed

That’s all for this post. Happy Learning!!

4. Conclusion

In this section, developers learned how to handle the hidden fields in a Servlet. Developers can download the sample application as an Eclipse project in the Downloads section. I hope this article served you with whatever developers were looking for.

5. Download the Eclipse Project

This was an example of Servlet application.

Download
You can download the full source code of this example here: JavaServletHiddenFieldEx
(No Ratings Yet)
Start the discussion Views Tweet it!

Do you want to know how to develop your skillset to become a Java Rockstar?

Subscribe to our newsletter to start Rocking right now!

To get you started we give you our best selling eBooks for FREE!

 

1. JPA Mini Book

2. JVM Troubleshooting Guide

3. JUnit Tutorial for Unit Testing

4. Java Annotations Tutorial

5. Java Interview Questions

6. Spring Interview Questions

7. Android UI Design

 

and many more ....

 

Receive Java & Developer job alerts in your Area

 

Leave a Reply

avatar
  Subscribe  
Notify of