それでは、具体的にJSPページからCookieを保存/取得する方法について説明していきましょう。ここでは、cookie.jsp(リスト1)で入力した電子メールアドレスをcookie_rec.jsp(リスト2)でCookieとして保存します。
リスト1:cookie.jsp
<%@ page contentType="text/html;charset=Windows-31J" %>
<html>
<head>
<title>Cookie情報を保存する</title>
</head>
<body>
<form method="POST" action="cookie_rec.jsp">
E-Mailアドレス:
<input type="text" name="email" size="40" maxlength="100"
value="${cookie['email'].value}" /> (3)
<input type="submit" value="送信" />
</form>
</body>
</html>
リスト2:cookie_rec.jsp
<%@ page contentType="text/html;charset=Windows-31J" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="res" uri="http://jakarta.apache.org/taglibs/response-1.0" %>
<res:addCookie name="email"> (1)
<res:value>${param['email']}</res:value>
<res:maxAge>15552000</res:maxAge>
</res:addCookie>
<c:redirect url="cookie.jsp" /> (2)
そのため、2度目にcookie.jspにアクセスすると、1度目に入力したアドレスがデフォルト表示されます(図3)。
図3:2度目(右図)のアクセス時に、1度目(左図)で入力された値をデフォルト表示 (画像をクリックすると別ウィンドウに拡大図を表示します)
|