参照: weblogic.xml要素

このドキュメントは、WebLogicサーバー固有のデプロイメント・ディスクリプタであるweblogic.xmlの要素に関する完全なリファレンスです。Webアプリケーションにweblogic.xmlデプロイメント・ディスクリプタが含まれていない場合、WebLogicサーバーは、デプロイメント・ディスクリプタ要素のデフォルト値を自動的に選択します。weblogic.xmlの構造は、weblogic-web-app.xsdに定義されています。

次の各セクションでは、ルート要素<weblogic-web-app>の下にあるweblogic.xmlデプロイメント・ディスクリプタに定義できる複雑なデプロイメント・ディスクリプタ要素について説明します。

description

description要素は、Webアプリケーションのテキスト説明です。

weblogic-version

weblogic-version要素は、このWebアプリケーション(ルート要素<weblogic-web-app>に定義されている)のデプロイ先となるWebLogicサーバーのバージョンを示します。この要素は情報提供のみで、WebLogicサーバーでは使用されていません。

security-role-assignment

この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

この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

このresource-description要素は、サーバー・リソースのJNDI名を、WebLogicサーバーのEJBリソース参照にマップするために使用します。

次の表では、resource-description要素内に定義できる要素について説明します。

要素 必須 説明
<res-ref-name> 必須 リソース参照の名前を指定します。
<jndi-name> 必須 リソースのJNDI名を指定します。

resource-env-description

このresource-env-description要素は、ejb-jar.xmlデプロイメント・ディスクリプタで宣言されるresource-env-refを、サーバー・リソースを表すJNDI名にマップします。

次の表では、resource-env-description要素内で定義できる要素について説明します。

要素 必須 説明
<res-env-ref-name> 必須 リソース環境参照の名前を指定します。
<jndi-name> 必須 リソース環境参照のJNDI名を指定します。

ejb-reference-description

次の表では、ejb-reference-description要素内で定義できる要素について説明します。

要素 必須 説明
<ejb-ref-name> 必須 Webアプリケーションで使用するEJB参照の名前を指定します。
<jndi-name> 必須 参照するJNDI名を指定します。

service-reference-description

次の表では、service-reference-description要素内で定義できる要素について説明します。

要素 必須 説明
<service-ref-name>
<wsdl-url>
<call-property> <call-property>要素には、次のサブ要素があります。
  • <name>
  • <value>
<port-info> <port-info>要素には、次のサブ要素があります。
  • <port-name>
  • <stub-property>
  • <call-property>

session-descriptor

この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 永続ストアの方法を次のいずれかのオプションに設定します。
  • memory: 永続セッション記憶域を無効にします。
  • replicated: memoryと同じですが、クラスタ化されたサーバー間でセッション・データがレプリケートされます。
  • replicated_if_clustered: クラスタ化されたサーバーにWebアプリケーションがデプロイされている場合は、有効なpersistent-store-typeがレプリケートされます。そうでない場合は、memoryがデフォルトです。
  • sync-replication-across-cluster: レプリケーションがクラスタ間で同期して発生します。
  • async-replication-across-cluster: レプリケーションがクラスタ間で非同期に発生します。
  • file: ファイル・ベースの永続性を使用します(persistent-store-dirも参照)。
  • jdbc: データベースを使用して、永続セッションを格納します(persistent-store-poolも参照)。
  • cookie: ユーザーのブラウザのCookieにすべてのセッション・データが格納されます。
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-descriptor要素は、JSPコンパイラに対してコンフィギュレーション・パラメータのリストを指定します。次の表では、jsp-descriptor要素内に定義できる要素について説明します。

要素 必須 説明
page-check-seconds 1 JSPファイルが変更されて再コンパイルが必要かどうかをWebLogicサーバーがチェックする間隔(秒単位)を設定します。依存性もチェックされ、変更されている場合は再帰的にリロードされます。
  • 値-1は、ページをチェックしないことを意味します。これは、本番環境でのデフォルト値です。
  • 値0は、ページを常にチェックすることを意味します。
  • 値1は、ページを毎秒チェックすることを意味します。これは、開発環境でのデフォルト値です。
JSPへの変更がほとんどない本番環境では、チューニング要件に応じて、pageCheckSecondsの値を60以上に変更することを検討してください。
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

このauth-filter要素は、認証フィルタに対するHttpServletクラスを指定します。

注意: このリリースでは推奨されていない項目です。かわりに、サーブレット認証フィルタを使用してください。

container-descriptor

この<container-descriptor>要素は、Webアプリケーションの動作に影響を与えるパラメータのリストを指定します。

check-auth-on-forward

サーブレットまたはJSPから転送されたリクエストの認証が必要な場合は、この<check-auth-on-forward/>要素を追加します。再認証が不要な場合は、このタグを省略します。次に例を示します。

<container-descriptor>
     <check-auth-on-forward/>
</container-descriptor>

check-auth-on-forwardプロパティの有効化は、ベスト・プラクティスとしてお薦めできません。

filter-dispatched-requests-enabled

