Servlets: Processing Form Parameters

Problem

You want to process the data from an HTML form in a servlet.

Solution

Use the request object’s getParameter( ) method.

Discussion

Each uniquely named INPUT element in the FORM on the HTML page makes an entry in the request object’s list of parameters. These can be obtained as an enumeration, but more commonly you request just one. Figure 18-2 shows a simple form that asks you how many random numbers you want generated, and makes up that many for you.

Random numbers HTML page

Figure 18-2. Random numbers HTML page

When I type the number 8 into the field and press the “Get Yours” button, I see the screen shot in Figure 18-3.

Random numbers servlet output

Figure 18-3. Random numbers servlet output

How does it work? The program obviously consists of both an HTML page and a Java servlet. The HTML page appears in Example 18-3; notice the FORM entry and the INPUT field.

Example 18-3. IntsServlet.htm

<HTML> <HEAD><TITLE>Random Numbers Page</TITLE></HEAD> <BODY BGCOLOR="white"> <H1>Random Numbers Page</H1> <P>This site will let you pick some random numbers for Lottery, lucky number or other purposes, all electronically.</P> <FORM METHOD=POST ACTION="/servlets/IntsServlet"> <H4>How Many Numbers Do You Want Today?</H4> <INPUT NAME=howmany SIZE=2> (default is 5) <BR> <INPUT TYPE="SUBMIT" VALUE="Get YOURS!"> ...

Get Java Cookbook now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.