Package nablarch.fw.web.servlet
Class ServletExecutionContext
java.lang.Object
nablarch.fw.HandlerQueueManager<ExecutionContext>
nablarch.fw.ExecutionContext
nablarch.fw.web.servlet.ServletExecutionContext
- Direct Known Subclasses:
MockServletExecutionContext
サーブレットコンテナ上でのリクエスト処理における実行コンテキスト
-
Field Summary
Fields inherited from class nablarch.fw.ExecutionContext
FW_PREFIX, THROWN_APPLICATION_EXCEPTION_KEY, THROWN_EXCEPTION_KEY
-
Constructor Summary
ConstructorDescriptionServletExecutionContext
(jakarta.servlet.http.HttpServletRequest servletReq, jakarta.servlet.http.HttpServletResponse servletRes, jakarta.servlet.ServletContext servletCtx) コンストラクタ。 -
Method Summary
Modifier and TypeMethodDescriptionHTTPリクエストオブジェクトを返す。jakarta.servlet.http.HttpSession
getNativeHttpSession
(boolean create) サーブレットコンテナが提供するHttpSession
を取得する。 明示的にHttpSession
を使用したい場合は、本メソッドから取得する。リクエストスコープ上の変数を格納したMapオブジェクトへの参照を返す。jakarta.servlet.ServletContext
サーブレットコンテキストを返す。サーブレットリクエストを返す。jakarta.servlet.http.HttpServletResponse
サーブレットレスポンスを返す。<T> T
getSessionScopedVar
(String varName) セッションスコープ上の変数の値を取得する。セッションスコープ情報を格納したMapオブジェクトへの参照を返す。boolean
セッションがあるかどうか。現在のリクエストに紐付けられたセッションスコープを無効化する。boolean
新規セッションであるかどうか。setRequestScopeMap
(Map<String, Object> scope) リクエストスコープを設定する。setSessionScopeMap
(Map<String, Object> scope) セッションスコープ上の変数を格納したMapを設定する。Methods inherited from class nablarch.fw.ExecutionContext
clearLastReadData, closeReader, copy, copyInternal, findHandler, getApplicationException, getCurrentRequestObject, getDataProcessedWhenThrown, getDataReader, getException, getHandlerQueue, getLastReadData, getLastRecordNumber, getNextHandler, getRequestScopedVar, getSessionStoredVar, getSessionStoreMap, handleNext, hasNextData, isProcessSucceeded, putDataOnException, readNextData, selectHandlers, setCurrentRequestObject, setDataReader, setDataReaderFactory, setException, setLastRecordNumber, setProcessSucceeded, setRequestScopedVar, setSessionScopedVar, setSessionStoredVar, setSessionStoreMap
Methods inherited from class nablarch.fw.HandlerQueueManager
addHandler, addHandler, addHandler, addHandler, addHandler, addHandlers, clearHandlers, getHandlerOf, getMethodBinder, setHandlerQueue, setMethodBinder
-
Constructor Details
-
ServletExecutionContext
public ServletExecutionContext(jakarta.servlet.http.HttpServletRequest servletReq, jakarta.servlet.http.HttpServletResponse servletRes, jakarta.servlet.ServletContext servletCtx) コンストラクタ。- Parameters:
servletReq
- サーブレットリクエストservletRes
- サーブレットレスポンスservletCtx
- サーブレットコンテキスト
-
-
Method Details
-
getHttpRequest
HTTPリクエストオブジェクトを返す。- Returns:
- HTTPリクエストオブジェクト
-
getServletRequest
サーブレットリクエストを返す。- Returns:
- サーブレットリクエスト
-
getServletResponse
サーブレットレスポンスを返す。- Returns:
- サーブレットレスポンス
-
getServletContext
public jakarta.servlet.ServletContext getServletContext()サーブレットコンテキストを返す。- Returns:
- サーブレットコンテキスト
-
invalidateSession
現在のリクエストに紐付けられたセッションスコープを無効化する。- Overrides:
invalidateSession
in classExecutionContext
- Returns:
- このオブジェクト自体
-
isNewSession
public boolean isNewSession()新規セッションであるかどうか。- Overrides:
isNewSession
in classExecutionContext
- Returns:
- 新規セッションである場合は
true
-
hasSession
public boolean hasSession()セッションがあるかどうか。 HttpSessionの生成を抑制したい場合には、本メソッドで判定する。- Overrides:
hasSession
in classExecutionContext
- Returns:
- セッションがある場合[@code true}
-
getRequestScopeMap
Description copied from class:ExecutionContext
リクエストスコープ上の変数を格納したMapオブジェクトへの参照を返す。 このMapへの変更はリクエストスコープに直接反映される。- Overrides:
getRequestScopeMap
in classExecutionContext
- Returns:
- リクエストスコープへの参照
-
setRequestScopeMap
Description copied from class:ExecutionContext
リクエストスコープを設定する。- Overrides:
setRequestScopeMap
in classExecutionContext
- Parameters:
scope
- リクエストスコープ上の変数を格納するMap- Returns:
- このオブジェクト自体
-
getSessionScopeMap
セッションスコープ情報を格納したMapオブジェクトへの参照を返す。 このMapへの変更はセッションスコープに直接反映される。 本メソッドではHttpSessionが存在しない場合、新規に作成する。
HttpSessionを生成したくない場合にはhasSession()
にて判定すること。- Overrides:
getSessionScopeMap
in classExecutionContext
- Returns:
- セッションスコープへの参照
- See Also:
-
getSessionScopedVar
セッションスコープ上の変数の値を取得する。 本メソッドではHttpSessionがない場合は、生成せずにnullを返却する。- Overrides:
getSessionScopedVar
in classExecutionContext
- Type Parameters:
T
- 期待する変数の型- Parameters:
varName
- 変数名- Returns:
- 変数の値
- Throws:
ClassCastException
- 実際の変数の型が期待する変数の型と適合しなかった場合。- See Also:
-
setSessionScopeMap
Description copied from class:ExecutionContext
セッションスコープ上の変数を格納したMapを設定する。- Overrides:
setSessionScopeMap
in classExecutionContext
- Parameters:
scope
- リクエストスコープ上の変数を格納したMap- Returns:
- このオブジェクト自体
-
getNativeHttpSession
@Published(tag="architect") public jakarta.servlet.http.HttpSession getNativeHttpSession(boolean create) サーブレットコンテナが提供するHttpSession
を取得する。 明示的にHttpSession
を使用したい場合は、本メソッドから取得する。- Parameters:
create
- セッションを生成するかどうか- Returns:
HttpSession
- See Also:
-
HttpServletRequest.getSession(boolean)
-