How to Use the Methods of the Request Object - Java
In this excerpt from chapter 4 of Joel Murach's Java Servlets and JSP, you'll learn how to develop a web application that consists of HTML pages and JavaServer Pages (JSPs). As you will see, JSPs work fine as long as the amount of processing that's required for each page is limited. When you complete this chapter, you should be able to use JSPs to develop simple web applications of your own.
In the last figure, you learned how to use the getParameter method to return the value that the user entered into a textbox. Now, Figure 5 summarizes that method and illustrates it in a new context. This figure also summarizes and illustrates two more methods of the implicit request object.
Figure 5:How to use the methods of the request object
Three methods of the request object
Method
Description
getParameter(String param)
Returns the value of the specified parameter as a string if it exists or null if it doesn't. Often, this is the value defined in the Value attribute of the control in the HTML page or JSP.
getParameterValues(String param)
Returns an array of String objects containing all of the values that the given request parameter has or null if the parameter doesn't have any values.
getParameterNames()
Returns an Enumeration object that contains the names of all the parameters contained in the request. If the request has no parameters, the method returns an empty Enumeration object.
More Scriptlets
A scriptlet that determines if a checkbox is checked
<% String rockCheckBox = request.getParameter("Rock"); // returns the value or "on" if checked, null otherwise. if (rockCheckBox != null){ %> You checked Rock music! <% } %>
A scriptlet that reads and displays multiple values from a list box
<% String[] selectedCountries = request.getParameterValues("country"); // returns the values of items selected in list box. for (int i = 0; i < selectedCountries.length; i++){ %> <%= selectedCountries[i] %> <br> <% } %>
A scriptlet that reads and displays all request parameters and values
<% Enumeration parameterNames = request.getParameterNames(); while (parameterNames.hasMoreElements()){ String parameterName = (String) parameterNames.nextElement(); String parameterValue = request.getParameter(parameterName); %> <%= parameterName %> has value <%= parameterValue %>. <br> <% } %>
Description
You can use the getParameter method to return the value of the selected radio button in a group or the selected item in a combo box. You can also use it to return the value of a selected check box or independent radio button, but that value is null if it isn't selected.
If an independent radio button or a checkbox doesn't have a Value attribute, this method returns "on" if the control is selected or null if it isn't.
In most cases, the getParameter method returns the value of the parameter. For a textbox, that's usually the value entered by the user. But for a group of radio buttons or a combo box, that's the value of the button or item selected by the user.
For checkboxes or independent radio buttons that have a Value attribute, the getParameter method returns that value if the checkbox or button is selected and a null value if it isn't. For checkboxes or independent radio buttons that don't have a Value attribute, though, the getParameter method returns an "on" value if the checkbox or button is selected and a null value if it isn't. This is illustrated by the first example in this figure.
Remember: this is from chapter four ofJoel Murach's Java Servlets and JSP (Mike Murach & Associates, ISBN 1890774189, 2003). Grab a copy at your favorite book store today!