ランタイム属性

目次

はじめに

以下の属性は、ウェブアプリケーションで実行時に利用できます。これらの属性の多くは、Tomcatの内部へのアクセスを提供します。Tomcatの内部を公開する属性は、名前で明示的にリクエストできますが、利用可能な属性のリストをリクエストする際には意図的に含まれないことがよくあります。

リクエスト属性

リクエスト属性は、ServletRequest.getAttribute(String) の呼び出しを介してウェブアプリケーションで利用できます。

プロパティ説明
jakarta.servlet.request.cipher_suite

SSL接続で使用されている暗号スイートの名前について、Servlet仕様で定義された属性。

jakarta.servlet.request.key_size

SSL接続で使用されているキーサイズについて、Servlet仕様で定義された属性。

jakarta.servlet.request.secure_protocol

セキュアな接続で使用されているセキュリティプロトコル(例: TLSv1.3)の名前について、Servlet仕様で定義された属性。

jakarta.servlet.request.ssl_session_id

SSL接続で使用されているセッションIDについて、Servlet仕様で定義された属性。

jakarta.servlet.request.ssl_session_mgr

SSL接続で使用されているセッションマネージャーを提供する、Servlet仕様に対するTomcat固有の拡張。

jakarta.servlet.request.X509Certificate

クライアントによって提示された証明書チェーン(もしあれば)を表すX509Certificateオブジェクトの配列について、Servlet仕様で定義された属性。

org.apache.catalina.ASYNC_SUPPORTED

現在のリクエストの処理チェーン(Servlet、Filter、Valve)は非同期処理をサポートしていますか?これが true になるためには、チェーン内の各コンポーネントが非同期処理をサポートしている必要があります。

org.apache.catalina.NAMED

現在の名前付きディスパッチのターゲットServletの名前(もしあれば)。

org.apache.catalina.core.DISPATCHER_TYPE

リクエストの現在の jakarta.servlet.DispatcherType

org.apache.catalina.core.DISPATCHER_REQUEST_PATH

リクエストがディスパッチされた現在のパス(Servlet情報 + パス情報)。

org.apache.catalina.filters.RemoteIpFilter.secure

RemoteIpFilterがこのリクエストがセキュアなチャネルを介して送信されたと判断した場合に、Boolean.TRUE の値に設定されるリクエスト属性。

org.apache.catalina.realm.GSS_CREDENTIAL

SPNEGO認証を使用して正常に認証された場合の、現在認証されているユーザーのGSS資格情報。

org.apache.tomcat.peerAddr

RemoteIpFilter、RemoteIpValve(および他の類似コンポーネントによって設定される可能性あり)によって設定されるリクエスト属性で、接続ピアのIPアドレスを識別します。

org.apache.tomcat.remoteAddr

RemoteIpFilter、RemoteIpValve(および他の類似コンポーネントによって設定される可能性あり)によって設定されるリクエスト属性で、1つ以上のプロキシを介してリクエストが受信されたときに、このリクエストに関連付けられていると主張されるリモートIPアドレスをコネクタに対して識別します。通常、X-Forwarded-For HTTPヘッダーを介して提供されます。

org.apache.tomcat.request.forwarded

RemoteIpFilter、RemoteIpValve(および他の類似コンポーネント)によってBoolean.TRUEの値に設定されるリクエスト属性で、1つ以上のプロキシを介して転送されたリクエストを識別します。

org.apache.tomcat.sendfile.end

Servletがsendfileによって提供されるファイルの一部(含まれない)の終了オフセットをコネクタに渡すために使用できるリクエスト属性。値は Long である必要があります。ファイル全体を提供するには、値はファイルの長さに等しい必要があります。

org.apache.tomcat.sendfile.filename

Servletがsendfileによって提供されるファイルの名前をコネクタに渡すために使用できるリクエスト属性。値は、提供されるファイルの正規パスである String である必要があります。

org.apache.tomcat.sendfile.start

Servletがsendfileによって提供されるファイルの一部(含まれる)の開始オフセットをコネクタに渡すために使用できるリクエスト属性。値は Long である必要があります。ファイル全体を提供するには、値は Long.valueOf(0) である必要があります。

org.apache.tomcat.sendfile.support

このリクエストを処理するコネクタがsendfileの使用をサポートしている場合に、Boolean.TRUE の値に設定されるリクエスト属性。

ServletContext 属性

ServletContext 属性は、ServletContext.getAttribute(String) の呼び出しを介してウェブアプリケーションで利用できます。

プロパティ説明
org.apache.catalina.CredentialHandler

Contextに明示的に関連付けられているRealm(もしあれば)に関連付けられたCredentialHandler(もしあれば)。親コンテナ(HostまたはEngine)に関連付けられたRealmは考慮されません。

org.apache.catalina.deploy.alt_dd

このウェブアプリケーションの代替デプロイメントディスクリプタ。

org.apache.catalina.jsp_classpath

プラットフォームの適切なパス区切り文字で区切られた、アプリケーションクラスローダーのクラスパス(String型のオブジェクトとして)。

org.apache.catalina.resources

コンテキストに関連付けられているWebResourceRoot。

org.apache.catalina.webappVersion

ウェブアプリケーションのバージョン文字列(並行デプロイが設定されている場合に ## の後に表示されるテキスト)。

org.apache.tomcat.InstanceManager

ウェブアプリケーションのServlet、Filter、Listenerなどを作成するために使用されるInstanceManager。

org.apache.tomcat.JarScanner

アノテーション、TLD、Webフラグメント、および類似の機能をウェブアプリケーションでスキャンするために使用されるJarScannerインスタンス。

org.apache.tomcat.util.threads.ScheduledThreadPoolExecutor

このContextのユーティリティExecutor。