このドキュメントは、WebLogicサーバー固有のデプロイメント・ディスクリプタであるweblogic.xml
の要素に関する完全なリファレンスです。Webアプリケーションにweblogic.xml
デプロイメント・ディスクリプタが含まれていない場合、WebLogicサーバーは、デプロイメント・ディスクリプタ要素のデフォルト値を自動的に選択します。weblogic.xml
の構造は、weblogic-web-app.xsd
に定義されています。
次の各セクションでは、ルート要素<weblogic-web-app>
の下にあるweblogic.xmlデプロイメント・ディスクリプタに定義できる複雑なデプロイメント・ディスクリプタ要素について説明します。
description要素は、Webアプリケーションのテキスト説明です。
weblogic-version要素は、このWebアプリケーション(ルート要素<weblogic-web-app>に定義されている)のデプロイ先となるWebLogicサーバーのバージョンを示します。この要素は情報提供のみで、WebLogicサーバーでは使用されていません。
このsecurity-role-assignment要素は、Webアプリケーションのセキュリティ・ロールと、WebLogicサーバーの1つまたは複数のプリンシパルとの間のマッピングを宣言します。次に例を示します。
<security-role-assignment>
<role-name> PayrollAdmin </role-name>
<principal-name> Tanya </principal-name>
<principal-name> Fred </principal-name>
<principal-name> system </principal-name>
</security-role-assignment>
この要素を使用すると、特定のロールを外部で定義されたロールとしてマークすることもできます。次に例を示します。
<security-role-assignment>
<role-name> roleadmin </role-name>
<externally-defined/>
</security-role-assignment>
注意: <security-role-assignment>要素内には、<principal-name>または<externally-defined>のいずれかを定義する必要があります。両方とも省略することはできません。
次の表では、security-role-assignment要素内に定義できる要素について説明します。
要素 | 必須 | 説明 |
---|---|---|
<role-name> | 必須 | セキュリティ・ロールの名前を指定します。 |
<principal-name> | <externally-defined>が定義されていない場合は必須 | セキュリティ・レルムに定義されているプリンシパルの名前を指定します。複数の<principal-name>要素を使用すると、複数のプリンシパルを1つのロールにマップできます。 |
<externally-defined> | <principal-name>が定義されていない場合は必須 | 特定のセキュリティ・ロールをセキュリティ・レルムにグローバルに定義するように指定します。WebLogicサーバーは、このセキュリティ・ロールをプリンシパル名として使用し、グローバル・レルム内でプリンシパル名を検索することはしません。セキュリティ・ロールとそのプリンシパル名のマッピングが他の場所に定義されている場合、この要素は参照用プレースホルダとして使用されます。 |
security-role-assignment要素とそのサブ要素を定義しないと、Webアプリケーション・コンテナはロール名をプリンシパル名として暗黙的にマップし、警告をログに記録します。マッピングが定義されていない場合、EJBコンテナはモジュールをデプロイしません。
次に、ロール名が<role_xyz>の場合の使用例を考えてみます。
このrun-as-role-assignment要素は、web.xmlのrun-as role name(servlet要素のサブ要素)をシステム内の有効なユーザーにマップします。指定のサーブレットの場合、この値はservlet-descriptorのrun-as-principal-name要素でオーバーライドできます。特定のロール名についてrun-as-role-assignmentが定義されていない場合、Webアプリケーション・コンテナは、security-role-assignmentに定義されている最初のprincipal-nameを使用します。次に、run-as-role-assignment要素の使用例を示します。
<run-as-role-assignment>
<role-name>RunAsRoleName</role-name>
<run-as-principal-name>joe</run-as-principal-name>
</run-as-role-assignment>
次の表では、run-as-role-assignment要素内に定義できる要素について説明します。
要素 | 必須 | 説明 |
---|---|---|
<role-name> | 必須 | セキュリティ・ロールの名前を指定します。 |
<run-as-principal-name> | 必須 | プリンシパルの名前を指定します。 |
このresource-description要素は、サーバー・リソースのJNDI名を、WebLogicサーバーのEJBリソース参照にマップするために使用します。
次の表では、resource-description要素内に定義できる要素について説明します。
要素 | 必須 | 説明 |
---|---|---|
<res-ref-name> | 必須 | リソース参照の名前を指定します。 |
<jndi-name> | 必須 | リソースのJNDI名を指定します。 |
このresource-env-description要素は、ejb-jar.xmlデプロイメント・ディスクリプタで宣言されるresource-env-refを、サーバー・リソースを表すJNDI名にマップします。
次の表では、resource-env-description要素内で定義できる要素について説明します。
要素 | 必須 | 説明 |
---|---|---|
<res-env-ref-name> | 必須 | リソース環境参照の名前を指定します。 |
<jndi-name> | 必須 | リソース環境参照のJNDI名を指定します。 |
次の表では、ejb-reference-description要素内で定義できる要素について説明します。
要素 | 必須 | 説明 |
---|---|---|
<ejb-ref-name> | 必須 | Webアプリケーションで使用するEJB参照の名前を指定します。 |
<jndi-name> | 必須 | 参照するJNDI名を指定します。 |
次の表では、service-reference-description要素内で定義できる要素について説明します。
要素 | 必須 | 説明 |
---|---|---|
<service-ref-name> | ||
<wsdl-url> | ||
<call-property> | <call-property>要素には、次のサブ要素があります。
|
|
<port-info> | <port-info>要素には、次のサブ要素があります。
|
このsession-descriptor要素は、サーブレット・セッションのパラメータを定義します。
セッション・コンテキストを初期化すると、weblogic-application.xmlのほとんどのセッション・ディスクリプタがweblogic.xmlのセッション・ディスクリプタよりも優先され、未定義のプロパティに対してデフォルト値が使用されます(weblogic.xmlにデフォルト値がある場合でも)。ただし、両方のXMLファイルが使用されている場合は、weblogic.xmlの次のプロパティが最初に使用されます。
要素 | 必須 | 説明 |
---|---|---|
timeout-secs | 3600 | WebLogicサーバーがセッションをタイムアウトするまでの待機時間(秒単位)を設定します。デフォルト値は3600秒です。通信量の多いサイトでは、セッションのタイムアウトを調整して、アプリケーションの動作を最適にできます。これにより、ブラウザ・クライアントはいつでもセッションを終了できる一方で、ユーザーがサイトを離れたりセッションを破棄した場合にサーバーとの不必要な接続を防ぐことができます。
weblogic.xmlとweblogic-application.xmlの両方に定義されているtimeout-secsの値は、web.xmlのsession-timeout要素(分単位で定義)の値によってオーバーライドされます。また、weblogic-application.xmlに定義されている値は、weblogic.xmlのtimeout-secsの値によってオーバーライドされます。 |
invalidation-interval-secs | 60 | タイムアウトと無効なセッションをチェックしてから、古いセッションを削除してメモリーを解放するまで、WebLogicサーバーが待機する時間(秒単位)を設定します。この要素を使用すると、通信量が多いサイトで最適なパフォーマンスを得られるようにWebLogicサーバーを調整できます。デフォルト値は60秒です。 |
sharing-enabled | false | アプリケーション・レベルでこの値をtrueに設定すると、WebアプリケーションでHTTPセッションを共有できます。この要素は、Webアプリケーション・レベルでオンに設定しても無視されます。 |
ebug-enabled | false | HTTPセッションのデバッグ機能を有効にします。デフォルト値はfalseです。 |
id-length | 52 | セッションIDのサイズを設定します。最小値は8バイトで、最大値はInteger.MAX_VALUEです。WAPアプリケーションを記述するときは、URLリライトを使用する必要があります。これは、WAPプロトコルはCookieをサポートしていないためです。また、一部のWAPデバイスではURLの長さ(属性を含む)が128文字に制限されているため、URLリライトを使用して転送できるデータ量が制限されます。属性で使用可能な領域を増やすには、この属性を使用して、WebLogicサーバーでランダムに生成されるセッションIDのサイズを制限します。また、WAPEnabled属性を設定すると、長さを固定の52文字に制限し、特殊文字の使用を禁止することもできます。 |
tracking-enabled | true | HTTPリクエスト間のセッション・トラッキングを有効にします。 |
cache-size | 1028 | JDBCおよびファイル永続セッションのキャッシュ・サイズを設定します。 |
max-in-memory-sessions | -1 | メモリーまたはレプリケートされたセッションの最大制限値を設定します。バインドされたメモリー内サーブレット・セッションの使用を構成できない場合、新規セッションが継続的に作成されると、サーバーは最終的にメモリー不足になります。これを防ぐために、WebLogicサーバーは、作成されるセッション数に対して構成可能なバインドを提供します。この数を超えると、新規セッションの作成が試みられるたびにweblogic.servlet.SessionCreationExceptionが発生します。この機能は、レプリケートされたメモリー内セッションおよびレプリケートされていないメモリー内セッションの両方に適用されます。バインドされたメモリー内サーブレット・セッションの使用を構成するには、max-in-memory-sessions要素で制限値を設定します。デフォルトは-1(無制限)です。 |
cookies-enabled | true | デフォルトでセッションCookieの使用を有効にします。これが推奨値です。ただし、このプロパティをfalseに設定して使用を無効にできます。このオプションはテスト時にオフにできます。 |
cookie-name | JSESSIONID | セッション・トラッキングのCookie名を定義します。設定しないと、JSESSIONIDにデフォルト設定されます。これは、アプリケーション固有の名前に設定することもできます。 |
cookie-path | null | セッション・トラッキングのCookieパスを定義します。設定しないと、この属性は/(スラッシュ)にデフォルト設定され、ブラウザはWebLogicサーバーで使用するすべてのURLにCookieを送信します。マッピングを絞り込むようにパスを設定すると、ブラウザがCookieを送信するリクエストURLを制限できます。 |
cookie-domain | null | Cookieが有効なドメインを指定します。たとえば、cookie-domainを.mydomain.comに設定すると、*.mydomain.comドメイン内のすべてのサーバーにCookieが返されます。ドメイン名には、2つ以上のコンポーネントが必要です。ドメイン名を*.comまたは*.netに設定すると無効になります。設定しないと、この属性はCookieを発行したサーバーにデフォルト設定されます。詳細は、Sun社のサーブレット仕様のCookie.setDomain()を参照してください。 |
cookie-comment | null | Cookieファイル内のセッション・トラッキングCookieを識別するコメントを指定します。 |
cookie-secure | false | ブラウザに対して、HTTPS接続にのみCookieを送り返すように指示します。これにより、Cookie IDは安全になり、HTTPSを使用するWebサイトでのみ使用されます。この機能が有効な場合、HTTPに対するセッションCookieは機能しません。この機能を使用する場合は、url-rewriting-enabled要素を無効にする必要があります。 |
cookie-max-age-secs | -1 | セッションCookieがクライアントで期限切れになった後、そのセッションCookieの存続期間を設定します。デフォルト値は-1(無期限)です。 |
persistent-store-type | memory | 永続ストアの方法を次のいずれかのオプションに設定します。
|
persistent-store-cookie-name | WLCOOKIE | Cookieベースの永続性で使用するCookieの名前を設定します。WLCOOKIE Cookieはセッション状態を保持し、Webアプリケーション間で共有しません。 |
persistent-store-dir | session_db | ファイル・ベースの永続性で使用する記憶域ディレクトリを指定します。有効なセッション数に各セッションのサイズを乗算したスペースを格納できるように、十分なディスク領域があることを確認してください。セッションのサイズは、persistent-store-dirで作成したファイルを調べて確認できます。各セッションのサイズは、シリアライズ・セッション・データのサイズ変更に伴って変化することに注意してください。各サーバー・インスタンスには、構成不要なデフォルトの永続ファイル・ストアがあります。ディレクトリを指定しないと、< server-name >¥data¥store¥defaultディレクトリにデフォルトのストアが自動的に作成されます。ただし、このデフォルトのストアは、クラスタ化されたサーバー間で共有できません。ファイル永続性セッションをクラスタ可能にするには、複数のサーバー間で共有するディレクトリにカスタムの永続ストアを作成します。その場合、このディレクトリは手動で作成する必要があります。 |
persistent-store-pool | なし | 永続記憶域で使用するJDBC接続プールの名前を指定します。 |
persistent-store-table | wl_servlet_sessions | JDBCベースの永続セッションを格納するために使用するデータベース表名を指定します。これは、persistent-store-typeがjdbcに設定されている場合のみ適用されます。persistent-store-table要素は、デフォルト以外のデータベース表名を選択した場合に使用されます。 |
jdbc-column-name-max-inactive-interval | wl_max_inactive_interval列名の代替名として使用されます。このjdbc-column-name-max-inactive-interval要素は、JDBCベースの永続性にのみ適用され、長い列名をサポートしていない特定のデータベースに必要です。 | |
jdbc-connection-timeout-secs | 120 | 注意: このリリースでは推奨されていない項目です。WebLogicサーバーがJDBC接続をタイムアウトするまでの待機時間(秒単位)を設定します。xは間隔を示す秒数です。 |
url-rewriting-enabled | true | URLリライトを有効にします。ブラウザでCookieが無効な場合は、URLリライトによって、セッションIDがURLにエンコードされ、セッション・トラッキングが実行されます。 |
http-proxy-caching-of-cookies | true | falseに設定すると、WebLogicサーバーは、Cache-control: no-cache=set-cookieというヘッダーとレスポンスを追加します。これは、プロキシ・キャッシュがCookieをキャッシュしないことを示します。 |
encode-session-id-in-query-params | false | 最新のサーブレット仕様では、コンテナはセッションIDをパス・パラメータにエンコードする必要があります。Webサーバーによっては、パス・パラメータが十分に機能しない場合があります。その場合は、このencode-session-id-in-query-params要素をtrueに設定する必要があります(デフォルトはfalseです)。 |
runtime-main-attribute | ServletSessionRuntimeMBeanで使用されます。ServletSessionRuntimeMBeanのgetMainAttribute()は、この文字列をキーとして使用して、セッション属性値を返します。たとえば、user-nameです。この要素は、異なるセッションにセッション・ランタイム情報をタグ付けする場合に便利です。 |
このjsp-descriptor要素は、JSPコンパイラに対してコンフィギュレーション・パラメータのリストを指定します。次の表では、jsp-descriptor要素内に定義できる要素について説明します。
要素 | 必須 | 説明 |
---|---|---|
page-check-seconds | 1 | JSPファイルが変更されて再コンパイルが必要かどうかをWebLogicサーバーがチェックする間隔(秒単位)を設定します。依存性もチェックされ、変更されている場合は再帰的にリロードされます。
|
precompile | false | trueに設定すると、Webアプリケーションのデプロイ時や再デプロイ時、またはWebLogicサーバーの起動時に、WebLogicサーバーはすべての変更済JSPを自動的にプリコンパイルします。 |
precompile-continue | false | trueに設定すると、WebLogicサーバーは、すべての変更済JSPをプリコンパイルしているとき、一部のJSPがコンパイル中に失敗してもプリコンパイルを継続します。これは、precompileがtrueに設定されている場合のみ有効です。 |
keepgenerated | false | JSPコンパイル処理の中間ステップで生成されるJavaファイルを保存します。このパラメータがtrueに設定されていない場合、中間のJavaファイルはコンパイル後に削除されます。 |
verbose | true | trueに設定すると、デバッグ情報がブラウザ、コマンド・プロンプトおよびWebLogicサーバーのログ・ファイルに出力されます。 |
working-dir | 内部的に生成されるディレクトリ | WebLogicサーバーがJSPの生成済Javaおよびコンパイル済クラス・ファイルを保存するディレクトリの名前です。 |
print-nulls | null | falseに設定すると、"null"を含む式が" "と出力されます。 |
backward-compatible | true | trueに設定すると、下位互換性が有効になります。 |
encoding | 使用しているプラットフォームのデフォルト・エンコーディング | JSPページで使用するデフォルトのキャラクタ・セットを指定します。標準のJavaキャラクタ・セット名を使用します(http://java.sun.com/j2se/1.5.0/docs/guide/intl/encoding.doc.htmを参照)。設定しないと、この属性は、使用しているプラットフォームのエンコーディングにデフォルト設定されます。この設定は、(JSPコードに含まれる)JSPページ・ディレクティブによってオーバーライドされます。例: <%@ page contentType="text/html; charset=custom-encoding%> |
package-prefix | jsp_servlet | すべてのJSPページがコンパイルされるパッケージの接頭辞を指定します。 |
exact-mapping | true | trueの場合は、JSPの最初のリクエスト時に、新規作成されたJspStubが同じリクエストにマップされます。exactMappingをfalseに設定すると、Webアプリケーション・コンテナはJSPに対して不正確なURLマッピングを生成します。exactMappingによって、JSPページのパス情報が使用可能になります。 |
default-file-name | true | WebLogicサーバーがJSPの生成済Javaおよびコンパイル済クラス・ファイルを保存する、デフォルトのファイル名です。 |
rtexprvalue-jsp-param-name | false | jsp:paramタグのname属性にランタイム式値を指定できます。デフォルトではfalseに設定されます。 |
このauth-filter要素は、認証フィルタに対するHttpServletクラスを指定します。
注意: このリリースでは推奨されていない項目です。かわりに、サーブレット認証フィルタを使用してください。
この<container-descriptor>要素は、Webアプリケーションの動作に影響を与えるパラメータのリストを指定します。
サーブレットまたはJSPから転送されたリクエストの認証が必要な場合は、この<check-auth-on-forward/>要素を追加します。再認証が不要な場合は、このタグを省略します。次に例を示します。
<container-descriptor>
<check-auth-on-forward/>
</container-descriptor>
check-auth-on-forwardプロパティの有効化は、ベスト・プラクティスとしてお薦めできません。
この<filter-dispatched-requests-enabled>要素は、ディスパッチされたリクエストにフィルタを適用するかどうかを制御します。デフォルト値はfalseです。
2.4サーブレットは2.3サーブレットと下位互換性があるため(2.4仕様による)、WebLogicサーバーで2.3ディスクリプタ要素が検出されると、この<filter-dispatched-requests-enabled>要素は、trueにデフォルト設定されます。
この<redirect-with-absolute-url>要素は、javax.servlet.http.HttpServletResponse.SendRedirect()メソッドが相対URLまたは絶対URLを使用してリダイレクトするかどうかを制御します。プロキシHTTPサーバーを使用しているときに、URLを非相対リンクに変換しない場合は、この要素をfalseに設定します。
デフォルトの動作では、URLを非相対リンクに変換します。
リダイレクトで使用する、ユーザーが読めるデータです。
この<index-directory-enabled>要素は、適切な索引ファイルが検出されない場合に、HTMLディレクトリ・リストを自動的に生成するかどうかを制御します。
デフォルト値はfalse(ディレクトリを生成しない)です。値はtrueまたはfalseです。
この<index-directory-sort-by>要素は、weblogic.servlet.FileServletで生成されたディレクトリ・リストのソート順序を定義します。有効なsort-by値は、NAME、LAST_MODIFIEDおよびSIZEです。デフォルトのsort-by値はNAMEです。
この<servlet-reload-check-secs>要素は、WebLogicサーバーでサーブレットが変更されたかどうかをチェックし、変更されている場合はサーブレットをリロードするかどうかを定義します。
コンソールで指定した値は、手動で指定した値よりも常に優先されます。
この<resource-reload-check-secs>要素は、Webアプリケーション・スコープのリソース・パスで検出されたキャッシュ済リソースに対してメタデータ・キャッシュを実行する場合に使用します。このパラメータは、WebLogicサーバーでリソースが変更されたかどうかをチェックし、変更されている場合はリソースをリロードする頻度を指定します。
管理コンソールを使用してこのパラメータを指定した場合は、その値が優先されます。
この<single-threaded-servlet-pool-size>要素は、SingleThreadModeインスタンス・プールで使用するプールのサイズを定義します。デフォルト値は5です。
注意: このリリースでは、SingleThreadModeインスタンス・プールは推奨されません。
この<session-monitoring-enabled>要素をtrueに設定すると、セッションに対してランタイムMBeanが作成されます。false(デフォルト値)に設定すると、ランタイムMBeanは作成されません。コンソールで指定した値は、手動で設定した値よりも優先されます。
この<save-sessions-enabled>要素は、再デプロイまたはアンデプロイ時にセッション・データをクリーン・アップするかどうかを制御します。これは、メモリーとレプリケート済セッションに影響を与えます。値をtrueに設定すると、セッション・データは保存されます。falseに設定すると、Webアプリケーションの再デプロイまたはアンデプロイ時にセッション・データが破棄されます。デフォルトはfalseです。
この<prefer-web-inf-classes>要素をtrueに設定すると、WebアプリケーションのWEB-INFディレクトリにあるクラスが、アプリケーションまたはシステムのクラスローダーにロードされたクラスよりも優先してロードされます。デフォルト値はfalseです。コンソールで指定した値は、手動で設定した値よりも優先されます。
この<default-mime-type>要素のデフォルト値はnullです。ユーザーはこの要素を使用して、拡張子がマップされていないコンテンツ・タイプにデフォルトのMIMEタイプを指定できます。
この<client-cert-proxy-enabled>要素のデフォルト値はtrueです。trueに設定すると、WebLogicサーバーは、アイデンティティ証明書をクライアントからバックエンド・サーバーに渡します。また、WebLogicサーバーには、受信するWL-Proxy-Client-Certヘッダーを使用するか破棄するかが通知されます。
プロキシ・サーバー・プラグインでは、WL-Proxy-Client-Certヘッダーの各アイデンティティ証明書をエンコードして、バックエンドのWebLogicサーバー・インスタンスに渡します。各WebLogicサーバー・インスタンスは、ヘッダーから証明書情報を取得し、その情報がセキュアなソースに由来していることを確認します。次に、その情報を使用してユーザーを認証します。バックグラウンドのWebLogicサーバー・インスタンスの場合は、(クラスタ/サーバー・レベルまたはWebアプリケーション・レベルで)このパラメータをtrueに設定する必要があります。
この要素をtrueに設定する場合は、weblogic.security.net.ConnectionFilterを使用して、各WebLogicサーバー・インスタンスが受け入れる接続を、プロキシ・サーバー・プラグインが実行されているマシンからのみにします。接続フィルタを使用しないでtrueを指定した場合は、WL-Proxy-Client-Certヘッダーのなりすましが可能になるため、セキュリティが脆弱になる可能性があります。
この<relogin-enabled>要素は、下位互換性用のパラメータです。ログイン済のユーザーがアクセス権のないリソースにアクセスしようとすると、FORBIDDEN (403)レスポンスが発生します。
Webアプリケーションのweb.xmlディスクリプタに定義されているsecurity-constraints要素では、auth-constraint要素によって、このリソース・コレクションへのアクセスが許可されるユーザー・ロールが示されます。ここで、role-name = "*"は、Webアプリケーション内のすべてのロールを示すためのコンパクトな構文です。以前のリリースでは、role-name = "*"はレルム内に定義されたすべてのユーザー/ロールとして処理されていました。
このallow-all-roles要素は、古い動作に戻すための下位互換性用スイッチです。デフォルトの動作では、Webアプリケーションに定義されているすべてのロールを使用できます。weblogic-xmlに指定した値は、WebAppContainerMBeanに定義されている値よりも優先されます。
デフォルト・サーブレットとして暗黙的に登録されるweblogic.servlet.FileServletで静的ファイルを使用する際に、ネイティブI/Oを使用するには、native-io-enabledをtrueに設定します(デフォルト値はfalse)。native-io-enabled要素は、Windowsにのみ適用されます。
このminimum-native-file-size要素は、native-io-enabledがtrueに設定されている場合のみ適用されます。この要素は、ネイティブI/Oを使用する場合の最小ファイル・サイズを設定します。使用されるファイルのサイズがこの値を超えると、ネイティブI/Oが使用されます。この値を設定しないと、デフォルト値の4KBが使用されます。
このdisable-implicit-servlet-mappingフラグをtrueに設定すると、Webアプリケーション・コンテナは、内部サーブレット(*.jsp、*.classなど)に対して暗黙的なマッピングを作成せず、デフォルトのサーブレット・マッピングのみ作成します。暗黙的なサーブレット・マッピングをオフにする一般的な使用例は、HttpClusterServletまたはHttpProxyServletを構成する場合です。
デフォルト値はfalseです。
optimistic-serializationがオンの場合は、リクエストがサーブレット・コンテキスト間でディスパッチされると、WebLogicサーバーは、getAttribute(name)のコンテキスト属性とリクエスト属性をシリアライズおよびデシリアライズしません。
これは、Webアプリケーションに共通の属性の有効範囲が、共通の親クラスローダー(アプリケーションの有効範囲)に設定されていることを確認するか、または2つのWebアプリケーションが同じアプリケーションに属していない場合、これらの属性をシステム・クラスパスに配置する必要があることを意味します。
optimistic-serializationがオフ(デフォルト値)の場合、WebLogicサーバーは、ClassCastExceptionsの発生を防ぐために、getAttribute(name)のコンテキスト属性とリクエスト属性をシリアライズおよびデシリアライズします。
optimistic-serializationの値はWebAppContainerMBeanのドメイン・レベルでも指定でき、すべてのWebアプリケーションに適用されます。ドメイン・レベルの値は、weblogic.xmlの値(指定されている場合)によってオーバーライドされます。
デフォルト値はfalseです。
このrequire-admin-trafffic要素は、通信が管理チャネルを通過する必要があるかどうかを定義します。trueに設定すると、通信は管理チャネルを通過できます。そうでない場合、通信は、Webアプリケーションが管理モードの場合のみ管理チャネルを通過できます。次に例を示します。
<container-descriptor>
<require-admin-traffic>true</require-admin-traffic>
</container-descriptor>
この<charset-params>要素を使用して、unicode以外の操作でのコード・セット動作を定義します。次に例を示します。
<charset-params>
<input-charset>
<resource-path>/*</resource-path>
<java-charset-name>UTF-8</java-charset-name>
</input-charset>
</charset-params>
この<input-charset>要素を使用して、GETおよびPOSTデータの読取りに使用するキャラクタ・セットを定義します。次に例を示します。
<input-charset>
<resource-path>/foo</resource-path>
<java-charset-name>SJIS</java-charset-name>
</input-charset>
次の表では、<input-charset>要素内に定義できる要素について説明します。
要素 | 必須 | 説明 |
---|---|---|
<resource-path> | 必須 | WebLogicサーバーに対して、<java-charset-name>で指定したJavaキャラクタ・セットを使用するように指示するパス(リクエストのURLに含まれる場合)です。 |
<java-charset-name> | 必須 | 使用するJavaキャラクタ・セットを指定します。 |
この<charset-mapping>要素を使用して、IANAキャラクタ・セット名をJavaキャラクタ・セット名にマップします。次に例を示します。
<charset-mapping>
<iana-charset-name>Shift-JIS</iana-charset-name>
<java-charset-name>SJIS</java-charset-name>
</charset-mapping>
次の表では、<charset-mapping>要素内に定義できる要素について説明します。
要素 | 必須 | 説明 |
---|---|---|
<iana-charset-name> | 必須 | IANAキャラクタ・セット名を指定します。このセット名は、<java-charset-name>要素で指定したJavaキャラクタ・セットにマップされます。 |
<java-charset-name> | 必須 | 使用するJavaキャラクタ・セットを指定します。 |
このvirtual-directory-mapping要素を使用して、イメージ・リクエストなど特定の種類のリクエストに対してドキュメント・ルート(Webアプリケーションのデフォルトのドキュメント・ルート以外)を指定します。一連のWebアプリケーションに対するすべてのイメージは1つの場所に格納できるため、イメージを使用する各Webアプリケーションのドキュメント・ルートにイメージをコピーする必要はありません。リクエストを受信した場合、仮想ディレクトリが指定してあると、サーブレット・コンテナはリクエストされたリソースを最初に仮想ディレクトリで検索し、次にWebアプリケーションのデフォルトのドキュメント・ルートを検索します。これにより、同じドキュメントが両方の場所に存在する場合の優先順位が定義されます。
例:
<virtual-directory-mapping>
<local-path>c:/usr/gifs</local-path>
<url-pattern>/images/*</url-pattern>
<url-pattern>*.jpg</url-pattern>
</virtual-directory-mapping>
<virtual-directory-mapping>
<local-path>c:/usr/common_jsps.jar</local-path>
<url-pattern>*.jsp</url-pattern>
</virtual-directory-mapping>
次の表では、virtual-directory-mapping要素内に定義できる要素について説明します。
要素 | 必須 | 説明 |
---|---|---|
<local-path> | 必須 | ディスク上の物理的な場所を指定します。 |
<url-pattern> | 必須 | マッピングのURLパターンが含まれています。サーブレットAPI仕様の第11.2項に指定されているルールに従う必要があります。 |
仮想ディレクトリ・マッピングのWebLogicサーバー実装では、マッピングのURLパターンと一致するディレクトリの設定が必要です。たとえば、イメージの場合、imagesという名前のディレクトリをc:/usr/gifs/imagesに作成する必要があります。これにより、サーブレット・コンテナは、このimagesディレクトリで複数のWebアプリケーションのイメージを検索できます。
この要素を使用して、URLパターン一致用のクラスを指定します。WebLogicサーバーのURL一致マッピング・クラスのデフォルトはweblogic.servlet.utils.URLMatchMapで、J2EE標準に基づいています。SimpleApacheURLMatchMapはWebLogicサーバー内の別の実装で、このurl-match-map要素を使用してプラグインできます。
SimpleApacheURLMatchMapのルールは次のとおりです。
*.jwsをJWSServletにマップする場合
http://foo.com/bar.jws/bazは、pathInfo = bazを使用してJWSServletに解決されます。
次の例に示すように、weblogic.xmlで使用するURLMatchMapを構成します。
<url-match-map>
weblogic.servlet.utils.SimpleApacheURLMatchMap
</url-match-map>
このsecurity-permission要素は、セキュリティ・ポリシー・ファイル構文に基づいて1つのセキュリティ権限を指定します。セキュリティ権限仕様のSun社の実装については、次のURLを参照してください。http://java.sun.com/j2se/1.3/docs/guide/security/PolicyFiles.html#FileSyntax
オプションのcodebase句とsignedBy句は無視してください。
例:
<security-permission-spec>
grant { permission java.net.SocketPermission "*", "resolve" };
</security-permission-spec>
ここで
permission java.net.SocketPermission
は権限クラス名です。 "*"
はターゲット名を表します。 resolve
はアクションを示します。 context-root要素は、このスタンドアロンWebアプリケーションのコンテキスト・ルートを定義します。WebアプリケーションがスタンドアロンではなくEARに含まれる場合は、そのEARのMETA-INF/application.xmlファイルにコンテキスト・ルートを指定します。application.xmlのcontext-root設定は、weblogic.xmlのcontext-root設定よりも優先されます。
このweblogic.xml要素は、2フェーズ・デプロイメント・モデルを使用したデプロイメントでのみ機能します。
Webアプリケーションのコンテキスト・ルートは、次の優先順位で決定されます。
注意: context-root要素は、EARライブラリの個別のWebアプリケーションには設定できません。この要素は、Webアプリケーション・ライブラリにのみ設定できます。
このwl-dispatch-policy要素は、ワーク・マネージャ名を指定して、Webアプリケーションを構成済の作業マネージャに割り当てる際に使用します。このWebアプリケーション・レベルのパラメータは、per-servlet-dispatch-policy要素を使用して、各サーブレット・レベルまたはjspレベルでオーバーライドできます。
このservlet-descriptor要素を使用して、サーブレット固有の要素を集約します。
次の表では、servlet-descriptor要素内に定義できる要素について説明します。
要素 | 必須 | 説明 |
---|---|---|
<servlet-name> | 必須 | web.xmlデプロイメント・ディスクリプタ・ファイルのservlet要素に定義されているサーブレット名を指定します。 |
<run-as-principal-name> | オプション | web.xmlデプロイメント・ディスクリプタに定義されているrun-as-role-nameに対するプリンシパルの名前を指定します。 |
<init-as-principal-name> | オプション | サーブレットのinitメソッドのrun-as-principal-nameと同等です。ここで指定する識別情報は、システム内で有効なユーザー名である必要があります。init-as-principal-nameが指定されていない場合、コンテナはrun-as-principal-name要素を使用します。 |
<destroy-as-principal-name> | オプション | サーブレットのdestroyメソッドのrun-as-principal-nameと同等です。ここで指定する識別情報は、システム内で有効なユーザー名である必要があります。destroy-as-principal-nameが指定されていない場合、コンテナはrun-as-principal-name要素を使用します。 |
<dispatch-policy> | オプション | これは推奨されていない要素です。この要素は、実行キュー名を指定して、指定のサーブレットを構成済の実行キューに割り当てる場合に使用します。wl-dispatch-policyで定義したWebアプリケーション・レベルのディスパッチ・ポリシーは、この設定によってオーバーライドされます。 |
このwork-manager要素は<weblogic-web-app>要素のサブ要素です。work-manager要素内には次の要素を定義できます。
要素 | 必須 | 説明 |
---|---|---|
name | 必須 | ワーク・マネージャの名前を指定します。 |
response-time-request-class、fair-share-request-class、context-request-class、request-class-name | オプション | 次の4つの要素から選択できます。response-time-request-class: アプリケーションに対するレスポンス時間要求クラスを定義します。レスポンス時間は、goal-ms属性でミリ秒単位で定義されます。増分は((goal - T) C r )/Rで、Tは平均スレッド使用時間、Rは到着率、C rはフェア・シェアのレスポンス時間目標の優先順位を決めるための係数です。fair-share-request-class: フェア・シェア要求クラスを定義します。フェア・シェアは、デフォルトのシェアのパーセント属性で定義されます。したがって、デフォルトは100です。増分はC f /(P R T)で、Pはパーセント、Rは到着率、Tは平均スレッド使用時間、C fはレスポンス時間目標を下回るフェア・シェアの優先順位を決めるための係数です。context-request-class: コンテキスト・クラスを定義します。コンテキストは、指定のサービス・クラスへの複数のマッピング・コンテキスト情報(現行ユーザーとそのロール、Cookie、作業領域フィールドなど)を使用して定義されます。request-class-name: リクエスト・クラス名を定義します。 |
min-threads-constraint、min-threads-constraint-name | オプション | 次の2つの要素から選択できます。min-threads-constraint: デッドロックを防ぐために、サーバーが-制約済ワーキング・セットのリクエストに割り当てるスレッドの数を保証するために使用します。デフォルトはゼロです。min-threads値を1に設定すると、ピアから同期でコールされるレプリケーション更新リクエストなどで便利です。min-threads-constraint-name: min-threads-constraint要素の名前を定義します。 |
max-threads-constraint、max-threads-constraint-name | オプション | 次の2つの要素から選択できます。max-threads-constraint: 制約済ワーキング・セットからのリクエストを実行する同時スレッドの数を制限します。デフォルトはunlimited(無制限)です。たとえば、最大スレッドが10に定義され、3つのエントリ・ポイントで共有される制約を考えてみます。この場合は、組み合された3つのエントリ・ポイントからのリクエストが10未満のスレッドによって実行されていることが、スケジュール・ロジックによって確認されます。max-threads-constraint-name: max-threads-constraint要素の名前を定義します。 |
capacity、capacity-name | オプション | 次の2つの要素から選択できます。capacity: 制約を定義し、エントリ・ポイントのセットに適用して、制約済ワーキング・セットをコールできます。サーバーは、このcapacityに達した場合のみ、リクエストの拒否を開始します。デフォルトはゼロです。capacityには制約済ワーキング・セットからのすべてのリクエスト(キュー内または実行中)が含まれていることに注意してください。この制約の主な対象は、独自にフロー管理を行うJMSなどのサブシステムです。この制約はグローバル・キューのしきい値とは無関係です。capacity-name: capacity要素の名前を定義します。 |
logging要素は<weblogic-web-app>要素のサブ要素です。logging要素内には次の要素を定義できます。
要素 | 必須 | 説明 |
---|---|---|
log-filename | 必須 | ログ・ファイルの名前を指定します。ファイルの完全アドレスが必要です。 |
logging-enabled | オプション | ManagedConnectionFactoryまたはManagedConnectionのいずれかにログ・ライターを設定するかどうかを指定します。この要素がtrueに設定されている場合、ManagedConnectionFactoryまたはManagedConnectionから生成された出力は、log-filename要素で指定したファイルに送信されます。 この値を指定しない場合、WebLogicサーバーは、定義されたデフォルト値を使用します。 値の範囲: true | false デフォルト値: false |
rotation-type | オプション | ファイルのローテーション・タイプを設定します。値はbySize、byName、noneです。
|
number-of-files-limited | オプション | 古いメッセージを格納するために、サーバー・インスタンスによって作成されるファイルの数を制限するかどうかを指定します(rotation-typeのbySizeを指定する必要があります)。この制限に達すると、最も古いファイルが上書きされます。このオプションを有効にしないと、新規ファイルが無制限に作成されるため、必要に応じて、それらのファイルをクリーン・アップする必要があります。number-of-files-limitedをtrueに設定して有効にすると、サーバーは、rotationType変数を参照して、ログ・ファイルのローテーション方法を決定します。ローテーションとは、新規ファイルを作成せずに、既存のファイルをオーバーライドすることを意味します。number-of-files-limitedをfalseに指定すると、サーバーは、同じログ・ファイルをオーバーライドせずに、多数のログ・ファイルを作成します。
値の範囲: true | false デフォルト値: false |
file-count | オプション | ログのローテーション時に、サーバーが作成するログ・ファイルの最大数です。この数には、サーバーが現在のメッセージを格納するために使用するファイルは含まれていません(number-of-files-limitedを有効にする必要があります)。デフォルト値: 7 |
file-size-limit | オプション | ログ・メッセージを個別のファイルに移動する処理をサーバーが開始するサイズです(rotation-typeのbySizeを指定する必要があります)。ログ・ファイルが指定の最小サイズに達すると、サーバーは、次にファイル・サイズをチェックしたときに、現在のログ・ファイルの名前をFileName.nに変更し、新規ファイルを作成して後続のメッセージを格納します。デフォルト値: 500 |
rotate-log-on-startup | オプション | 起動サイクル中に、サーバーがログ・ファイルをローテーションするかどうかを指定します。値の範囲: true | false、デフォルト値: true |
log-file-rotation-dir | オプション | ローテーションするログ・ファイルを格納するディレクトリのパスを指定します。 |
rotation-time | オプション | ログ・ファイルの時間ベースのローテーションを開始する時間です。形式はk:mmで、kは1から24です(rotation-typeのbyTimeを指定する必要があります)。指定した時間になると、サーバーは現在のログ・ファイルの名前を変更します。その後は、file-time-spanに指定した間隔でログ・ファイル名を変更します。指定した時間がすでに経過している場合、サーバーはファイルのローテーションをすぐに開始します。デフォルトでは、ローテーション・サイクルはすぐに開始されます。 |
file-time-span | オプション | サーバーが古いログ・メッセージを別のファイルに保存する間隔(時間単位)です(rotation-typeのbyTimeを指定する必要があります)。デフォルト値: 24 |
library-ref要素は、現在のWebアプリケーションでWebアプリケーション・ライブラリとして使用するライブラリ・モジュールを参照します。
例:
<library-ref>
<library-name> WebAppLibraryFoo </library-name>
<specification-version>2.0</specification-version>
<implementation-version>8.1beta</implementation-version>
<exact-match>false</exact-match>
</library-ref>
Webアプリケーションに関連するサブ要素は、library-name、specification-version、implementation-versionおよびexact-matchのみです。
library-ref要素内には次の要素を定義できます。
要素 | 必須 | 説明 |
---|---|---|
library-name | 必須 | ライブラリ・モジュール参照のライブラリ名を指定します。デフォルト値はnullです。 |
specification-version | 必須 | ライブラリ・モジュール参照の仕様バージョンを指定します。デフォルト値は0です(これはfloatです)。 |
implementation-version | 必須 | ライブラリ・モジュール参照の実装バージョンを指定します。デフォルト値はnullです。 |
exact-match | 必須 | デフォルト値はfalseです。 |
Copyright © 1997, 2009, Oracle. All rights reserved.