[ Team LiB ] |
![]() ![]() |
Recipe 23.10 Accessing Request Parameters with the ELProblemYou want to access a request parameter using the EL in a JSP. SolutionUse the param implicit object in your JSP code. DiscussionThe JSTL provides an implicit object named param that you can use to get a request parameter. Simply follow the term "param" with a period and the parameter name. Use this terminology with the EL to output the value of a request parameter with the c:out tag. Example 23-11 displays a greeting with the visitor's name. The request might look like: http://localhost:8080/home/welcome.jsp?name=Bruce%20Perry If the URL does not include the "name" parameter, the JSP displays the message "Hello Esteemed Visitor." Example 23-11. Using the JSTL in a JSP to display the result of a request parameter<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %> <html> <head><title>Accessing a Scoped Value</title></head> <body> <h2>Hello <c:choose> <c:when test="${empty param.name}"> Esteemed Visitor </c:when> <c:otherwise> <c:out value="${param.name}" /> </c:otherwise> </c:choose> </h2> </body> </html> The code tests whether the request contains a value for name by using the empty EL keyword: <c:when test="${empty param.name}"> The c:choose , c:when, and c:otherwise tags are like if/then/else statements in Java code. If the request parameter name does not have a value, the browser will display "Esteemed Visitor". Otherwise, it displays the value of name. Figure 23-6 shows a JSP displaying the message, including the parameter value. Figure 23-6. Humble output of a JSP using the param JSTL implicit object![]() See AlsoChapter 18 on working with the client request; the Jakarta Project's Taglibs site: http://jakarta.apache.org/taglibs/index.html; Sun Microsystem's JSTL information page: http://java.sun.com/products/jsp/jstl/; Recipe 23.3 on using the core tags; Recipe 23.4 and Recipe 23.5 on using the XML tags; Recipe 23.6 on using the formatting tags; Recipe 23.7 and Recipe 23.8 on using the SQL JSTL tags; Recipe 23.11-Recipe 23.14 on using the EL to access request headers, cookies, and JavaBean properties. ![]() |
[ Team LiB ] |
![]() ![]() |