|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectjp.terasoluna.fw.web.thin.AbstractControlFilter<AuthenticationController>
jp.terasoluna.fw.web.thin.AuthenticationControlFilter
public class AuthenticationControlFilter
ログオン済みかどうかのチェックを行う。
このクラスではブラウザからのリクエストに対するフィルタ処理を、
Bean定義ファイルで指定された任意のAuthenticationController
インスタンスにログオン済みかどうかのチェック処理を委譲する。
ログオンが必要なパスへのアクセスがあった場合は、 ユーザがログオン済みか
どうかを判別し、ログオン済みではなかった場合、
UnauthenticatedException
をスローする。
この機能を使用するには デプロイメントディスクリプタ(web.xml)と
Bean定義ファイルに以下のように設定する。
このとき、Bean定義ファイルに定義するid属性が、
sampleAuthenticationControllerである<bean>要素の
class属性には、AuthenticationController
インタフェースを
実装したクラスを設定する。
<filter>
<filter-name>
authenticationControlFilter
</filter-name>
<filter-class>
jp.terasoluna.fw.web.thin.AuthenticationControlFilter
</filter-class>
<init-param>
<param-name>controller</param-name>
<param-value>
"sampleAuthenticationController"
</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>authenticationControlFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<error-page>
<exception-type>
jp.terasoluna.fw.web.thin.UnauthenticationException
</exception-type>
<location>/unauthenticatedError.jsp</location>
</error-page>
Bean定義ファイル
<bean id="sampleAuthenticationController"
class="jp.terasoluna…SampleAuthenticationController"/>
なお、Bean定義ファイルに定義する<bean>要素のid属性をデフォルト値である
"authenticationController"に設定する場合には、デプロイメントディスクリプタ
(web.xml)内の<filter>要素から<init-param>要素を省略することが
できる。
AuthenticationController
,
BlockageControlFilter
,
BlockageController
,
ServerBlockageControlFilter
,
ServerBlockageController
フィールドの概要 | |
---|---|
private static java.lang.Class |
AUTHENTICATION_CONTROLLER_CLASS
ログオン済みチェック処理を委譲するコントローラクラス。 |
private static java.lang.String |
AUTHENTICATION_CONTROLLER_ERROR
オーセンティケーションコントローラの生成失敗を示すエラーコード。 |
static java.lang.String |
AUTHENTICATION_THRU_KEY
リクエストがフィルタを通過したことを示すリクエスト属性のキー。 |
protected static AuthenticationController |
controller
AuthenticationControllerインスタンス。 |
static java.lang.String |
DEFAULT_AUTHENTICATION_BEAN_ID
DIコンテナからコントローラーの実装クラスを取得するための <bean>要素のid属性に使用されるデフォルトid。 |
private static Log |
log
ログクラス。 |
クラス jp.terasoluna.fw.web.thin.AbstractControlFilter から継承されたフィールド |
---|
config |
コンストラクタの概要 | |
---|---|
AuthenticationControlFilter()
|
メソッドの概要 | |
---|---|
void |
doFilter(javax.servlet.ServletRequest req,
javax.servlet.ServletResponse res,
javax.servlet.FilterChain chain)
ログオン済みチェックを行う。 |
static AuthenticationController |
getAuthenticationController()
AuthenticationControllerインスタンスを戻す。 |
protected java.lang.Class |
getControllerClass()
アクセス制御を行うクラスが実装すべきインタフェースを返す。 |
java.lang.String |
getDefaultControllerBeanId()
DIコンテナからコントローラを取得する際のデフォルトのidを返す。 |
protected java.lang.String |
getErrorCode()
コントローラの生成失敗を示すエラーコードを返す。 |
void |
init(javax.servlet.FilterConfig config)
フィルタがサービス開始状態になる際に、コンテナによって呼び出される。 |
クラス jp.terasoluna.fw.web.thin.AbstractControlFilter から継承されたメソッド |
---|
destroy, getController, setConfig |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
---|
public static final java.lang.String AUTHENTICATION_THRU_KEY
public static final java.lang.String DEFAULT_AUTHENTICATION_BEAN_ID
private static final java.lang.String AUTHENTICATION_CONTROLLER_ERROR
private static final java.lang.Class AUTHENTICATION_CONTROLLER_CLASS
private static Log log
protected static AuthenticationController controller
コンストラクタの詳細 |
---|
public AuthenticationControlFilter()
メソッドの詳細 |
---|
public static AuthenticationController getAuthenticationController()
public void init(javax.servlet.FilterConfig config) throws javax.servlet.ServletException
javax.servlet.Filter
内の init
AbstractControlFilter<AuthenticationController>
内の init
config
- FilterConfigインスタンス。
javax.servlet.ServletException
- 初期化異常時にスローされる例外。Filter.init(javax.servlet.FilterConfig)
,
AbstractControlFilter
public void doFilter(javax.servlet.ServletRequest req, javax.servlet.ServletResponse res, javax.servlet.FilterChain chain) throws java.io.IOException, javax.servlet.ServletException
javax.servlet.Filter
内の doFilter
AbstractControlFilter<AuthenticationController>
内の doFilter
req
- HTTPリクエストres
- HTTPレスポンスchain
- フィルタチェーン
java.io.IOException
- I/Oエラー
javax.servlet.ServletException
- サーブレット例外Filter.doFilter(javax.servlet.ServletRequest,
javax.servlet.ServletResponse,
javax.servlet.FilterChain)
protected java.lang.Class getControllerClass()
AbstractControlFilter<AuthenticationController>
内の getControllerClass
protected java.lang.String getErrorCode()
AbstractControlFilter<AuthenticationController>
内の getErrorCode
public java.lang.String getDefaultControllerBeanId()
AbstractControlFilter<AuthenticationController>
内の getDefaultControllerBeanId
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |