トップ 一覧 ping 検索 ヘルプ RSS ログイン

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

  • 追加された行はこのように表示されます。
  • 削除された行はこのように表示されます。
!!!ある状況において、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"}}