この<filter-dispatched-requests-enabled>要素は、ディスパッチされたリクエストにフィルタを適用するかどうかを制御します。デフォルト値はfalseです。

2.4サーブレットは2.3サーブレットと下位互換性があるため(2.4仕様による)、WebLogicサーバーで2.3ディスクリプタ要素が検出されると、この<filter-dispatched-requests-enabled>要素は、trueにデフォルト設定されます。

redirect-with-absolute-url

この<redirect-with-absolute-url>要素は、javax.servlet.http.HttpServletResponse.SendRedirect()メソッドが相対URLまたは絶対URLを使用してリダイレクトするかどうかを制御します。プロキシHTTPサーバーを使用しているときに、URLを非相対リンクに変換しない場合は、この要素をfalseに設定します。

デフォルトの動作では、URLを非相対リンクに変換します。

リダイレクトで使用する、ユーザーが読めるデータです。

index-directory-enabled

この<index-directory-enabled>要素は、適切な索引ファイルが検出されない場合に、HTMLディレクトリ・リストを自動的に生成するかどうかを制御します。

デフォルト値はfalse(ディレクトリを生成しない)です。値はtrueまたはfalseです。

index-directory-sort-by

この<index-directory-sort-by>要素は、weblogic.servlet.FileServletで生成されたディレクトリ・リストのソート順序を定義します。有効なsort-by値は、NAME、LAST_MODIFIEDおよびSIZEです。デフォルトのsort-by値はNAMEです。

servlet-reload-check-secs

この<servlet-reload-check-secs>要素は、WebLogicサーバーでサーブレットが変更されたかどうかをチェックし、変更されている場合はサーブレットをリロードするかどうかを定義します。

コンソールで指定した値は、手動で指定した値よりも常に優先されます。

resource-reload-check-secs

この<resource-reload-check-secs>要素は、Webアプリケーション・スコープのリソース・パスで検出されたキャッシュ済リソースに対してメタデータ・キャッシュを実行する場合に使用します。このパラメータは、WebLogicサーバーでリソースが変更されたかどうかをチェックし、変更されている場合はリソースをリロードする頻度を指定します。

管理コンソールを使用してこのパラメータを指定した場合は、その値が優先されます。

single-threaded-servlet-pool-size

この<single-threaded-servlet-pool-size>要素は、SingleThreadModeインスタンス・プールで使用するプールのサイズを定義します。デフォルト値は5です。

注意: このリリースでは、SingleThreadModeインスタンス・プールは推奨されません。

session-monitoring-enabled

この<session-monitoring-enabled>要素をtrueに設定すると、セッションに対してランタイムMBeanが作成されます。false(デフォルト値)に設定すると、ランタイムMBeanは作成されません。コンソールで指定した値は、手動で設定した値よりも優先されます。

save-sessions-enabled

この<save-sessions-enabled>要素は、再デプロイまたはアンデプロイ時にセッション・データをクリーン・アップするかどうかを制御します。これは、メモリーとレプリケート済セッションに影響を与えます。値をtrueに設定すると、セッション・データは保存されます。falseに設定すると、Webアプリケーションの再デプロイまたはアンデプロイ時にセッション・データが破棄されます。デフォルトはfalseです。

prefer-web-inf-classes

この<prefer-web-inf-classes>要素をtrueに設定すると、WebアプリケーションのWEB-INFディレクトリにあるクラスが、アプリケーションまたはシステムのクラスローダーにロードされたクラスよりも優先してロードされます。デフォルト値はfalseです。コンソールで指定した値は、手動で設定した値よりも優先されます。

default-mime-type

この<default-mime-type>要素のデフォルト値はnullです。ユーザーはこの要素を使用して、拡張子がマップされていないコンテンツ・タイプにデフォルトのMIMEタイプを指定できます。

client-cert-proxy-enabled

この<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

この<relogin-enabled>要素は、下位互換性用のパラメータです。ログイン済のユーザーがアクセス権のないリソースにアクセスしようとすると、FORBIDDEN (403)レスポンスが発生します。

allow-all-roles

Webアプリケーションのweb.xmlディスクリプタに定義されているsecurity-constraints要素では、auth-constraint要素によって、このリソース・コレクションへのアクセスが許可されるユーザー・ロールが示されます。ここで、role-name = "*"は、Webアプリケーション内のすべてのロールを示すためのコンパクトな構文です。以前のリリースでは、role-name = "*"はレルム内に定義されたすべてのユーザー/ロールとして処理されていました。

このallow-all-roles要素は、古い動作に戻すための下位互換性用スイッチです。デフォルトの動作では、Webアプリケーションに定義されているすべてのロールを使用できます。weblogic-xmlに指定した値は、WebAppContainerMBeanに定義されている値よりも優先されます。

native-io-enabled

デフォルト・サーブレットとして暗黙的に登録されるweblogic.servlet.FileServletで静的ファイルを使用する際に、ネイティブI/Oを使用するには、native-io-enabledをtrueに設定します(デフォルト値はfalse)。native-io-enabled要素は、Windowsにのみ適用されます。

minimum-native-file-size

