!!!リクエスト、セッション、Webアプリケーションに対するWebコンテナのライフサイクルイベント:各スコープのライフサイクルに対しリスナークラスを作成、設定する。スコープ属性リスナークラスを作成、設定する。ある状況において、適した属性リスナーを識別する !!ServletContext {{ref_image servletcontext_listener.jpg}} ,種別,クラス名,備考 ,Listener,ServletContextListener,コンテキストの初期化、破棄時に呼ばれる ,Listener,ServletContextAttributeListener,ServeltContextコンテナに対して、属性の追加や削除、変更が行われた場合に呼ばれる ,Event,ServletContextEvent,ServeltContextを取得できる ,Event,ServeltContextAttributeEvent,ServeltContext、属性のキー、値を取得できる 上記インターフェースを実装したクラスを作成し、配備記述子に以下のように登録する。 listener.ScwcdContextListener !!HttpSession {{ref_image session_listener.jpg}} ,種別,クラス名,備考 ,Listener,HttpSessionListener,セッションの生成、破棄時に呼ばれる ,Listener,HttpSessionActivationListener,分散環境にて、JVM間をセッションが移動する際に、セッションが活動状態、不活動状態になったときに呼ばれる ,Event,HttpSessionEvent,セッションを取得できる ,Listener,HttpSessionAttributeListener,HttpSessionコンテナに対して、属性の追加や削除、変更が行われた場合に呼ばれる ,Listener,HttpSessionBindingListener,HttpSession'''コンテナに追加するオブジェクトが実装'''し、属性の追加や削除、変更が行われた場合にそのオブジェクトに通知される。 ,Event,HttpSessionBindingEvent,HttpSession、属性のキー、値を取得できる 上記インターフェースを実装したクラスを作成し、配備記述子に以下のように登録する。 HttpSessionBindingListenerは、配備記述子ではなく、コンテナにセットするクラスに実装する。 listener.ScwcdHttpSessionListener listener.ScwcdHttpSessionAttributeListener !!ServletRequest {{ref_image request_listener.jpg}} ,種別,クラス名,備考 ,Listener,ServletRequestListener,リクエストの初期化、破棄時に呼ばれる ,Event,ServletRequestEvent,ServletContext、ServletRequestを取得可能 ,Listener,ServletRequestAttributeListener,ServletRequestコンテナに対して、属性の追加や削除、変更が行われた場合に呼ばれる ,Event,ServletRequestAttributeEvent,ServletContext、ServletRequest、属性のキー、値を取得可能 上記インターフェースを実装したクラスを作成し、配備記述子に以下のように登録する。 listener.ScwcdServletRequestListener listener.ScwcdServletRequestAttributeListener ---- {{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]