―BEA WebLogic Server編―


   Web Applicationのデプロイメント


■weblogic.xml

<?xml version="1.0" charset="Shift_JIS" ?>

<!DOCTYPE weblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web Application 6.0//EN" "http://www.bea.com/servers/wls600/dtd/weblogic-web-jar.dtd">

<weblogic-web-app>
  <description>...</description>
  <weblogic-version>6.0</weblogic-version>


  <!-- role と user/group とのマッピング -->
  <security-role-assignment>   <!-- * -->
  <role-name>...</role-name>
  <principal-name>...</principal-name>   <!-- + -->
  </security-role-assignment>


  <!-- 参照名 (reference) と JNDI バインド名のマッピング -->
  <reference-descriptor>   <!-- * -->
  <resource-description>   <!-- * -->
    <res-ref-name>jdbc/...</res-ref-name>
    <jndi-name>JNDI バインド名</jndi-name>
  </resource-description>
  <ejb-reference-description>   <!-- * -->
    <ejb-ref-name>ejb/...EJB</ejb-ref-name>
    <jndi-name>JNDI バインド名</jndi-name>
  </ejb-reference-description>
  </reference-descriptor>


  <!-- セッションの設定 -->
  <session-descriptor>   <!-- ? -->


  <!-- session persistence (defaults to memory) -->
  <session-param>   <!-- * -->
    <param-name>PersistentStoreType</param-name>
    <!-- memory (default), file, jdbc or replicated -->
    <param-value>memory</param-value>
  </session-param>


  <!-- for file based session persistence : デフォルトは WEB-  INF/session_db または context-param で djavax.servlet.context.tmpdir が指定されていればこれを使用 -->
  <!--
  <session-param>
    <param-name>PersistentStoreDir</param-name>
    <param-value>...</param-value>
  </session-param>
  -->


  <!-- for jdbc based session persistence : JDBC connection pool を指定 -->
  <!--
  <session-param>
    <param-name>PersistentStorePool</param-name>
    <param-value>sessionPool</param-value>
  </session-param>
  <session-param>
    <param-name>JDBConnectionTimeoutSecs</param-name>
    <param-value>120</param-value>
  </session-param>
  -->


  <!-- session id 維持に使用する cookie の名前 (JSESSIONID) : URL rewriting 時は jsessionid がデフォルト -->
  <session-param>
    <param-name>CookieName</param-name>
    <param-value>JSESSIONID</param-value>
  </session-param>


  <!-- session id 長 (defaults to 52 byte) : 最短 8 byte -->
  <session-param>
    <param-name>IDLength</param-name>
    <param-value>52</param-value>
   </session-param>


  <!-- session timeout 時間 (defaults to 3600 秒) : web.xml の session-timeout (分単位) が優先される -->
  <session-param>
    <param-name>TimeoutSecs</param-name>
    <param-value>3600</param-value>
  </session-param>


  <!-- session id の維持に cookie を使用 -->
  <session-param>
    <param-name>CookiesEnabled</param-name>
    <param-value>true</param-value>
  </session-param>


  <!-- session id の維持に URL rewriting を使用 -->
  <session-param>
    <param-name>URLRewritingEnabled</param-name>
    <param-value>true</param-value>
  </session-param>


  <!-- アクティブな session のためのキャッシュのサイズ (defaults to 1024) -->
  <session-param>
    <param-name>CacheSize</param-name>
    <param-value>1024</param-value>
  </session-param>


  <!-- timeout した session をチェックする間隔 (60 秒) -->
  <session-param>
    <param-name>InvalidationIntervalSecs</param-name>
    <param-value>60</param-value>
  </session-param>


  </session-descriptor>


  <!-- JSP の設定 -->
  <jsp-descriptor>   <!-- * -->


  <jsp-param>   <!-- * -->
    <param-name>verbose</param-name>
    <param-value>true</param-value>
  </jsp-param>


  <jsp-param>
    <param-name>packagePrefix</param-name>
    <param-value>jsp_servlet</param-value>
  </jsp-param>


  <jsp-param>
    <param-name>keepgenerated</param-name>
    <param-value>true</param-value>
  </jsp-param>


  <jsp-param>
    <param-name>pageCheckSeconds</param-name>
    <param-value>1</param-value>
  </jsp-param>


  <jsp-param>
    <param-name>noTryBlocks</param-name>
    <param-value>false</param-value>
  </jsp-param>


  <!-- web app の全 JSP のエンコーディングを指定 -->
  <!--
  <jsp-param>
    <param-name>encoding</param-name>
    <param-value>server の locale に依存</param-value>
  </jsp-param>
  -->


  </jsp-descriptor>


</weblogic-web-app>

■weblogic.xmlの補足

●<security-role-assignment>
web.xmlの<security-role>で定義したロール名とセキュリティ・レルム内の user/groupとをマッピングします。

●<reference-descriptor>
web.xmlの<resource-ref>で定義したリソース名や<ejb-ref>で定義した EJB名と、実際にJNDIに登録されているデータソースやEJB のバインド名とをマッピングします。

●セッションの設定、JSP の設定
ここに記載した以外にも使えるパラメータが存在します。詳細はマニュアルをご覧ください。ただし、SP1 リリース以降 、USのサイトのマニュアルが頻繁に変更されていますので日本BEAのサイトよりは米国のサイトを参照した方がよいでしょう。
日本BEA:Weblogic.xml デプロイメント記述子の要素
BEA(米国):weblogic.xml Deployment Descriptor Elements


●<session-descriptor>
「WebLogic Serverのセッション管理(応用編)」において脚注で説明したとおり、セッション管理に関する設定はweb.xml、weblogic.xmlでWeb Applicationごとに行うことができます。

●<jsp-descriptor>
WebLogic 5.1では、weblogic.servlet.JSPServletのinitArgsに与えていたパラメータ群です。このテンプレートではすべてdefault値を設定しています。詳細は前記のマニュアルを参照ください。なお、encodingパラメータはその使用は推奨していません。servlet/JSP で日本語を使用する際の注意点は次回説明します。

 

web.xml


本稿に関するご質問やご意見は下記のメールアドレスまでお願いします。

info@atmarkit.co.jp

 今後の予定
WebLogic Serverのセッション管理(基礎編)
WebLogic Serverのセッション管理(応用編)
Web Applicationのデプロイメント

Web Application TIPS

Web Applicationのセキュリティ

JSPカスタム・タグ
EJB 2.0 のデプロイメント
WebLogic Server固有のEJB設定項目 (1)
WebLogic Server固有のEJB設定項目 (2)

Javaプログラミング・ワンポイントレクチャー INDEX

 



Java Agile フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Java Agile 記事ランキング

本日 月間