public interface ServletContext
Java仮想マシンごとの"ウェブアプリケーション"ごとに1つのコンテキストがあります。
("ウェブアプリケーション"は、/catalogなどのようにサーバーのURL名前空間の特定のサブセットの下に.warファイル経由でインストールことができるサーブレットとコンテンツの集合です。)
デプロイメントディスクリプタに"distributed"とつけられたウェブアプリケーションの場合は、各仮想マシンごとに1つのコンテキストインスタンスが存在します。
この状況では、グローバルな情報を共有するための場所としてServletContextを使用することはできません(その情報は真にグローバルではない方が良いため)。
代わりにデータベースのような外部リソースを使用してください。
ServletContextオブジェクトはServletConfigオブジェクト内に含まれており、サーブレットが初期化されたときにウェブサーバーがそれらを提供します。
Servlet.getServletConfig(),
ServletConfig.getServletContext()| 修飾子とタイプ | フィールドと説明 |
|---|---|
static String |
ORDERED_LIBS
ウェブフラグメント名で順序付けられた(なし
<others/>が使用されていない<absolute-ordering>の場合は除外されることがある)
WEB-INF/lib内のJARファイルの名前のリストを含む(java.util.List<java.lang.String>型の)JARファイルの名前のリストを持つServletContextの属性の名前です。 |
static String |
TEMPDIR
ServletContextのためにサーブレットコンテナによって提供される(java.io.Filee型の)プライベートテンポラリディレクトリを格納するServletContextの属性の名です。
|
| 修飾子とタイプ | メソッドと説明 |
|---|---|
FilterRegistration.Dynamic |
addFilter(String filterName,
Class<? extends Filter> filterClass)
指定された名前とクラスタイプをこのServletContextに追加します。
|
FilterRegistration.Dynamic |
addFilter(String filterName,
Filter filter)
指定されたフィルターのインスタンスをこのServletContextに指定されたfilterNameの下で登録します。
|
FilterRegistration.Dynamic |
addFilter(String filterName,
String className)
このServletContextに指定された名前とクラス名でフィルターを追加します。
|
ServletRegistration.Dynamic |
addJspFile(String servletName,
String jspFile)
指定されたJSPファイルのサーブレットをこのServletContextに追加します。
|
void |
addListener(Class<? extends EventListener> listenerClass)
指定されたクラスの型のリスナーをこのServletContextに追加します。
|
void |
addListener(String className)
このServletContextに指定されたクラスの名前のリスナーを追加します。
|
<T extends EventListener> |
addListener(T t)
指定されたリスナーをこのServletContextに追加します。
|
ServletRegistration.Dynamic |
addServlet(String servletName,
Class<? extends Servlet> servletClass)
指定された名前とクラスタイプをこのServletContextに追加します。
|
ServletRegistration.Dynamic |
addServlet(String servletName,
Servlet servlet)
指定されたサーブレットのインスタンスをこのServletContextに指定されたservletNameの下で登録します。
|
ServletRegistration.Dynamic |
addServlet(String servletName,
String className)
このServletContextに指定された名前とクラス名でサーブレットを追加します。
|
<T extends Filter> |
createFilter(Class<T> clazz)
指定されたフィルタークラスをインスタンス化します。
|
<T extends EventListener> |
createListener(Class<T> clazz)
指定されたEventListenerクラスをインスタンス化します。
|
<T extends Servlet> |
createServlet(Class<T> clazz)
指定されたサーブレットクラスをインスタンス化します。
|
void |
declareRoles(String... roleNames)
isUserInRoleでの検証に使用されるロール名を定義します。 |
Object |
getAttribute(String name)
指定された名前のサーブレットコンテナの属性を返します。
|
Enumeration<String> |
getAttributeNames()
このServletContextで使用可能な属性の名前の含まれた
Enumerationを返します。 |
ClassLoader |
getClassLoader()
このサーブレットコンテキストに対応するウェブアプリケーションのクラスローダーを取得します。
|
ServletContext |
getContext(String uripath)
サーバー上の指定されたURLに対応する
ServletContextオブジェクトを返します。 |
String |
getContextPath()
このウェブアプリケーションのコンテキストパスを返します。
|
Set<SessionTrackingMode> |
getDefaultSessionTrackingModes()
このServletContextでデフォルトでサポートされるセッション追跡方法を取得します。
|
int |
getEffectiveMajorVersion()
このServletContextが表すアプリケーションが基づいているServlet仕様のメジャーバージョンを取得します。
|
int |
getEffectiveMinorVersion()
このServletContextが表すアプリケーションが基づいているServlet仕様のマイナーバージョンを取得します。
|
Set<SessionTrackingMode> |
getEffectiveSessionTrackingModes()
このServletContextで有効なセッション追跡方法を取得します。
|
FilterRegistration |
getFilterRegistration(String filterName)
指定されたfilterNameのフィルターに対応するFilterRegistrationを取得します。
|
Map<String,? extends FilterRegistration> |
getFilterRegistrations()
このServletContextに登録されているすべてのフィルターに対応する(フィルターの名前がキーで空の可能性のある)FilterRegistrationオブジェクトのMapを取得します。
|
String |
getInitParameter(String name)
指定されたコンテキスト全体のための初期化パラメーターの値を含む
String を返します。 |
Enumeration<String> |
getInitParameterNames()
コンテキストの初期化パラメーターの名前を
StringオブジェクトのEnumerationとして返します。 |
JspConfigDescriptor |
getJspConfigDescriptor()
このServletContextに対応するウェブアプリケーションの
web.xmlとweb-fragment.xmlディスクリプターファイルから集約された<jsp-config>に関連する設定を取得します。 |
int |
getMajorVersion()
このサーブレットコンテナがサポートするServlet APIのメジャーバージョンを返します。
|
String |
getMimeType(String file)
指定されたファイルのMIMEタイプを返します。
|
int |
getMinorVersion()
このサーブレットコンテナがサポートするServlet APIのマイナーバージョンを返します。
|
RequestDispatcher |
getNamedDispatcher(String name)
指定された名前のサーブレットのラッパーとして動作する
RequestDispatcherオブジェクトを返します。 |
String |
getRealPath(String path)
指定された仮想のパスに対応する実際のパスを返します。
|
String |
getRequestCharacterEncoding()
このServletContextでデフォルトでサポートするレスポンスの文字エンコーディングを取得します。
|
RequestDispatcher |
getRequestDispatcher(String path)
指定されたパスにあるリソースのラッパーとして機能する
RequestDispatcherのオブジェクトを返します。 |
URL |
getResource(String path)
指定されたパスにマッピングされたリソースへのURLを返します。
|
InputStream |
getResourceAsStream(String path)
パスの所在地のリソースを
InputStreamオブジェクトとして返します。 |
Set<String> |
getResourcePaths(String path)
最も長いサブパスが指定された引数のパスと一致するウェブアプリケーション内のリソースへのディレクトリに似た形式ですべてのパスのリストを返します。
|
String |
getResponseCharacterEncoding()
このServletContextでデフォルトでサポートするレスポンスの文字エンコーディングを取得します。
|
String |
getServerInfo()
サーブレットが動作しているサーブレットコンテナの名前とバージョンを返します。
|
Servlet |
getServlet(String name)
非推奨です。
Java Servlet API 2.1以降での直接の代替手段はありません。
このメソッドはもともとは このメソッドの代わりに、サーブレットは |
String |
getServletContextName()
ウェブアプリケーションのデプロイメントディスクリプタのdisplay-name要素で指定されているこのServletContext
に対応するこのウェブアプリケーションの名前を返します。
|
Enumeration<String> |
getServletNames()
非推奨です。
Java Servlet API 2.1以降での代替手段はありません。
このメソッドはもともとは |
ServletRegistration |
getServletRegistration(String servletName)
指定されたservletNameのサーブレットに対応するServletRegistrationを取得します。
|
Map<String,? extends ServletRegistration> |
getServletRegistrations()
このServletContextに登録されているすべてのサーブレットに対応する(サーブレットの名前がキーで空の可能性のある)ServletRegistrationオブジェクトのMapを取得します。
|
Enumeration<Servlet> |
getServlets()
非推奨です。
Java Servlet API 2.0以降での代替手段はありません。
このメソッドはもともとは |
SessionCookieConfig |
getSessionCookieConfig()
このServletContextのために作成されるセッション追跡Cookieのさまざまなプロパティを設定する事ができる
SessionCookieConfigオブジェクトを取得します。 |
int |
getSessionTimeout()
このServletContextでデフォルトでサポートするセッションがタイムアウトするまでの分を取得します。
|
String |
getVirtualServerName()
ServletContextがデプロイされている論理ホストの設定名を返します。
|
void |
log(Exception exception,
String msg)
非推奨です。
Java Servlet API 2.1から代わりに
log(String message, Throwable throwable)
を使用してください
このメソッドはもともとは例外のスタックトレースと例外の説明文をサーブレットのログファイルに書き込むために定義されていました。 |
void |
log(String msg)
指定されたメッセージをログファイルに書き込みます、通常はイベントログです。
|
void |
log(String message,
Throwable throwable)
サーブレットのログファイルに指定された
Throwableに対する説明文とスタックトレースを書き込みます。 |
void |
removeAttribute(String name)
このServletContextから指定された名前の属性を取り除きます。
|
void |
setAttribute(String name,
Object object)
このServletContextに指定された属性の名前でオブジェクトを設定します。
|
boolean |
setInitParameter(String name,
String value)
このServletContextのコンテキスト初期化パラメーターの値を指定された名前で設定します。
|
void |
setRequestCharacterEncoding(String encoding)
このServletContextにリクエストの文字エンコーディングを設定します。
|
void |
setResponseCharacterEncoding(String encoding)
このServletContextにレスポンスの文字エンコーディングを設定します。
|
void |
setSessionTimeout(int sessionTimeout)
このServletContextにセッションがタイムアウトするまでの分を設定します。
|
void |
setSessionTrackingModes(Set<SessionTrackingMode> sessionTrackingModes)
このServletContextで有効になるセッション追跡方法を設定します。
|
static final String TEMPDIR
String getContextPath()
コンテキストパスはリクエストのコンテキストを選択するために使用されるリクエストURIの一部分です。 コンテキストパスは、常にリクエストURIの最初に来ます。 このコンテキストがWebサーバーのURL名前空間の基底にマッピングされる"ルート"コンテキストの場合このパスは空の文字列になります。 それ以外の場合、コンテキストがサーバーの名前空間の基底にマッピングされていない場合、パスは"/"で始まりますが"/"で終わることはありません。
サーブレットコンテナは一つのコンテキストを複数のコンテキストパスにて一致させることができます。
このような場合、HttpServletRequest.getContextPath()はリクエストによって使用される実際のコンテキストパスを返し、
このメソッドによって返されるパスとは異なる場合があります。
このメソッドによって返されるコンテキストパスはアプリケーションのプライマリもしくは優先コンテキストパスと見なす必要があります。
HttpServletRequest.getContextPath()ServletContext getContext(String uripath)
ServletContextオブジェクトを返します。
このメソッドは、サーブレットがサーバーのさまざまな部分のコンテキストにアクセスできるようにし、
必要に応じてコンテキストからRequestDispatcherオブジェクトを取得できるようにします。
指定されたパスは/で始まる必要があり、
サーバーのドキュメントルートからの相対パスとして解釈され、
このコンテナでホストされている他のWebアプリケーションのコンテキストルートと照合されます。
セキュリティを意識した環境ではサーブレットコンテナは指定されたURLに対してnullを返すことがあります。
uripath - このコンテナ内のほかのウェブアプリケーションのコンテキストパスを示すStringServletContextのオブジェクト、存在しないかコンテナがアクセス制限を臨んだ場合はnullRequestDispatcherint getMajorVersion()
int getMinorVersion()
int getEffectiveMajorVersion()
返される値はサーブレットコンテナがサポートするサーブレット仕様のメジャーバージョンを返すgetMajorVersion()とは異なる場合があります。
UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合int getEffectiveMinorVersion()
返される値はサーブレットコンテナがサポートするサーブレット仕様のマイナーバージョンを返すgetMinorVersion()とは異なる場合があります。
UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合String getMimeType(String file)
text/htmlやimage/gifを含みます。file - ファイルの名前を示すStringStringSet<String> getResourcePaths(String path)
サブディレクトリパスを示すパスは/で終わります。
返されるパスは/から始まる、ウェブアプリケーションのルートからの相対パス、 もしくはウェブアプリケーションの/WEB-INF/libディレクトリ内のJARファイルの/META-INF/resourcesディレクトリからの相対パスです。
返されたSetはServletContextオブジェクトによって追跡されないため、
返されたSetの変更はServletContextオブジェクトに反映されず、その逆もそうです。
例として、ウェブアプリケーションが以下のとおりファイルを含むとします。
/welcome.html
/catalog/index.html
/catalog/products.html
/catalog/offers/books.html
/catalog/offers/music.html
/customer/login.jsp
/WEB-INF/web.xml
/WEB-INF/classes/com.acme.OrderServlet.class
/WEB-INF/lib/catalog.jar!/META-INF/resources/catalog/moreOffers/books.html
getResourcePaths("/")は
{"/welcome.html", "/catalog/", "/customer/", "/WEB-INF/"}を返し、
getResourcePaths("/catalog/")は
{"/catalog/index.html", "/catalog/products.html",
"/catalog/offers/", "/catalog/moreOffers/"}を返すでしょう。path - /から始まる必要のあるマッチしたリソースで使用されている部分的なパスURL getResource(String path) throws MalformedURLException
パスは/で始まり、現在のコンテキストルートからの相対パスとして解決できるか ウェブアプリケーションの/WEB-INF/libディレクトリ内のJARファイルの/META-INF/resourcesディレクトリからの相対パス である必要があります。 このメソッドはリクエストされたリソースを探すのに、最初にウェブアプリケーションのドキュメントルートを参照します。 次に/WEB-INF/libの中のJARファイルの中身を参照します。 /WEB-INF/libの中のJARファイルを探す順番は未定義です。
このメソッドを使用するとサーブレットコンテナは任意のソースからサーブレットでリソースを使用できるようになります。
リソースは、ローカルやリモートのファイルシステム、データベース、.warファイル内に配置できます。
サーブレットコンテナはリソースにアクセスするために必要なURLハンドラやURLConnectionオブジェクトを実装する必要があります。
このメソッドはパスにリソースがマップされていない場合はnullを返します。
一部のコンテナではURLクラスのメソッドを使用することでこのメソッドから返されたURLに書き込むことができます。
リソースの内容が直接返されるため、.jspページを要求するとJSPのソースコードが返されることに注意してください。
実行結果をインクルードするには代わりにRequestDispatcherを使用します。
このメソッドはクラスローダーをベースにリソースを探すjava.lang.Class.getResourceとは目的が違います。
このメソッドはクラスローダーを使用しません。
path - リソースのパスを示すStringnullMalformedURLException - パスが正しい形式でなかったInputStream getResourceAsStream(String path)
InputStreamオブジェクトとして返します。
InputStream内のデータはどのようなタイプでも長さでもできます。
パスはgetResourceと同じルールに従って指定される必要があります。
このメソッドは指定されたパスにリソースが存在しない場合はnullを返します。
getResourceメソッドで使用可能なコンテンツタイプやコンテンツの長さなどのようなメタ情報はこのメソッドを使用すると失われます。
サーブレットコンテナはリソースにアクセスするために必要なURLハンドラやURLConnectionオブジェクトを実装する必要があります。
このメソッドはクラスローダーを使用するjava.lang.Class.getResourceAsStreamとは違います。
このメソッドはサーブレットコンテナにクラスローダーを使用せずに任意の場所からサーブレットでリソースを利用できるようにします。
path - リソースのパスを示すStringInputStream、指定されたパスにリソースが存在しない場合はnullRequestDispatcher getRequestDispatcher(String path)
RequestDispatcherのオブジェクトを返します。
RequestDispatcherオブジェクトを使用することでリクエストを別のリソースに転送したり、リソースをレスポンスに含めることができます。
リソースは動的なものでも静的なものでもかまいません。
指定されたパス名は/で始まる必要があり、現在のコンテキストルートからの相対パスとして解釈されます。
このメソッドはServletContextがRequestDispatcherを返せなかった場合はnullを返します。
path - リソースのパス名を示すStringRequestDispatcherのオブジェクト、
ServletContextがRequestDispatcherを返せなかった場合はnullRequestDispatcher,
getContext(java.lang.String)RequestDispatcher getNamedDispatcher(String name)
RequestDispatcherオブジェクトを返します。
サーブレット(およびJSPページ)にはサーバー管理やウェブアプリケーションのデプロイメントディスクリプタを使用して名前を付けることができます。
サーブレットのインスタンスはServletConfig.getServletName()を使用してその名前を取得できます。
このメソッドはServletContextが何らかの理由でRequestDispatcherを返せなかった場合はnullを返します。
name - ラップするサーブレットの名前を示すStringRequestDispatcherオブジェクト、
ServletContextがRequestDispatcherを返せなかった場合はnullRequestDispatcher,
getContext(java.lang.String),
ServletConfig.getServletName()@Deprecated Servlet getServlet(String name) throws ServletException
このメソッドはもともとはServletContextからサーブレットを受け取るために定義されていました。
このバージョンでは、このメソッドは必ずnullを返し、バイナリ互換性のためにのみ残されています。
このメソッドはJava Servlet APIの未来のバージョンでは完全に削除される予定です。
このメソッドの代わりに、サーブレットはServletContextクラスを利用して情報を共有し、
一般的なサーブレットでないクラスのメソッドを呼び出すことで共有したビジネスロジックを実行できます。
In lieu of this method, servlets can share information using the
ServletContext class and can perform shared business logic
by invoking methods on common non-servlet classes.
name - サーブレットの名前javax.servlet.Servlet ServletServletException - サーブレットの通常の処理で例外が発生した@Deprecated Enumeration<Servlet> getServlets()
このメソッドはもともとはServletContextに登録されたすべてのサーブレットのEnumerationを返すものとして定義されていました。
このバージョンでは、このメソッドは必ず空のEnumerationを返し、バイナリ互換性のためにのみ残されています。
このメソッドはJava Servlet APIの未来のバージョンでは完全に削除される予定です。
javax.servlet.Servlet ServletのEnumeration@Deprecated Enumeration<String> getServletNames()
このメソッドはもともとはServletContextに登録されたすべてのサーブレット名前のEnumerationを返すものとして定義されていました。
このバージョンでは、このメソッドは必ず空のEnumerationを返し、バイナリ互換性のためにのみ残されています。
このメソッドはJava Servlet APIの未来のバージョンでは完全に削除される予定です。
javax.servlet.Servlet Servletの名前のEnumerationvoid log(String msg)
msg - ログファイルに書き込まれるメッセージを示すString@Deprecated void log(Exception exception, String msg)
log(String message, Throwable throwable)
を使用してください
このメソッドはもともとは例外のスタックトレースと例外の説明文をサーブレットのログファイルに書き込むために定義されていました。
exception - Exception エラーmsg - 例外を説明するStringvoid log(String message, Throwable throwable)
Throwableに対する説明文とスタックトレースを書き込みます。
ログファイルの名前と書式はサーブレットコンテナによって固有のものですが、通常はイベントログです。message - エラーや例外を説明するStringthrowable - エラーは例外のThrowableString getRealPath(String path)
例えば、pathがリクエストからの形式がhttp://<host>:<port>/<contextPath>/index.html (<contextPath>はこのServletContextに対応するコンテキストパス)にマップされている/index.htmlと等しいとき、 このメソッドはサーバーのファイルシステムの絶対ファイルパスを返すでしょう。
返される実際のパスは適切なパス区切り文字を含め、 サーブレットコンテナが実行されているコンピュータとオペレーティングシステムに適した形式になります。
アプリケーションの/WEB-INF/libディレクトリ内にバンドルされるJARファイル内の/META-INF/resources に含まれるリソースはコンテナが含まれるJARファイルをアンパックしたときにのみ考慮される必要があります。 その場合は、パスとしてアンパックされた位置が返されるべきです。
サーブレットコンテナが指定された指定された仮想のパスを実際のパスに変換できなかった場合はnullを返します。
path - 実際のパスに変換する仮想のパスString getServerInfo()
返される文字列の形式はservername/versionnumberです。
例えば、JavaServer Web Development KitはJavaServer Web Dev Kit/1.0を返します。
サーブレットコンテナはプライマリ文字列の後ろのカッコ内にJavaServer Web Dev Kit/1.0 (JDK 1.1.6; Windows NT 4.0 x86)
のように追加の情報を出力するかもしれません。
StringString getInitParameter(String name)
String を返します。パラメーターが存在しない場合はnullを返します。
このメソッドは、ウェブアプリケーション全体に有用な設定情報を利用可能にすることができます。 たとえば、ウェブマスターの電子メールアドレスまたは重要なデータを保持するシステムの名前を提供することができます。
name - 値が要求されているパラメーターの名前を含むStringString。コンテキストの初期化パラメーターが存在しない場合はnullNullPointerException - 引数のnameがnullServletConfig.getInitParameter(java.lang.String)Enumeration<String> getInitParameterNames()
StringオブジェクトのEnumerationとして返します。
コンテキストに初期化パラメーターがない場合は空のEnumerationを返します。StringオブジェクトのEnumerationServletConfig.getInitParameter(java.lang.String)boolean setInitParameter(String name, String value)
name - 設定するコンテキスト初期化パラメーターの名前value - 設定するコンテキスト初期化パラメーターの値IllegalStateException - このServletContextが初期化完了していた場合NullPointerException - パラメーターの名前がnullUnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合Object getAttribute(String name)
nullを返します。
属性を使用することでサーブレットコンテナはこのインターフェースによってまだ提供されていない追加情報をサーブレットに与えることができます。
属性の情報についてはサーバーのドキュメントを参照してください。
サポートされている属性の一覧はgetAttributeNamesを使用して取得できます。
属性はjava.lang.Objectか、そのサブクラスとして返されます。
属性名は、パッケージ名と同じ規則に従う必要があります。
Java Servlet API specificationではjava.*、javax.*、sun.*と一致する名前を予約しています。
name - 属性の名前を指定するStringObject、指定された名前と一致する属性が存在しない場合はnullNullPointerException - 引数のnameがnullgetAttributeNames()Enumeration<String> getAttributeNames()
Enumerationを返します。
属性の名前から値を取得するためにはgetAttribute(java.lang.String)メソッドを使用してください。
EnumerationgetAttribute(java.lang.String)void setAttribute(String name, Object object)
ServletContextにリスナーが設定されている場合、コンテナはリスナーに応じてそれらを通知します。
もし値としてnullが渡された場合、removeAttribute()を呼び出した場合と同じ効果を及ぼします。
属性名は、パッケージ名と同じ規則に従う必要があります。
Java Servlet API specificationではjava.*、javax.*、sun.*と一致する名前を予約しています。
name - 属性の名前を指定するStringobject - 属性に設定する値を表すObjectNullPointerException - パラメーター名がnullvoid removeAttribute(String name)
getAttribute(java.lang.String)を呼び出して属性の値を取得しようとするとnullを返すでしょう。
ServletContextにリスナーが設定されている場合、コンテナはリスナーに応じてそれらを通知します。
name - 取り除かれる属性の名前を指定するStringString getServletContextName()
ServletRegistration.Dynamic addServlet(String servletName, String className)
登録されたサーブレットは返されたServletRegistrationオブジェクトで詳細な設定を行うこともできます。
指定されたclassNameはこのサーブレットコンテキストに対応するウェブアプリケーションに関連付けられたクラスローダーを使用してロードされます。
ServletContextが指定されたservletNameのサーブレットのための準備段階のServletRegistrationをすでに含んでいた場合、 ServletRegistrationは(指定されたclassNameを割り当てることで)完了し、返します。
このメソッドは指定されたclassNameのクラスについている
ServletSecurity、
MultipartConfig、
javax.annotation.security.RunAs、
javax.annotation.security.DeclareRolesアノテーションの情報を読み取り、処理します。
加えて、このメソッドは指定されたclassNameがマネージドビーンを表す場合、リソースインジェクションをサポートします。
マネージドビーンとリソースインジェクションについての詳細はJava EEプラットフォームとJSR 299の仕様を参照してください。
servletName - サーブレットの名前className - サーブレットの完全修飾クラス名(FQCN)IllegalStateException - このServletContextが初期化完了している場合IllegalArgumentException - servletNameがnullもしくは空の文字列UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合ServletRegistration.Dynamic addServlet(String servletName, Servlet servlet)
登録されたサーブレットは返されたServletRegistrationオブジェクトで詳細に設定することができます。
ServletContextが指定されたservletNameのサーブレットのための準備段階のServletRegistrationをすでに含んでいた場合、 ServletRegistrationは(指定されたサーブレットのインスタンスを指定されたclassNameで割り当てることで)完了し、返します。
servletName - サーブレットの名前servlet - 登録するサーブレットのインスタンスIllegalStateException - このServletContextが初期化完了している場合UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合IllegalArgumentException - 指定されたサーブレットのインスタンスがSingleThreadModelを実装しているか、servletNameがnullもしくは空の文字列ServletRegistration.Dynamic addServlet(String servletName, Class<? extends Servlet> servletClass)
登録されたサーブレットは返されたServletRegistrationオブジェクトで詳細に設定することができます。
ServletContextが指定されたservletNameのサーブレットのための準備段階のServletRegistrationをすでに含んでいた場合、 ServletRegistrationは(指定されたservletClassをclassNameで割り当てることで)完了し、返します。
このメソッドは指定されたservletClassについている
ServletSecurity、
MultipartConfig、
javax.annotation.security.RunAs、
javax.annotation.security.DeclareRolesアノテーションの情報を読み取り、処理します。
加えて、このメソッドは指定されたclassNameがマネージドビーンを表す場合、リソースインジェクションをサポートします。
マネージドビーンとリソースインジェクションについての詳細はJava EEプラットフォームとJSR 299の仕様を参照してください。
servletName - サーブレットの名前servletClass - インスタンス化されるサーブレットのクラスオブジェクトIllegalStateException - このServletContextが初期化完了している場合IllegalArgumentException - servletNameがnullもしくは空の文字列UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合ServletRegistration.Dynamic addJspFile(String servletName, String jspFile)
登録されたサーブレットは返されたServletRegistrationオブジェクトで詳細に設定することができます。
ServletContextが指定されたservletNameのサーブレットのための準備段階のServletRegistrationをすでに含んでいた場合、 ServletRegistrationは(指定されたjspFileを割り当てることで)完了し、返します。
servletName - サーブレットの名前jspFile - "/"で始まるウェブアプリケーション内のJSPファイルのフルパスIllegalStateException - このServletContextが初期化完了している場合IllegalArgumentException - servletNameがnullもしくは空の文字列UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合<T extends Servlet> T createServlet(Class<T> clazz) throws ServletException
返されたサーブレットのインスタンスはServletContextのaddServlet(String,Servlet)を呼び出して登録する前に詳細なカスタマイズができます。
指定されたサーブレットはインスタンス化するために使用される引数のないコンストラクタが定義されている必要があります。
このメソッドは指定されたclazzについている
ServletSecurity、
MultipartConfig、
javax.annotation.security.RunAs、
javax.annotation.security.DeclareRolesアノテーションの情報を読み取り、処理します。
加えて、このメソッドは指定されたclazzがマネージドビーンを表す場合、リソースインジェクションをサポートします。
マネージドビーンとリソースインジェクションについての詳細はJava EEプラットフォームとJSR 299の仕様を参照してください。
T - 作られるサーブレットのクラスclazz - インスタンス化されるサーブレットクラスServletException - 指定されたclazzのインスタンス化に失敗したUnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合ServletRegistration getServletRegistration(String servletName)
servletName - サーブレットの名前UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合Map<String,? extends ServletRegistration> getServletRegistrations()
返されたMapは設定ファイルで定義されたサーブレットやアノテーションが付けられたサーブレットに対応するServletRegistrationオブジェクトと同じように addServletメソッドのいずれかや addJspFileメソッドで追加されたすべてに対応するすべてのServletRegistrationオブジェクトを含みます。
許可されている場合、返されたMapへの変更はこのServletContextに影響してはなりません。
UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合FilterRegistration.Dynamic addFilter(String filterName, String className)
登録されたフィルターは返されたFilterRegistrationオブジェクトで詳細な設定を行うこともできます。
指定されたclassNameはこのサーブレットコンテキストに対応するウェブアプリケーションに関連付けられたクラスローダーを使用してロードされます。
ServletContextが指定されたfilterNameのフィルターのための準備段階のFilterRegistrationをすでに含んでいた場合、 FilterRegistrationは(指定されたclassNameを割り当てることで)完了し、返します。
このメソッドは指定されたclassNameのクラスがマネージドビーンを表す場合、リソースインジェクションをサポートします。 マネージドビーンとリソースインジェクションについての詳細はJava EEプラットフォームとJSR 299の仕様を参照してください。
filterName - フィルターの名前className - フィルターの完全修飾クラス名(FQCN)IllegalStateException - このServletContextが初期化完了している場合IllegalArgumentException - filterNameがnullもしくは空の文字列UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合FilterRegistration.Dynamic addFilter(String filterName, Filter filter)
登録されたフィルターは返されたFilterRegistrationオブジェクトで詳細に設定することができます。
ServletContextが指定されたfilterNameのフィルターのための準備段階のFilterRegistrationをすでに含んでいた場合、 FilterRegistrationは(指定されたフィルターのインスタンスを指定されたclassNameで割り当てることで)完了し、返します。
filterName - フィルターの名前filter - 登録されるフィルターのインスタンスIllegalStateException - このServletContextが初期化完了している場合IllegalArgumentException - filterNameがnullもしくは空の文字列UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合FilterRegistration.Dynamic addFilter(String filterName, Class<? extends Filter> filterClass)
登録されたフィルターは返されたFilterRegistrationオブジェクトで詳細に設定することができます。
ServletContextが指定されたfilterClassのフィルターのための準備段階のFilterRegistrationをすでに含んでいた場合、 FilterRegistrationは(指定されたfilterClassの名前で割り当てることで)完了し、返します。
このメソッドは指定されたfilterClassがマネージドビーンを表す場合、リソースインジェクションをサポートします。 マネージドビーンとリソースインジェクションについての詳細はJava EEプラットフォームとJSR 299の仕様を参照してください。
filterName - フィルターの名前filterClass - インスタンス化されるフィルターのクラスオブジェクトIllegalStateException - このServletContextが初期化完了している場合IllegalArgumentException - filterNameがnullもしくは空の文字列UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合<T extends Filter> T createFilter(Class<T> clazz) throws ServletException
返されたフィルターのインスタンスはServletContextのaddFilter(String,Filter)を呼び出して登録する前に詳細なカスタマイズができます。
指定されたフィルターはインスタンス化するために使用される引数のないコンストラクタが定義されている必要があります。
このメソッドは指定されたclazzがマネージドビーンを表す場合、リソースインジェクションをサポートします。 マネージドビーンとリソースインジェクションについての詳細はJava EEプラットフォームとJSR 299の仕様を参照してください。
T - 作られるフィルターのクラスclazz - インスタンス化されるフィルタークラスServletException - 指定されたclazzのインスタンス化に失敗したUnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合FilterRegistration getFilterRegistration(String filterName)
filterName - フィルターの名雨UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合Map<String,? extends FilterRegistration> getFilterRegistrations()
返されたMapは設定ファイルで定義されたフィルターやアノテーションが付けられたフィルターに対応するFilterRegistrationオブジェクトと同じように addFilterメソッドのいずれかで追加されたすべてに対応するすべてのFilterRegistrationオブジェクトを含みます。
返されたMapへの変更はこのServletContextに影響してはなりません。
UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合SessionCookieConfig getSessionCookieConfig()
SessionCookieConfigオブジェクトを取得します。
このメソッドを繰り返し読んだ場合、SessionCookieConfigの同じインスタンスが返されます。
SessionCookieConfigオブジェクトを取得します。UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合void setSessionTrackingModes(Set<SessionTrackingMode> sessionTrackingModes)
指定されたsessionTrackingModesはこのServletContextのこのメソッドの以前の呼び出しによって設定されたセッション追跡モードを置き換えます。
sessionTrackingModes - このServletContextで有効になるセッション追跡方法IllegalStateException - このServletContextが初期化完了している場合UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合IllegalArgumentException - sessionTrackingModesでSessionTrackingMode.SSLがSessionTrackingMode.SSL以外のセッション追跡方法と組み合わせて指定された、
サーブレットコンテナでサポートされていないセッション追跡方法をsessionTrackingModesで指定したSet<SessionTrackingMode> getDefaultSessionTrackingModes()
ServletContextオブジェクトによって返されたSetはServletContextへの参照を持っていないので変更はServletContextへ影響を与えません。
逆もそうです。
UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合Set<SessionTrackingMode> getEffectiveSessionTrackingModes()
setSessionTrackingModesで提供されています。
ServletContextオブジェクトによって返されたSetはServletContextへの参照を持っていないので変更はServletContextへ影響を与えません。
逆もそうです。
UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合void addListener(String className)
指定された名前のクラスはこのサーブレットコンテキストに対応するウェブアプリケーションのクラスローダーからロードされ、 以下のインターフェースのうち一つ以上を実装する必要があります。
ServletContextAttributeListener
ServletRequestListener
ServletRequestAttributeListener
HttpSessionAttributeListener
HttpSessionIdListener
HttpSessionListener
このServletContextがServletContainerInitializer.onStartup(java.util.Set<java.lang.Class<?>>, javax.servlet.ServletContext)に渡されている場合、
指定された名前のクラスは先に一覧化されたインターフェースに加えてServletContextListenerを実装することもできます。
このメソッド呼び出しの一環として、コンテナは指定されたクラス名を持つ必要なインターフェイスの1つが実装されていることを保証されたクラスをロードする必要があります。
指定された名前のクラスが呼び出される順序が宣言した順序に対応するリスナーのインターフェースを実装している場合
(つまり、ServletRequestListener、ServletContextListener、HttpSessionListenerを実装している場合)
新しいリスナーはそのインターフェースのリスナーの順序付きリストの最後に追加されます。
このメソッドは指定されたclassNameがマネージドビーンを表す場合、リソースインジェクションをサポートします。 マネージドビーンとリソースインジェクションについての詳細はJava EEプラットフォームとJSR 299の仕様を参照してください。
className - the fully qualified class name of the listenerIllegalArgumentException - 指定された名前のクラスが先のインターフェースを全く実装していない、
ServletContextがServletContainerInitializer.onStartup(java.util.Set<java.lang.Class<?>>, javax.servlet.ServletContext)に渡された時に指定された名前のクラスがServletContextListenerを実装していないIllegalStateException - このServletContextが初期化完了している場合UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合<T extends EventListener> void addListener(T t)
指定されたリスナーは以下のインターフェースのうち一つ以上を実装する必要があります。
ServletContextAttributeListener
ServletRequestListener
ServletRequestAttributeListener
HttpSessionAttributeListener
HttpSessionIdListener
HttpSessionListener
このServletContextがServletContainerInitializer.onStartup(java.util.Set<java.lang.Class<?>>, javax.servlet.ServletContext)に渡されている場合、
指定されたリスナーは先に一覧化されたインターフェースに加えてServletContextListenerを実装することもできます。
指定されたリスナーが呼び出される順序が宣言した順序に対応するリスナーのインターフェースを実装している場合
(つまり、ServletRequestListener、ServletContextListener、HttpSessionListenerを実装している場合)
新しいリスナーはそのインターフェースのリスナーの順序付きリストの最後に追加されます。
T - 追加されるEventListenerのクラスt - 追加されるリスナーIllegalArgumentException - 指定されたリスナーが先のインターフェースを全く実装していない、
ServletContextがServletContainerInitializer.onStartup(java.util.Set<java.lang.Class<?>>, javax.servlet.ServletContext)に渡された時に指定されたリスナーがServletContextListenerを実装していないIllegalStateException - このServletContextが初期化完了している場合UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合void addListener(Class<? extends EventListener> listenerClass)
指定されたlistenerClassは以下のインターフェースのうち一つ以上を実装する必要があります。
ServletContextAttributeListener
ServletRequestListener
ServletRequestAttributeListener
HttpSessionAttributeListener
HttpSessionIdListener
HttpSessionListener
このServletContextがServletContainerInitializer.onStartup(java.util.Set<java.lang.Class<?>>, javax.servlet.ServletContext)に渡されている場合、
指定されたlistenerClassは先に一覧化されたインターフェースに加えてServletContextListenerを実装することもできます。
指定されたlistenerClassが呼び出される順序が宣言した順序に対応するリスナーのインターフェースを実装している場合
(つまり、ServletRequestListener、ServletContextListener、HttpSessionListenerを実装している場合)
新しいリスナーはそのインターフェースのリスナーの順序付きリストの最後に追加されます。
このメソッドは指定されたlistenerClassがマネージドビーンを表す場合、リソースインジェクションをサポートします。 マネージドビーンとリソースインジェクションについての詳細はJava EEプラットフォームとJSR 299の仕様を参照してください。
listenerClass - インスタンス化されるリスナークラスIllegalArgumentException - 指定されたlistenerClassが先のインターフェースを全く実装していない、
ServletContextがServletContainerInitializer.onStartup(java.util.Set<java.lang.Class<?>>, javax.servlet.ServletContext)に渡された時に指定されたlistenerClassがServletContextListenerを実装していないIllegalStateException - このServletContextが初期化完了している場合UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合<T extends EventListener> T createListener(Class<T> clazz) throws ServletException
指定したEventListenerのクラスは
ServletContextListener、
ServletContextAttributeListener、
ServletRequestListener、
ServletRequestAttributeListener、
HttpSessionAttributeListener、
HttpSessionIdListener、
HttpSessionListener
のインターフェースのうち最低でも一つ実装する必要があります。
返されたEventListenerインスタンスはaddListener(EventListener)の呼び出しによってこのServletContextに登録する前に、
詳細なカスタマイズをすることができます。
指定されたEventListenerクラスはインスタンス化に使用するための引数を持たないコンストラクタが定義されている必要があります。
このメソッドは指定されたclazzがマネージドビーンを表す場合、リソースインジェクションをサポートします。 マネージドビーンとリソースインジェクションについての詳細はJava EEプラットフォームとJSR 299の仕様を参照してください。
T - 作成されるEventListenerのクラスclazz - インスタンス化されるEventListenerクラスServletException - 指定されたclazzのインスタンス化に失敗したUnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合IllegalArgumentException - 指定したEventListenerのクラスが
ServletContextListener、
ServletContextAttributeListener、
ServletRequestListener、
ServletRequestAttributeListener、
HttpSessionAttributeListener、
HttpSessionIdListener、
HttpSessionListener
のいずれのインターフェースも実装していなかった場合JspConfigDescriptor getJspConfigDescriptor()
web.xmlとweb-fragment.xmlディスクリプターファイルから集約された<jsp-config>に関連する設定を取得します。web.xmlとweb-fragment.xmlディスクリプターファイルから集約された<jsp-config>に関連する設定、そのような設定が存在しない場合はnullUnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合JspConfigDescriptorClassLoader getClassLoader()
セキュリティマネージャが存在し、
呼び出し元のクラスローダーが要求されたクラスローダーと同じか継承元でない場合、
セキュリティマネージャのcheckPermissionメソッドはRuntimePermission("getClassLoader")のパーミッションで
クラスローダーへのアクセス権が付与されているかどうかチェックをするために呼び出されます。
UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合SecurityException - セキュリティマネージャーがクラスローダーへのアクセスのリクエストを拒否したvoid declareRoles(String... roleNames)
isUserInRoleでの検証に使用されるロール名を定義します。
ServletRegistrationのsetServletSecurityメソッドや、
setRunAsRoleメソッドの呼び出しの結果、暗黙的に定義されているロールを定義する必要はありません。
roleNames - 定義されるロール名UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合IllegalArgumentException - 引数のロール名のいずれかがnullかからの文字列だったIllegalStateException - このServletContextが初期化完了している場合String getVirtualServerName()
StringUnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合int getSessionTimeout()
UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合void setSessionTimeout(int sessionTimeout)
sessionTimeout - セッションがタイムアウトする分IllegalStateException - このServletContextが初期化完了している場合UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合String getRequestCharacterEncoding()
UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合void setRequestCharacterEncoding(String encoding)
encoding - リクエストの文字エンコーディングIllegalStateException - このServletContextが初期化完了している場合UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合String getResponseCharacterEncoding()
UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合void setResponseCharacterEncoding(String encoding)
encoding - レスポンスの文字エンコーディングIllegalStateException - このServletContextが初期化完了している場合UnsupportedOperationException - このServletContextがweb.xmlやweb-fragment.xmlで宣言されておらず、
WebListenerアノテーションもついてないServletContextListenerの
ServletContextListener.contextInitialized(javax.servlet.ServletContextEvent)メソッドに渡された場合Copyright © 1999-2017, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms. Portions Copyright © 1999-2002 The Apache Software Foundation. Portions Copyright © 2017- @megascus. Translated by @megascus.