Multiple values for a single parameter

In our program it may be that we may have multiples values for a single parameter like in checkboxes.

Multiple values for a single parameter

Multiple values for a single parameter

     

In our program it may be that we may have multiples values for a single parameter like in checkboxes. We are going to make one program over it.
To make such a servlet which we have made one html form from where the values will be passed to the controller. In this program we have used the checkbox which will have the same name but with different values. We have one more button submit, on pressing this button the request will be forwarded. 

Now in the servlet that is working like a controller will retrieve the values we have entered in the html form by the method getParameterValues() which returns the array of String.  At last to retrieve all the values from the array use the for loop. The output will be displayed to you by the PrintWriter object. 

The code of the program is given below: 

Index.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<title>Insert title here</title>
</head>
<body>
<form method = "post" action = "/GetParameterServlet/GetParameterValues">
<p>Which of the whisky you like most</p>
<input type = "checkbox" name ="whisky" value = "RoyalChallenge">
  RoyalChallenge.<br>

<input type = "checkbox" name ="whisky" value = "RoyalStag">RoyalStag.<br>
<input type = "checkbox" name ="whisky" value = "Bagpiper">Bagpiper.<br>
<input type ="submit" name= "submit">
</form>
</body>
</html>

 GetParameterValues.java

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

public class GetParameterValues extends HttpServlet{
  protected void doPost(HttpServletRequest request, 
   HttpServletResponse response
)
 throws ServletException, IOException {
  response.setContentType("text/html");
  PrintWriter pw = response.getWriter();
  String[] whisky = request.getParameterValues("whisky");
  for(int i=0; i<whisky.length; i++){
  pw.println("<br>whisky : " + whisky[i]);
  }
  }
}

web.xml file for this program:

<?xml version="1.0" encoding="ISO-8859-1"?>
<!--<!DOCTYPE web-app
 PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd"> -->

<web-app>
 <servlet>
  <servlet-name>Hello</servlet-name>
  <servlet-class>GetParameterValues</servlet-class>
 </servlet>
 <servlet-mapping>
 <servlet-name>Hello</servlet-name>
 <url-pattern>/GetParameterValues</url-pattern>
 </servlet-mapping>
</web-app>

The output of the program is given below:

Here is the result of the above selection:

Download this example