logo

Hidden Form Field


Show

Textfield is employed for maintaining the state of an user In case of Hidden Form Field a hidden (invisible)

In this type of case, we store the knowledge within the hidden field and obtain it from another servlet. This approach is best if we've to submit the form altogether and that we don't need to depend upon the browser.

Let's see the code to store value in a hidden field.

<input type="hidden" name="uname" value="Vimal Jaiswal">  

Here, Vimal Jaiswal is the hidden field value and uname is the hidden field name.

Real application of hidden form field

It is widely utilized as a comment sort of an internet site. In such a case, we store page id or page name within the hidden field in order that each page is often uniquely identified.

Advantage of Hidden Form Field

  • Whether the cookie is disabled or not, It will always work

Disadvantage of Hidden Form Field:

  • It is maintained at server side.
  • Each page required a extra form submission
  • Only textual information is often used.

Example of using hidden form field

We are storing the name of the user during a hidden text field and getting that value from another servlet, in this below given Example.

Index.html

<form action="servlet1">  
Name:<input type="text" name="userName"/><br/>  
<input type="submit" value="go"/>  
</form>

FirstServlet.java

import java.io.*;  
import javax.servlet.*;  
import javax.servlet.http.*;  

public class FirstServlet extends HttpServlet {  
public void doGet(HttpServletRequest request, HttpServletResponse response){  
        try{  

        response.setContentType("text/html");  
        PrintWriter out = response.getWriter();         

        String n=request.getParameter("userName");  
        out.print("Welcome "+n);  
          
        //creating form that have invisible textfield  
        out.print("<form action='servlet2'>");  
        out.print("<input type='hidden' name='uname' value='"+n+"'>");  
        out.print("<input type='submit' value='go'>");  
        out.print("</form>");  
        out.close();  

                }catch(Exception e){System.out.println(e);}  
    }   

}  

SecondServlet.java

import java.io.*;  
import javax.servlet.*;  
import javax.servlet.http.*;  
public class SecondServlet extends HttpServlet {  
public void doGet(HttpServletRequest request, HttpServletResponse response)  
        try{  
        response.setContentType("text/html");  
        PrintWriter out = response.getWriter();          

        //Getting the value from the hidden field  
        String n=request.getParameter("uname");  
        out.print("Hello "+n);  
 
        out.close();  
                }catch(Exception e){System.out.println(e);}  
    }  
}  

Web.xml

<web-app>  

<servlet>  
<servlet-name>s1</servlet-name>  
<servlet-class>FirstServlet</servlet-class>  
</servlet>  

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

<servlet>  
<servlet-name>s2</servlet-name>  
<servlet-class>SecondServlet</servlet-class>  
</servlet>  

<servlet-mapping>  
<servlet-name>s2</servlet-name>  
<url-pattern>/servlet2</url-pattern>  
</servlet-mapping>  

</web-app>