| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

7.1 定義済み変数にアクセスするELコードを書く

提供: MyMemoWiki
ナビゲーションに移動 検索に移動

ある状況において、pageScope, requestScope, sessionScope, applicationScope, パラメータとparamValues, ヘッダーとheaderValues, cookie, initParam, pageContextを含む定義済み変数にアクセスするELコードを書く。

参照先まとめ

Scope属性
暗黙変数 Servletからの参照
applicationScope javax.servlet.ServletContext の attribute
sessionScope javax.servlet.http.HttpSession の attribute
requestScope javax.servlet.javax.servlet.ServletRequest の attribute
pageScope javax.servlet.jsp.JspContext の attribute
ヘッダ
暗黙変数 Servletからの参照
header javax.servlet.http.HttpServletRequest.getHeader()
headerValues javax.servlet.http.HttpServletRequest.getHeaders()
パラメータ
暗黙変数 Servletからの参照
initParam javax.servlet.ServletContext.getInitParameter()
param javax.servlet.ServletRequest.getParameter()
paramValues javax.servlet.ServletRequest.getParameterValues()
クッキー
暗黙変数 Servletからの参照
cookie javax.servlet.http.HttpServletRequest.getCookies() から戻される javax.servlet.Cookie 配列のうちひとつを名前で指定
コンテキスト
暗黙変数
pageContext

pageContext
EL式 スクリプトレット
${ pageContext.servletContext.majorVersion } <%= pageContext.getServletContext().getMajorVersion() %>
${ pageContext.request.method } <%= ((HttpServletRequest)pageContext.getRequest()).getMethod() %>
${ pageContext.out.bufferSize } <%= pageContext.getOut().getBufferSize() %>

0097 jspcontext.jpg

applicationScope
EL式 スクリプトレット
${ applicationScope['javax.servlet.context.tempdir'] } <% =application.getAttribute("javax.servlet.context.tempdir") %>
${ applicationScope['org.apache.catalina.WELCOME_FILES'] } <%= pageContext.getAttribute("org.apache.catalina.WELCOME_FILES",PageContext.APPLICATION_SCOPE) %>
sessionScope
EL式 スクリプトレット
${ sessionScope["key"] } <%= session.getAttribute("key") %>
${ sessionScope['key'] } <%= session.getAttribute("key") %>
${ sessionScope.key } <%= session.getAttribute("key") %>
${ sessionScope.key } <%= pageContext.getAttribute("key",PageContext.SESSION_SCOPE) %>
pageScope
EL式 スクリプトレット
${ pageScope.test_value } <%= pageContext.getAttribute("test_value") %>
${ pageScope.test_value } <%= pageContext.getAttribute("test_value", PageContext.PAGE_SCOPE) %>
  • xxxScope は、xxx.getAttribute と同様な働き
  • pageScope は、JspPageではなく、 pageContext の attribute を参照する
  • キー名は、" (二重引用符) または、'(引用符) で囲み参照する。もしくは直接 . (ピリオド)で参照する
header
EL式 スクリプトレット
${ header.accept } <%= request.getHeader("accept") %>
${ header["referer"] } <%= request.getHeader("referer") %>
${ header['host'] } <%= request.getHeader("'host") %>
headerValues
EL式 スクリプトレット
${ headerValues.accept[0] } <%= request.getHeaders("accept").nextElement() %>
${ headerValues.referer["0"] } <%= request.getHeaders("referer").nextElement() %>
${ headerValues.host['0'] } <%= request.getHeaders("host").nextElement() %>
initParam
EL式 スクリプトレット
${ initParam.contextParam1 } <%= application.getInitParameter("contextParam1") %>
${ initParam["contextParam2"] } <%= application.getInitParameter("contextParam2") %>
param
EL式 スクリプトレット
${ param["param1"] } <%= request.getParameter("param1") %>
${ param.param1 } <%= request.getParameter("param1") %>
parmValues
${ paramValues.param1[0] } <%= request.getParameterValues("param1")[0] %>
${ paramValues.param1["0"] } <%= request.getParameterValues("param1")[0] %>
${ paramValues.["param1"][0] } <%= request.getParameterValues("param1")[0] %>
${ paramValues.["param1"]["0"] } <%= request.getParameterValues("param1")[0] %>
cookie
EL式
${ cookie.JSESSIONID.value }
${ cookie["JSESSIONID"].value }
${ {cookie["JSESSIONID"].name }
  • HttpServletRequest.getCookies() で取得されるクッキーの配列の要素を取得できる

SCWCD Exam Study Kit: Java Web Component Developer Certification (ペーパーバック)


{{include_html banner_html, "!J2EE"}}