<c:redirect>
xmlns:c="http://java.sun.com/jsp/jstl/core"
SYNOPSIS
説 明
url 属性で指定された URL にリダイレクトします。
JSP 内でここまでに出力した内容を全てキャンセルし 302 Moved Temporarily
レスポンスを返し、JSP の処理を終了します。
リダイレクト先の URL での処理は別リクエスト扱いになるため、リクエスト属性に
よるデータの連携は行えません。またリクエストの再実行が発生するため
<jsp:forward> で済む場合はなるべくそちらを使用してください。
転送相手が全く別のサイトやサーブレットでない場合や、リロード対策のために
クライアント側のブラウザの URL を変更したい場合などに使用します。
属 性
required
リダイレクト先の URL を絶対パスまたは相対パス形式で指定します。
context 属性を省略した場合、この URL は同一 Web アプリケーション内での相対パスと解釈されます。
つまり / で始まる URL は同一 Web アプリケーションのコンテキストルートからの位置を示し、
また / で始まらない URL はこのタグが記述されている JSP からの相対 URL とみなされます。
context 属性と共に指定した場合、指定した Web アプリケーションのコンテキストルートからの位置を示します。
この時 url 属性は / から始める必要があります。
内 容
リダイレクト先の URL に連結するリクエストパラメータを指定します。
使用例
http:// から始まる絶対 URL でリダイレクト先を指定します。
JSP
<%@ page language="java"
contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8" session="false" %>
<%@ taglib prefix="c" uri="/WEB-INF/tld/c.tld" %>
<html>
<body>
<c:redirect url="http://www.google.co.jp/" />
</body>
</html>
response
HTTP/1.1 302 Moved Temporarily Server: Apache-Coyote/1.1 Location: http://www.google.co.jp/ Content-Type: text/html;charset=UTF-8 Content-Length: 0 Date: Fri, 21 Dec 2007 12:12:45 GMT Connection: close
url 属性が / から始まる相対パスで指定されている場合、
同一 Web アプリケーションのコンテキストルートからのパスとして解釈されます。
http://localhost:8081/lab.moyo.biz/sample/test.jsp
<c:redirect url="/foo/index.html" />
HTTP/1.1 302 Moved Temporarily Server: Apache-Coyote/1.1 Location: http://localhost:8081/lab.moyo.biz/foo/index.html Content-Type: text/html;charset=UTF-8 Content-Length: 0 Date: Fri, 21 Dec 2007 12:31:04 GMT Connection: close
url 属性が / から始まらない場合は、その JSP からの相対パスとして解釈されます。
http://localhost:8081/lab.moyo.biz/sample/test.jsp
<c:redirect url="foo/index.html" />
HTTP/1.1 302 Moved Temporarily Server: Apache-Coyote/1.1 Location: http://localhost:8081/lab.moyo.biz/sample/foo/index.html Content-Type: text/html;charset=UTF-8 Content-Length: 0 Date: Fri, 21 Dec 2007 12:16:32 GMT Connection: close
http://localhost:8081/lab.moyo.biz/sample/test.jsp
<c:redirect url="/foo/bar.jsp">
<c:param name="name" value="値" />
</c:redirect>
HTTP/1.1 302 Moved Temporarily Server: Apache-Coyote/1.1 Location: http://localhost:8081/lab.moyo.biz/foo/bar.jsp?name=%e5%80%a4 Content-Type: text/html;charset=UTF-8 Content-Length: 0 Date: Fri, 21 Dec 2007 16:42:08 GMT Connection: close