このminimum-native-file-size要素は、native-io-enabledがtrueに設定されている場合のみ適用されます。この要素は、ネイティブI/Oを使用する場合の最小ファイル・サイズを設定します。使用されるファイルのサイズがこの値を超えると、ネイティブI/Oが使用されます。この値を設定しないと、デフォルト値の4KBが使用されます。

disable-implicit-servlet-mapping

このdisable-implicit-servlet-mappingフラグをtrueに設定すると、Webアプリケーション・コンテナは、内部サーブレット(*.jsp、*.classなど)に対して暗黙的なマッピングを作成せず、デフォルトのサーブレット・マッピングのみ作成します。暗黙的なサーブレット・マッピングをオフにする一般的な使用例は、HttpClusterServletまたはHttpProxyServletを構成する場合です。

デフォルト値はfalseです。

optimistic-serialization

optimistic-serializationがオンの場合は、リクエストがサーブレット・コンテキスト間でディスパッチされると、WebLogicサーバーは、getAttribute(name)のコンテキスト属性とリクエスト属性をシリアライズおよびデシリアライズしません。

これは、Webアプリケーションに共通の属性の有効範囲が、共通の親クラスローダー(アプリケーションの有効範囲)に設定されていることを確認するか、または2つのWebアプリケーションが同じアプリケーションに属していない場合、これらの属性をシステム・クラスパスに配置する必要があることを意味します。

optimistic-serializationがオフ(デフォルト値)の場合、WebLogicサーバーは、ClassCastExceptionsの発生を防ぐために、getAttribute(name)のコンテキスト属性とリクエスト属性をシリアライズおよびデシリアライズします。

optimistic-serializationの値はWebAppContainerMBeanのドメイン・レベルでも指定でき、すべてのWebアプリケーションに適用されます。ドメイン・レベルの値は、weblogic.xmlの値(指定されている場合)によってオーバーライドされます。

デフォルト値はfalseです。

require-admin-traffic

このrequire-admin-trafffic要素は、通信が管理チャネルを通過する必要があるかどうかを定義します。trueに設定すると、通信は管理チャネルを通過できます。そうでない場合、通信は、Webアプリケーションが管理モードの場合のみ管理チャネルを通過できます。次に例を示します。

<container-descriptor>
     <require-admin-traffic>true</require-admin-traffic>
</container-descriptor>

charset-params

この<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

この<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

この<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

この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-match-map

この要素を使用して、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

この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>

ここで

context-root

context-root要素は、このスタンドアロンWebアプリケーションのコンテキスト・ルートを定義します。WebアプリケーションがスタンドアロンではなくEARに含まれる場合は、そのEARのMETA-INF/application.xmlファイルにコンテキスト・ルートを指定します。application.xmlのcontext-root設定は、weblogic.xmlのcontext-root設定よりも優先されます。

このweblogic.xml要素は、2フェーズ・デプロイメント・モデルを使用したデプロイメントでのみ機能します。

Webアプリケーションのコンテキスト・ルートは、次の優先順位で決定されます。

  1. コンテキスト・ルートについてapplication.xmlをチェックします。検出された場合は、Webアプリケーションのコンテキスト・ルートとして使用します。
  2. コンテキスト・ルートがapplication.xmlに設定されておらず、WebアプリケーションがEARの一部としてデプロイされている場合は、コンテキスト・ルートがweblogic.xmlに定義されているかどうかをチェックします。検出された場合は、Webアプリケーションのコンテキスト・ルートとして使用します。Webアプリケーションがスタンドアロンでデプロイされている場合、application.xmlはチェックされません。最初にweblogic.xmlでコンテキスト・ルートがチェックされ、定義されていない場合はURIにデフォルト設定されます。
  3. コンテキスト・ルートがweblogic.xmlまたはapplication.xmlに定義されていない場合は、URIからコンテキスト・パスが推定され、URIに定義されている値からWAR接尾辞を除いた名前が指定されます。たとえば、URIのMyWebApp.warはMyWebAppという名前になります。

注意: context-root要素は、EARライブラリの個別のWebアプリケーションには設定できません。この要素は、Webアプリケーション・ライブラリにのみ設定できます。

wl-dispatch-policy

このwl-dispatch-policy要素は、ワーク・マネージャ名を指定して、Webアプリケーションを構成済の作業マネージャに割り当てる際に使用します。このWebアプリケーション・レベルのパラメータは、per-servlet-dispatch-policy要素を使用して、各サーブレット・レベルまたはjspレベルでオーバーライドできます。

servlet-descriptor

この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

この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

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です。
  • bySize: ログ・ファイルが、file-size-limitに指定したサイズに達すると、サーバーはファイル名をFileName.nに変更します。
  • byName: サーバーは、file-time-spanに指定した間隔で、ファイル名をFileName.nに変更します。ファイル名が変更された後、後続のメッセージは、log-filenameに指定した名前の新規ファイルに蓄積されます。
  • none: メッセージは1つのファイルに蓄積されます。ファイルのサイズが大きくなりすぎた場合は、ファイルの内容を消去する必要があります。
デフォルト値: bySize
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

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です。