- 追加された行はこのように表示されます。
- 削除された行は
このように表示されます。
!!!ある状況において、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() %>
{{ref_image 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() で取得されるクッキーの配列の要素を取得できる
----
{{amazon 1932394389}}
[SCWCD Exam Study Kit: Java Web Component Developer Certification (ペーパーバック)|http://www.amazon.co.jp/dp/1932394389?tag=typea09-22&link_code=as3&creativeASIN=1932394389&creative=3999&camp=767]
----
{{include_html banner_html, "!J2EE"}}