[ Team LiB ] |
![]() ![]() |
Recipe 18.2 Examining HTTP Request Headers in a JSPProblemYou want to use a JSP to display the request headers and values. SolutionUse the c:forEach and c:out JSTL tags to view the header names and values. DiscussionThe JSTL v1.0 makes all existing request headers available via the header implicit object. The JSTL automatically makes this variable available to JSPs; the header object evaluates to a java.util.Map type. In Example 18-2, the c:forEach tag iterates over this Map and stores each header name and value in the loop variable named by c:forEach's var attribute (in Example 18-2 it's called req). The c:forEach var attribute is implemented as a java.util.Map.Entry type, which is a data type that stores keys and their values. The c:out tag displays each header name by using EL format: ${req.key}. Consequently c:out displays the value with ${req.value}. Example 18-2. Viewing the request header names and values in a JSP<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %> <html> <head><title>Request Headers</title></head> <body> <h2>Here are the Request Header names and values</h2> <c:forEach var="req" items="${header}"> <strong><c:out value= "${req.key}"/></strong>: <c:out value="${req.value}"/><br> </c:forEach> </body> </html> Figure 18-2 shows the result in a browser of requesting the displayHeaders.jsp page. Figure 18-2. A JSP page shows request headers using JSTL tags![]() See AlsoChapter 23 on using the JSTL; Recipe 18.2 on examining request headers in a servlet; Recipe 18.3 on using a filter to wrap the request and forward it along the filter chain; Recipe 18.6 on using a listener to track requests; Chapter 7 on handling request parameters and JavaBean properties with servlets, JSPs, and filters. |
[ Team LiB ] |
![]() ![]() |