Oracle9i Application Server for Linux Intel リリース・ノート リリース 1.0.2.2.2 2003 年 4 月 部品番号: 部品番号 J07349-02 このリリース・ノートは、現時点で公表できる最新の情報にもとづいています。このリリース・ノートの 後に明らかになった情報については、通常のサポート情報で入手できます。 Copyright © 2003, Oracle Corporation All Right Reserved Oracle と Oracle のロゴは Oracle Corporation の登録商標です。Oracle9i Application Server、Oracle Application Server、Oracle8i、PL/SQL、Oracle Developer's Kit、 Oracle JSP、Oracle Reports、Oracle Forms、Oracle BC4J、Oracle Database Cache、Oracle Portal、Oracle WebDB、 Oracle8i JVM、PL/SQL Gateway は、Oracle Corporation の商標です。記載されているその他の製品名および社名はその製品および会社を識別する目的にのみ使用さ れており、それぞれ該当する所有者の商標です。 目次 はじめに...................................................................................................................................................... 10 マニュアルに記載されている名称について ........................................................................................ 10 最新情報の入手について..................................................................................................................... 10 第1部 ......................................................................................................................................................... 11 第1章 日本語環境での使用上の注意 ......................................................................................................... 12 ドキュメントの修正および補足事項 ................................................................................................... 12 全体 ............................................................................................................................................ 12 インストレーション・ガイド...................................................................................................... 12 Oracle Web Cache 管理および配置ガイド ................................................................................ 13 Oracle9iAS Containers for J2EE スタート・ガイド リリース 1.0.2.2........................................ 13 既知の障害および注意事項 ................................................................................................................. 13 Core Edition について ................................................................................................................. 13 インストール時のディスク容量について.................................................................................... 13 対応ディストリビューションについて ....................................................................................... 14 Enterprise Edition のインストールについて................................................................................ 14 Oracle9iAS Database Cache Configuration Assistant の自動起動について(Enterprise Edition の み) ..................................................................................................................................... 14 インストール時における不要な設定のスキップについて........................................................... 14 Oracle9iAS R1.0.2.1 からの移行に関しての注意点 .................................................................... 15 Oracle EJE 用のデータベースについて ...................................................................................... 15 Java GUI ツールの利用について................................................................................................. 15 Oracle Database Configuration Assistant(DBCA)について .................................................... 15 mod_ose に関する障害 ............................................................................................................... 16 mod_plsql 利用時の日付型の引数に関する障害.......................................................................... 16 サンプル・プログラムについて .................................................................................................. 16 Oracle Enterprise Manager について .......................................................................................... 16 インストール時における root.sh 実行について........................................................................... 16 PL/SQL ゲートウェイの使用について ........................................................................................ 17 Oracle9iAS Containers for J2EE のインストールについて ......................................................... 17 Oracle9iAS SOAP のデフォルト設定におけるセキュリティ上の問題点 .................................... 17 Oracle9iAS Containers for J2EE のグラフィカル・ツールについて........................................... 19 ロードバランサを経由した SSL 接続.......................................................................................... 19 Oracle9iAS Containers for J2EE のデータソース設定で反映されない項目 (Bug#1865617,197830)....................................................................................................... 19 Oracle9iAS Containers for J2EE の EJB コンテナ利用時の注意点 ............................................. 19 Oracle9iAS Contianers for J2EE におけるステートフル Session Bean のメソッド間でのトランザ クションの共有についての問題(Bug#1831054).................................................................. 20 Oracle9iAS Containers for J2EE(OC4J)で-shutdown オプションが使用できない問題 (Bug#1817227).................................................................................................................... 21 Oracle9iAS Containers for J2EE(OC4J)の-restart オプションが使用できない問題(Bug#2154504) ............................................................................................................................................ 21 2 Oracle9i Application Server for Linux Intelリリース・ノート data-sources.xml の編集について ............................................................................................... 21 Oracle Wallet Manager を使用するための修正(Bug#1869196) .................................................. 21 Oracle9iAS Containers for J2EE の Servlet で OCI ドライバ使用に関して(Bug#1866890)........ 21 Oracle9iAS を Minimal インストールした場合の Universal Installer 起動問題(Bug#1974129) .. 21 VALIDATEXML オプションを指定して OC4J を起動できない問題(Bug#1763194) ................... 22 OC4J ロード・バランサがループしメッセージ・ログを出力し続ける問題(Bug#1964229) ...... 22 OC4J クラスタ化でセッション情報が共有できない問題(Bug#1951486)................................... 22 FastCGI(mod_fastcgi)でサポートする開発言語について....................................................... 22 Oracle Servlet Engine で getPathInfo()メソッドが使用できない(Bug#2067677)........................ 22 CD Pack に同梱されるパッチの適用について .................................................................................... 22 mod_plsql に関する修正の適用................................................................................................... 22 Oracle HTTP Server に関連した修正の適用 ............................................................................... 22 Oracle9iAS Web Cache R2.0.0.4.0 インストール....................................................................... 23 Oracle9iAS Portal のインストールについて................................................................................ 23 Oracle JSP 1.1.3.1 のインストール ............................................................................................ 23 Oracle9i Database に JDBC Thin ドライバで接続する際の修正の適用 ...................................... 24 第2部 ......................................................................................................................................................... 25 第2章 Oracle9i Application Server ............................................................................................................ 26 はじめに.............................................................................................................................................. 26 この章の目的...............................................................................................................................26 製品名称変更...............................................................................................................................26 動作保証に関する情報 ........................................................................................................................ 27 JDK/JRE の動作保証................................................................................................................... 27 新機能 ................................................................................................................................................. 28 インターネット・アプリケーションの新機能............................................................................. 28 Oracle9i Application Server Containers for J2EE ................................................................ 28 Oracle HTTP Server powered by Apache ........................................................................... 31 既知の問題点....................................................................................................................................... 35 インストールに関する問題 ......................................................................................................... 35 Oracle9i データベースの初期化パラメータの手動設定の必要性 ........................................ 35 Oracle Universal Installer における不正なインストール・ステータスの表示 ..................... 36 インストール時のエラー ..................................................................................................... 36 インストール後に redo ログを開いた際のエラー ............................................................... 36 Standard Edition のキャラクタ・セット ............................................................................. 36 インストール時の root ユーザーのログイン........................................................................ 36 非対話モードのインストール用レスポンス・ファイルの設定ガイド ................................. 36 全インストール・タイプ共通(Minimal Edition、Standard Edition および Enterprise Edition) .................................................................................................................................... 37 Minimal Edition および Standard Edition インストール・タイプのみ ................................. 39 Standard Edition インストール・タイプのみ ...................................................................... 39 Enterprise Edition インストール・タイプのみ .................................................................... 39 Portal Configuration Assistant のみ(全インストール・タイプ共通)................................ 40 Oracle9iAS Database Cache のインストール時のエラー................................................... 44 目次 3 同じ Oracle ホームへの再インストール時の Oracle HTTP Server 設定の変更点の保持..... 44 RDBMS パッチのインストール・ダイアログの表示........................................................... 45 openssl の要件 .................................................................................................................... 45 アンインストールおよび移行に関する問題点............................................................................. 45 Oracle Universal Installer を使用した Oracle9iAS Database Cache のアンインストールによ る依存コンポーネントの削除 ...................................................................................... 45 OraInventory ディレクトリの移行前にバックアップが必要 ............................................... 45 Oracle HTTP Server 起動時のエラー .................................................................................. 45 SOAP のリリース・ノートおよびドキュメントのリンクが機能しない ............................. 46 移行後の nmxw.ora のインスタンス化の必要性.................................................................. 46 Core Edition への Minimal/Standard/Enterprise Edition の上書きインストールでの既知の問 題点 ............................................................................................................................. 46 インターネット・アプリケーション・ソリューションの分野の問題点 ..................................... 46 Oracle HTTP Server powered by Apache ........................................................................... 46 キャッシュ・ソリューション分野の問題点 ................................................................................ 52 Web Cache.......................................................................................................................... 52 例およびデモ....................................................................................................................................... 52 デモの制限事項 ........................................................................................................................... 53 OracleJSP のデモ................................................................................................................ 53 Oracle Business Components for Java のデモのエラー ..................................................... 53 National Language Support(NLS)に関する問題点 ......................................................................... 53 NLS_LANG Environment Variable ...................................................................................... 53 initicache.ora ファイルの NLS パラメータ .......................................................................... 53 NLS の制約事項................................................................................................................... 54 第3章 Oracle Servlet Engine..................................................................................................................... 55 はじめに.............................................................................................................................................. 55 パラメータ・ファイルの変更.............................................................................................................. 55 ケース 1....................................................................................................................................... 55 ケース 2....................................................................................................................................... 56 第4章 Oracle9iAS Portal ........................................................................................................................... 58 はじめに.............................................................................................................................................. 58 ドキュメント....................................................................................................................................... 58 動作要件.............................................................................................................................................. 58 Oracle9iAS Portal のインストールについて ....................................................................................... 58 PSR30983A 以降を適用時のプロキシ・サーバーの制限.................................................................... 63 ブラウザの設定 ................................................................................................................................... 64 ログインのトラブルシューティング ................................................................................................... 64 Internet Explorer 5 での高度なセキュリティ............................................................................... 64 ドキュメント名の制限 ........................................................................................................................ 64 Oracle9iAS Portal の分散環境での制限............................................................................................... 64 セキュリティ情報付きのインポート/エクスポート ............................................................................ 65 Solaris でのインポート/エクスポートの制限 ...................................................................................... 65 フォームの制限 ................................................................................................................................... 65 Oracle Report Security について......................................................................................................... 68 4 Oracle9i Application Server for Linux Intelリリース・ノート イメージ・チャートの制限 ................................................................................................................. 68 ユーザーの追加、削除について .......................................................................................................... 68 ユーザー・プロファイルの編集について............................................................................................ 69 各国語サポートの制限 ........................................................................................................................ 69 その他の制限....................................................................................................................................... 73 第5章 Oracle9i Application Server への EJB の配置 ................................................................................. 75 はじめに.............................................................................................................................................. 75 この章の目的...............................................................................................................................75 トランザクションのための Oracle 固有要素の定義............................................................................ 75 トランザクションへのローカル・リソース参加の定義 .............................................................. 75 2 フェーズ・コミット・エンジンの定義..................................................................................... 76 トランザクション内のブランチの使用可能化............................................................................. 76 コンテナ管理の永続性の定義.............................................................................................................. 77 Oracle 固有の DTD の変更 .................................................................................................................. 77 Oracle9i Application Server 環境でのグローバル・トランザクション........................................ 78 第6章 Oracle9iAS Web Cache.................................................................................................................. 80 はじめに.............................................................................................................................................. 80 この章の目的...............................................................................................................................80 Oracle9iAS Web Cache のバージョン ........................................................................................ 80 Oracle9iAS Web Cache の構成........................................................................................................... 80 Oracle9iAS Web Cache の制限事項.................................................................................................... 81 HTTP Range リクエストとマルチパートのレスポンス .............................................................. 81 パーソナライズ・ページ............................................................................................................. 81 Oracle9iAS Web Cache Manager での不十分な入力チェック.................................................... 81 Web サーバー・ステータスの報告 ............................................................................................. 81 Admin Server への IP アクセス ................................................................................................... 82 Netscape の制限事項 .......................................................................................................................... 82 ファイル記述子の制限事項 ................................................................................................................. 82 TCP のチューニング ........................................................................................................................... 82 Oracle9iAS Web Cache のデフォルト・ポート.................................................................................. 83 Oracle9iAS Web Cache 使用法の例.................................................................................................... 84 1024 以下のポートをリスニングするための Oracle9iAS Web Cache の構成方法 ............................. 84 Oracle9iAS Web Cache Manager の administrator パスワード紛失について ..................................... 84 Oracle9iAS Web Cache のキャッシュルール設定時の注意................................................................ 84 Oracle9iAS Web Cache キャッシュ失効機能について(Bug#1972673) .............................................. 85 Oracle9iAS Web Cache でサポートされないコンポーネント ............................................................ 85 Basic 認証を必要とするページのキャッシュ指定について ................................................................ 85 拡張機能.............................................................................................................................................. 85 バージョン 1.0.2.1.0 の拡張機能 ............................................................................................... 85 watchdog 機能 ..................................................................................................................... 85 Web Cache Manager を使用して、アクセスのロギングを使用不可にすることが可能...... 85 イベント・ログは、オプションで冗長モードをサポート ................................................... 85 バージョン 1.0.2.3.0 の拡張機能................................................................................................. 85 目次 5 バージョン 2.0.0.1 の拡張機能.................................................................................................... 86 キャッシュされたオブジェクトの TOP100 のリスト ......................................................... 86 キャッシュされたコンテンツのリスト................................................................................ 86 Oracle9iAS Web Cache の Watchdog 機能 ......................................................................... 87 キャッシュのヒット/ミス .................................................................................................... 88 リスニングの保留/再開........................................................................................................ 88 第7章 Edge Side Includes の JESI タグ.................................................................................................... 90 Edge Side Includes テクノロジおよび処理の概要 .............................................................................. 90 Edge Side Includes テクノロジ........................................................................................................... 90 ESI の概要................................................................................................................................... 90 サロゲートについて .................................................................................................................... 91 主要な ESI 機能........................................................................................................................... 91 Oracle9iAS Web Cache および ESI プロセッサ ................................................................................. 91 Oracle9iAS Web Cache の概要................................................................................................... 91 Web Cache 使用方法のステップ ................................................................................................ 92 Oracle9iAS Web Cache ESI プロセッサ ..................................................................................... 92 JESI 機能の概要.......................................................................................................................... 92 JESI タグを使用する理由............................................................................................................ 92 OracleJSP によって実装される JESI タグの概要....................................................................... 93 JESI 使用方法モデル........................................................................................................................... 93 control/include モデル.................................................................................................................. 94 template/fragment モデル............................................................................................................ 94 JESI include に関する注意 .......................................................................................................... 94 ページの失効化 ................................................................................................................................... 95 ページのパーソナライズ..................................................................................................................... 95 OracleJSP JESI タグの説明................................................................................................................ 95 構文における記号の表記および注意事項............................................................................................ 95 ページの設定およびコンテンツ・タグの説明............................................................................. 96 ページの設定および使用方法モデルの要約 ................................................................................ 96 JESI control タグ......................................................................................................................... 96 構文 .................................................................................................................................... 97 属性 .................................................................................................................................... 97 JESI include タグ ........................................................................................................................ 97 構文 .................................................................................................................................... 97 属性 .................................................................................................................................... 98 例−control/include モデル .......................................................................................................... 98 例 1: control/include.............................................................................................................98 例 2: control/include.............................................................................................................98 例 3: control/include.............................................................................................................99 例 4: control/include.............................................................................................................99 JESI template タグ.................................................................................................................... 100 構文 .................................................................................................................................. 100 属性 .................................................................................................................................. 101 6 Oracle9i Application Server for Linux Intelリリース・ノート JESI fragment タグ ................................................................................................................... 101 構文 .................................................................................................................................. 101 属性 .................................................................................................................................. 101 例−template/fragment モデル................................................................................................... 101 例 1: template/fragment ..................................................................................................... 101 例 2: template/fragment ..................................................................................................... 102 ページの失効化タグおよびサブタグの説明 ...................................................................................... 102 JESI invalidate タグ .................................................................................................................. 103 構文 .................................................................................................................................. 103 属性 .................................................................................................................................. 103 例: 構成ファイル............................................................................................................... 104 JESI object サブタグ................................................................................................................. 104 構文 .................................................................................................................................. 104 属性 .................................................................................................................................. 104 JESI cookie サブタグ ................................................................................................................ 105 構文 .................................................................................................................................. 105 属性 .................................................................................................................................. 105 JESI header サブタグ ............................................................................................................... 105 構文 .................................................................................................................................. 105 属性 .................................................................................................................................. 105 例−ページの失効化 .................................................................................................................. 105 例 1: ページの失効化 ........................................................................................................ 105 例 2: ページの失効化 ........................................................................................................ 106 例 3: ページの失効化 ........................................................................................................ 106 例 4: ページの失効化 ........................................................................................................ 106 例 5: ページの失効化 ........................................................................................................ 107 ページのパーソナライズ・タグの説明 ............................................................................................. 107 JESI personalize タグ ............................................................................................................... 107 構文 .................................................................................................................................. 107 属性 .................................................................................................................................. 107 例−ページのパーソナライズ.................................................................................................... 107 JESI タグ処理および JESI から ESI への変換 .................................................................................. 108 OracleJSP JESI タグ・ライブラリ記述ファイル.............................................................................. 108 第8章 Oracle9iAS Wireless..................................................................................................................... 114 はじめに............................................................................................................................................ 114 この章の目的............................................................................................................................. 114 ライセンス ................................................................................................................................ 114 『Oracle9i Application Server for UNIX インストレーション・ガイド』の訂正 .............................. 114 Oracle9iAS Wireless の設定の検証 ........................................................................................... 115 jserv.conf ファイルの ApJServGroupMount エントリの例........................................................ 115 新機能 ............................................................................................................................................... 115 JDK/JRE の動作保証........................................................................................................................ 115 Oracle9iAS Wireless クライアント・ツールのサポート OS............................................................. 115 目次 7 Oracle9iAS Wireless クライアント・ツールの CPU 要件................................................................. 115 JServ.conf への追加点 ...................................................................................................................... 115 Oracle9iAS Wireless の再インストール............................................................................................ 116 Oracle9i Application Server Wireless サーバー・インストレーション ............................................. 116 インストール・オプション ....................................................................................................... 116 非対話モードのインストールの非サポート .............................................................................. 116 データベース接続...................................................................................................................... 116 接続可能な Oracle データベース............................................................................................... 116 Oracle 9.0.1 に接続するための作業 .......................................................................................... 117 Oracle9i Application Server インストール後の設定 .................................................................. 117 Oracle9iAS Wireless クライアント・インストレーション ............................................................... 119 Oracle9iAS Wireless クライアントのセットアップの準備 ....................................................... 119 Oracle9iAS Wireless Service Designer のセットアップ ........................................................... 119 Oracle9iAS Wireless Web Integration Developer のセットアップ ............................................ 119 Oracle9iAS Wireless クライアント・ツールのプログラム・フォルダの位置........................... 121 システム Logger................................................................................................................................ 121 追加設定の必要性...................................................................................................................... 121 データベース Logger の開始手順 .............................................................................................. 123 Oracle9iAS Wireless 用の複数の VM のセットアップ..................................................................... 123 Oracle9iAS Wireless インスタンスのプロパティ設定について ........................................................ 124 既知の制限事項と制約事項 ............................................................................................................... 128 JDBC ドライバ.......................................................................................................................... 128 ブートストラップ・リポジトリの Provisioning Service ........................................................... 128 位置情報サービス...................................................................................................................... 128 メール・アダプタ...................................................................................................................... 128 Web Integration アダプタの文字コード設定 ............................................................................. 128 SQL アダプタ・マスター・サービス ........................................................................................ 129 SQL アダプタを使用した半角カナデータの取得について ........................................................ 129 SQL アダプタの出力結果のキャプション ................................................................................. 129 URL アダプタの文字コード設定について ................................................................................. 129 ストリッパ・アダプタにおける文字コード設定 ....................................................................... 129 ストリッパ・アダプタの外部サイトへのアクセス.................................................................... 129 LDAP アダプタのログオンについて ......................................................................................... 129 LDAP アダプタの日本語使用について ...................................................................................... 129 Servlet アダプタの未サポートについて .................................................................................... 130 トランスフォーマ...................................................................................................................... 130 Compact HTML トランスフォーマのサポートについて............................................................ 130 HDML トランスフォーマのサポートについて .......................................................................... 130 KDDI au/Tu-Ka EZweb 用ロジカル・デバイスの設定事項 ...................................................... 131 SMS への対応 ........................................................................................................................... 131 プッシュ型通知機能(アラート) ................................................................................................. 131 プッシュ型通知機能(アラート)の作成について ........................................................................ 131 ptg/rm からのアラートアドレスの変更が正常に行われない .................................................... 131 8 Oracle9i Application Server for Linux Intelリリース・ノート デバイス(ブラウザ、DoCoMo)からのアラートアドレス作成で EMAIL を選択しても、再度ペ ージを表示すると SMS になってしまう ........................................................................... 132 デバイス(UP.SDK、J-PHONE)からのアラートアドレス割り当てで EMAIL を選択しても、再 度ページを表示すると空になってしまう .......................................................................... 132 アラートメールのヘッダ情報に日本標準時間以外が設定されている場合がある ..................... 132 デバッグ.................................................................................................................................... 132 Oracle9iAS Wireless Web Integration Developer:起動時の Java エラー ................................ 132 Oracle9iAS Wireless Web Integration Developer:文字入力時の注意...................................... 132 Oracle9iAS Wireless Web Integration Developer:WIDL 作成時における日本語使用.............. 132 Oracle9iAS Wireless Web Integration Developer:日本語変数名の使用について .................... 133 Oracle9iAS Wireless Web Integration Developer:正規表現の未サポートについて ................ 133 Oracle9iAS Wireless Web Integration Server:正規表現の未サポートについて ...................... 133 Oracle9iAS Wireless Service Designer:文字コード設定......................................................... 133 Oracle9iAS Wireless Service Designer:EMAIL ロジカル・デバイスの文字コード ................ 133 Oracle9iAS Wireless Service Designer:テスト・ウィザード.................................................. 133 Oracle9iAS Wireless Service Designer:Transformer Testing Tool.......................................... 133 Oracle9iAS Wireless Service Designer:Transformer Testing Tool でのエラー....................... 133 Oracle9iAS Wireless Service Designer:Transformer Testing Tool における実行 URI ............ 134 Oracle9iAS Wireless Service Designer:Transformer Testing Tool でのサービスのテストで文字 化けが発生する ................................................................................................................. 134 Oracle9iAS Wireless Service Designer:フォルダ内容の表示.................................................. 134 Oracle9iAS Wireless Service Designer:エイリアス作成ウィザード....................................... 134 Oracle9iAS Wireless Service Designer:XSLT エディタでの日本語入力................................. 134 Oracle9iAS Wireless Service Designer:追加された新規の検索/ソート機能 ........................... 134 Oracle9iAS Wireless Service Designer:Disp.Name に半角かなを使用しているユーザ名が登録さ れているとユーザー検索で全くヒットしない................................................................... 134 Oracle9iAS Wireless Service Designer:大きな XML ファイルのロード・エラー ................... 134 Oracle9iAS Wireless Service Designer:Master Service Creation Wizard : Name フィールドに1 文字の文字列が使用できない............................................................................................ 135 Personalization Portal:PAPZ ベースの Personalization Portal のサポート ............................. 135 Personalization Portal:ログイン後の画面で HELP を参照できない .......................................... 135 Personalization Portal:ブックマーク ...................................................................................... 135 Personalization Portal:イメージの表示................................................................................... 135 Personalization Portal:アラート・アドレスの一意制約違反................................................... 136 Personalization Portal:マスター・サービスでのアラート ...................................................... 136 Personalization Portal:サービス実行時の権限 ........................................................................ 136 Personalization Portal:LocalStrings.properties の翻訳後のイメージ表示 ............................... 136 LocalStrings.properties の翻訳 .................................................................................................. 136 SystemLog.enableServiceLogging パラメータについて........................................................... 136 目次 9 はじめに マニュアルに記載されている名称について Oracie9i Application Server 関連マニュアルは、英語版を翻訳しているため、マニュアル内で参照されてい る情報には、日本では提供されていないものも含まれます。 インターネット URL マニュアル名 ソフトウェア名 最新情報の入手について 日本オラクルでは、インターネット開発者向けのあらゆる技術リソースを、24 時間 365 日提供するコミュ ニティ・サイト OTN-J(Oracle Technology Network Japan)を運営しています。 OTN-J では、最新の技術情報、オンライン・マニュアル、ソフトウェア・コンポーネントなどを、無料で 入手できます。 http://otn.oracle.co.jp/ また、最新のセキュリティ情報については、以下のサイトを参照して下さい。 http://otn.oracle.co.jp/security/ 10 Oracle9i Application Server for Linux Intelリリース・ノート 第1部 はじめに 11 第1章 日本語環境での使用上の注意 ドキュメントの修正および補足事項 全体 本リリースでは、以下の機能はサポートされません。よって、以下の機能に関するドキュメント上の関連 記述も一切無効です。インストールされる関連ファイルやツールのご利用もサポートされません。 Oracle9iAS Object Cache for Java Oracle Enterprise Manager Oracle9iAS Database Cache Oracle9iAS Discoverer Oracle Internet File System Oracle9iAS Forms Services Oracle9iAS Reports Services Oracle Workflow Oracle9iAS InterConnect Oracle9iAS Email Oracle9iAS Unified Messaging インストレーション・ガイド P.1-5 の表 1-4 Linux Intel のソフトウェア要件は正しくは以下になります。 オペレーティング・システム: RedHat 7.1: Linux Kernel 2.4.3-12 以降 , glibc 2.2.2-10 JDK: Oracle9i Application Server リリース 1.0.2.2 では、オラクル社は次の JDK の使用をサポートしてい ます。 Blackdown の JDK 1.1.8v3。次の URL から入手可能です。 http://www.blackdown.org Sun 社の JDK 1.3.1。次の URL から入手可能です。 http://java.sun.com 注意:次のコンポーネントは、JDK 1.3.1 でのみ動作が保証されています。 BC4J 3.2.2 Oracle9iAS Contianers for J2EE 1.0.2.2 Oracle9iAS Portal 3.0.9 Oracle9iAS Wireless 1.1.1 JDBC 1.2 これらのコンポーネントを使用する場合、インストール中にプロンプトが表示されたら、JDK 1.3.1 の インストール先を入力する必要があります。 ソフトウェア XFree86 Development 3.3.3.1 以降 Open Motif 2.1.30 シェル 12 Korn シェル Oracle9i Application Server for Linux Intelリリース・ノート Oracle Web Cache 管理および配置ガイド マニュアル「Oracle9iAS Web Cache 管理および配置ガイド リリース 2.0.0」のページ B-2 に、最大受信接続 数の初期値は 1,000 と記載されていますが、正しくは 900 です。(Bug#1966582) また、ページ 5-15 の項目「6.「Submit」を選択します。」の直前には、以下の記述が追加さ れます。 「注意: 統計モニター・リクエストで HTTPS を使用可能にした場合、Oracle Web CacheManager のインター フェースを使用して統計モニター・リクエストを送信できません。」 マニュアル「Oracle9iAS Web Cache 管理および配置ガイド リリース 2.0.0」のページ 5-12 には必要とされ るファイル・ディスクリプタ数に関する説明がありますが、以下のように訂正します。 【誤】 Max_File_Desc = Current_Max_Conn + App_Web_Server_Capacity_Sum + 20 【正】 Max_File_Desc = Current_Max_Conn + App_Web_Server_Capacity_Sum + 50 【誤】 20 は、Oracle9iAS Web Cache の内部使用のために確保されている接続数です。 【正】 50 は、Oracle9iAS Web Cache の内部使用のために確保されている接続数です。 Oracle9iAS Containers for J2EE スタート・ガイド リリース 1.0.2.2 マニュアル「Oracle9iAS Containers for J2EE スタート・ガイド リリース 1.0.2.2」の 13 ページに「OC4J は、 Sun Microsystems JDK バージョン 1.2.2_07 の tools.jar ファイルと共にインストールされます。」と記載され ていますが、実際に OC4J にインストールされている tools.jar ファイルは、Sun Microsystems JDK バージョ ン 1.3.1-beta のものです。 既知の障害および注意事項 Core Edition について 本リリースでは、インストレーション・ガイドに記載されているインストール・オプションの他に Core Edition でのインストールが可能です。Core Edition でインストールを行った場合、次のコンポーネントがイ ンストールされます。 Oracle HTTP Server Oracle Business Components for Java Oracle9iAS Containers for J2EE Oracle9iAS Web Cache Oracle9iAS Containers for J2EE は Core Edition を選択した場合のみインストールされます。Oracle9iAS Containers for J2EE と、Minimal/Standard/Enterprise Edition に含まれる機能を併せて使用する場合は、 Minimal/Standard/Enterprise Edition のインストールの後に Core Edition のインストールを実行してください。 インストール時のディスク容量について 製品のインストール時にはインストレーションガイド P1-2 に記載されているディスク領域よりも多くのデ ィスク領域を必要とします。ORACLE_HOME に以下の空きディスク領域が必要です。 Core Edition 410MB Minimal Edition 727MB Standard Edition 2.07GB Enterprise Edition 5.57GB 第1章 日本語環境での使用上の注意 13 対応ディストリビューションについて 2002 年 5 月時点での対応ディストリビューションパッケージは以下のとおりです。 Redhat Linux 7.1/7.1 日本版 MIRACLE LINUX Standard Edition V2.0(※) ※Oracle9i Application Server Standard Edition 及び Enterprise Edition に対応します。 最新の対応ディストリビューションパッケージ及び追加の情報については日本オラクル株式会社のホーム ページ http://www.oracle.co.jp/に掲載されます。 Enterprise Edition のインストールについて 本リリースでは、Enterprise Edition としてインストールする場合には、「Component Configuration and Startup」画面において、以下のコンポーネントは選択しないでください。 Oracle9iAS Database Cache Oracle9iAS Discoverer Oracle9iAS Portal Oracle9iAS Forms Services Oracle9iAS Reports Services Oracle9iAS Database Cache Configuration Assistant の自動起動について (Enterprise Edition のみ) Oracle9iAS のインストール中に、Oracle9iAS Database Cache Configuration Assistant が自動的に起動されます。 Oracle9iAS Database Cache の機能を利用しない場合は、「取り消し」ボタンを押して、Configuration Assistant を終了してください。 インストール時における不要な設定のスキップについて インストール中に、Oracle9iAS Portal と Oracle9iAS Wireless に関する設定を入力する画面が現われます。 Oracle9iAS Portal は、本リリースでは Patch CD-ROM を適用するため、各項目はデフォルト値のまま「次へ」 ボタンをクリックして下さい。詳細については「Oracle9iAS Portal のインストールについて」を参照して 下さい。また、Oracle9iAS Wireless をインストールしない場合もこれらの設定を無視して構いません。空白 もしくは仮の値を入力して、インストールを先に進めてください。上記の対処によって、幾つかの設定を スキップした場合、インストール中にインストーラー(runInstaller )を起動したコンソール画面に、以下 のようなエラーが出力されます。しかし、これらは Oracle9iAS Wireless の設定をスキップしたために発生 したエラーなので、無視して構いません。 <prompt%> /cdrom/9i_appserver_disk1/runInstaller <prompt%> Initializing Java Virtual Machine from /tmp/OraInstall/jre/bin/jre. Please wait... SQL*Plus: Release 8.1.7.0.0 - Production on Tue Dec 5 11:44:56 2000 (c) Copyright 2000 Oracle Corporation. All rights reserved. Enter user-name: ERROR: ORA-12545: Connect failed because target host or object does not exist Enter user-name: SP2-0306: Invalid option. 14 Oracle9i Application Server for Linux Intelリリース・ノート Usage: CONN[ECT] [logon] [AS {SYSDBA|SYSOPER}] | [INTERNAL] where <logon> ::= <username>[/<password>][@<connect_string>] | / Enter user-name: Enter password: ERROR: ORA-12545: Connect failed because target host or object does not exist SP2-0157: unable to CONNECT to ORACLE after 3 attempts, exiting SQL*Plus Oracle9iAS R1.0.2.1 からの移行に関しての注意点 Oracle9iAS R1.0.2.1 から Oracle9iAS R1.0.2.2 への移行の際には<Oracle_Home>/Apache/Apache/conf 内の Apache 設定ファイルが更新されます。移行前の設定ファイルが<Oracle_Home>/Apache/Apache/conf 以外に 配置されていた場合や、移行後に 1.0.2.1 で使用していた設定ファイルを上記ディレクトリに配置する場合 は、移行後に次の変更を行なって下さい。 移行後に使用する httpd.conf の最後に以下二行を追加して下さい。 LoadModule oprocmgr_module libexec/liboprocmgr.so AddModule mod_oprocmgr.c Oracle EJE 用のデータベースについて Enterprise Edition としてインストールした場合、Oracle EJE として利用するためのデータベースは作成され ません。Oracle EJE をご利用の際には、Oracle Database Configration Assistant などにより、新規で Oracle EJE 用のデータベースを作成してください。 Java GUI ツールの利用について Oracle Database Configuration Assistant(DBCA),Net8 Assistant,Net8 Configuration Assistant では以下のエ ラーを出力して起動しない場合があります。 SIGSEGV received at befffa1c in /usr/X11R6/libXt.so.6. Proccesing Terminated .... しばらく時間を開けて再実行を繰り返してください。 もしくは、Java GUI を利用しないでコンフィグレーションを行ってください。この問題はインストー ル時にも発生する場合があります。データベース、Net8 に関する設定はコンポーネントインストール 後から行う事を推奨します。 Net8 Configuration Assistant などの Java GUI ツールは、日本語モードでは上手く動作しない可能性が有 ります。あらかじめ環境変数 LANG 及び LC_ALL を「C」に設定して、起動する様にしてください。 Bash の場合の実行例 $ export LANG=C $ export LC_ALL=C C シェルの場合の実行例 % setenv LANG C % setenv LC_ALL C Oracle Database Configuration Assistant( (DBCA)について )について DBCA の-dbloc オプションは機能しません。データベースを作成/再作成する場合、データファイルの位置 指定は、DBCA の設定画面上で直接指定する様にしてください。 Database Configuration Assistant を利用しないでデータベースを作成する方法に関しましては、『Oralce8i 管 理者ガイド、リリース 8.1』の第 1 部 2 Oracle データベースの作成の項目を参照してください。 第1章 日本語環境での使用上の注意 15 mod_ose に関する障害 Oracle HTTP Server では、 $ORACLE_HOME/Apache/Apache/conf/mod__ose.conf の中で、 SetHandler aurora-stateless-server と設定された URL を呼び出すと、ブラウザの画面に表示されるコンテンツの先頭にそのサイズが表示され ることがあります。 SetHandler aurora-server と設定することで、この問題を回避してください。 mod_plsql 利用時の日付型の引数に関する障害 mod_plsql を使用してデータベースのストアド・プログラムを呼び出す時に、日付型の引数のフォーマット が正しく解釈されない場合があります。この不具合は将来のリリースで修正されます。現在のリリースで この問題を回避するためには、以下の作業を行って下さい。 1. SYS ユーザーでデータベースに接続し、以下のコマンドを実行し、ストアド・プロシージャを作成し ます。日付書式フォーマットは、必要に応じて変更します。 create or replace procedure fix_date_format is begin DBMS_SESSION.SET_NLS('NLS_DATE_FORMAT','''YYYY-MM-DD'''); end; / 2. 以下のコマンドを実行して、1.で作成したストアド・プロシージャを全ユーザーより実行可能にしま す。 grant execute on fix_date_format to public; 3. Oracle HTTP Server を停止します。 prompt>$ORACLE_HOME/Apache/Apache/bin/apachectl stop 4. 以下のファイルを編集し、各 DAD の before_proc 項目を以下のように変更します。 $ORACLE_HOME/Apache/modplsql/cfg/wdbsvr.app <変更前> ;before_proc = <変更後> before_proc = sys.fix_date_format 5. 最後に、Oracle HTTP Server を再起動します。 prompt>$ORACLE_HOME/Apache/Apache/bin/apachectl start サンプル・プログラムについて 本リリースに添付されているサンプル・プログラムは、動作保証されたものではありません。 Oracle Enterprise Manager について 本リリースの Linux 版に同梱されている Oracle Enterprise Manager はサポートされません。 インストール時における root.sh 実行について Standard Edition および Enterprise Edition インストール時のみ、 root.sh を事前に修正する必要があります。 root ユーザーにて root.sh の実行を行う前に、root.sh を次のように修正してから実行して下さい。 root.sh の 102 行目 16 Oracle9i Application Server for Linux Intelリリース・ノート 修正前:RMF=/bin/rm -f 修正後:RMF="/bin/rm -f" PL/SQL ゲートウェイの使用について Oracle9iAS Portal の環境が構築されていない場合、「Proxy log On failed.」と表示されて PL/SQL ゲートウェ イ管理画面が利用できません。以下の手順でこの現象を回避できます。 $ORACLE_HOME/Apache/modplsql/cfg/wdbsvr.app をテキストエディタで開きます。 [DAD_portal30]セクションの以下の行を変更します。 (変更前)enablesso = Yes (変更後)enablesso = No この設定を行った場合、誰でも管理画面にアクセスが可能になります。運用時にはセキュリティ上、管理 画面を保護する必要がありますので「Oracle9i Application Server PL/SQL ゲートウェイの使用 リリース 1.0.2.2」(J04224-01)の P.2-6「基本(Basic)認証による管理ページの保護」を参照のうえ管理画面を保護して ください。 Oracle9iAS Containers for J2EE のインストールについて インストーラーで Core Edition を選択してインストールすると、$ORACLE_HOME/J2EE_containers ディレ クトリに Oracle9iAS Containers for J2EE コンポーネントがインストールされます。インストール終了後、 $ORACLE_HOME/J2EE_containers ディレクトリ内の oc4j.zip を Oracle ホームディレクトリ上で解凍してイ ンストールしてください。 インストールの詳細は「Oracle9i Application Server for UNIX インストレーション・ガイド リリース 1.0.2.2」の C 章「Oracle9iAS Containers for J2EE(OC4J)のインストール」を参照してください。また、参 照する際には"Oracle9iAS Containers for J2EE CD-ROM"を$ORALE_HOME/J2EE_containers ディレクトリに 読み替えてください。 Oracle9iAS SOAP のデフォルト設定におけるセキュリティ上の問題点 Oracle9iAS リリース 1.0.2.2 では、SOAP サンプルが直ぐに使用できるように、デフォルト('標準'インスト ール)の設定では、SOAP が利用可能となっています。このデフォルト・インストレーションでは、SOAP サービスのデプロイ/アンデプロイが機能が制限されていないために、特に、インターネットを介して HTTP サーバーにアクセスする場合などに、セキュリティの問題が生じる可能性があります。Oracle9iAS リリー ス 1.0.2.2 のデフォルト SOAP インストレーションを不正に利用した侵入に対処するために以下の何れかの 方法をご検討ください。 ($ORACLE_HOME は Oracle9iAS をインストールしたディレクトリを示します。また、設定ファイル内の ポート番号などは設定例であり、実際に設定されているものとは異なりますのでご注意ください) 1. SOAP を使用しない場合には、ファイル$ORACLE_HOME/Apache/Jserv/etc/jserv.conf を編集し、以下 の 4 行をコメントアウトすることによって SOAP 自体を無効にします。 ApJServGroup group2 1 1 $ORACLE_HOME/Apache/Jserv/etc/jservSoap.properties ApJServMount /soap/servlet ajpv12://localhost:8200/soap ApJServMount /dms2 ajpv12://localhost:8200/soap ApJServGroupMount /soap/servlet balance://group2/soap 2. すでに SOAP を使用しており、必要なサービスがデプロイされており、追加や変更のデプロイ/アン デプロイが発生しない場合には、以下の例の様な設定によってデプロイ/アンデプロイを無効にしま す。 SOAP 設定ファイル($ORACLE_HOME/soap/werbapps/soap/WEB-INF/config/soapConfig.xml)で、 serviceManager 要素の下に次の設定を行います。 例) 第1章 日本語環境での使用上の注意 17 <osc:serviceManager class="oracle.soap.server.impl.FileServiceManager"> <!-- Please include the appropriate absolute path with the filename --> <osc:option name="filename" value="$ORACLE_HOME/soap/webapps/soap/WEB-INF/services.dd" /> <!-- auto-deploy providerManager and serviceManager as services --> <!-- <osc:option name="autoDeploy" value="true" /> --> <osc:option name="autoDeploy" value="false" /> <== ●設定 </osc:serviceManager> 3. SOAP サービスをデプロイ/アンデプロイする為の URL を追加しアクセス制限を設定することによ って、一般のユーザーから実行ができないように設定する事ができます。設定の手順は次の通りで す。 3-1 ファイル$ORACLE_HOME/Apache/Jserv/etc/jserv.conf を以下の例の様に編集しアクセスできる パスを追加します。 例) # SOAP Entries ApJServGroup group2 1 1 $ORACLE_HOME/Apache/Jserv/etc/jservSoap.properties ApJServMount /soap/servlet ajpv12://localhost:8200/soap ApJServMount /dms2 ajpv12://localhost:8200/soap ApJServGroupMount /soap/servlet balance://group2/soap ApJServGroupMount /soap/admin balance://group2/soap 3-2 <== ●追加 追加したパスに対するアクセス制限を以下の例の様に設定をします。この例では jserv.conf に て localhost からしかアクセスができないようにしています。 例) <Location /soap/admin/ > order deny,allow deny from all allow from localhost </Location> 3-3 SOAP 設定ファイル($ORACLE_HOME/soap/werbapps/soap/WEB-INF/config/soapConfig.xml)に おいて、以下の例の様に serviceManager 要素と providerManager 要素の下部に次を設定しデプロ イ/アンデプロイを実行する URL を上記で設定した URL に設定をしてこのパスでしか実行がで きないように制限します。 例) <osc:providerManager class="oracle.soap.server.impl.FileProviderManager"> <!-- filename is the absolute path to the filename --> <osc:option name="filename" value="$ORACLE_HOME/soap/webapps/soap/WEB-INF/providers.dd" /> <osc:option name="requiredRequestURI" value="/soap/admin/soaprouter" /> <== ●追加 </osc:providerManager> <osc:serviceManager class="oracle.soap.server.impl.FileServiceManager"> 18 Oracle9i Application Server for Linux Intelリリース・ノート <!-- Please include the appropriate absolute path with the filename --> <osc:option name="filename" value="$ORACLE_HOME/soap/webapps/soap/WEB-INF/services.dd" /> <!-- auto-deploy providerManager and serviceManager as services --> <!-- <osc:option name="autoDeploy" value="true" /> --> <osc:option name="autoDeploy" value="true" /> <osc:option name="requiredRequestURI" value="/soap/admin/soaprouter" /> <== ●追加 </osc:serviceManager> Oracle9iAS Containers for J2EE のグラフィカル・ツールについて Oracle9iAS Containers for J2EE に付属する以下のツールはサポート対象外です。 − Service Console (orionconsole.jar) − Taglib-Assembler (taglibassembler.jar) − Web-App Assembler (webappassembler.jar) − EJB-Assembler (ejbassembler.jar) − Client-Assembler (clientassembler.jar) − EAR-Assembler (earassembler.jar) − EJB-Maker (ejbmaker.jar) ロードバランサを経由した SSL 接続 本リリースの Oracle9iAS Containers for J2EE ではロードバランサ(loadbalancer.jar)を経由した SSL 接続はサ ポートされません。 Oracle9iAS Containers for J2EE のデータソース設定で反映されない項目 のデータソース設定で反映されない項目 (Bug#1865617,197830) 本リリースでは data-sources.xml ファイル内に記述のある以下の 3 つのパラメータは有効にはなりません。 今後のリリースにて修正される予定となっています。 max-connect-attempts connection-retry-interval min-connection Oracle9iAS Containers for J2EE の EJB コンテナ利用時の注意点 - Entity Bean におけるトランザクション同時実行性 EJB1.1 及び 2.0 では Entity Bean におけるトランザクション・コミット後のインスタンスの状態保持(キャッ シング)に関して、以下の 3 つが規定されています。各 EJB コンテナは少なくともいずれか一つを実装する 必要があります。(Enterprise JavaBeans Specification v1.1, Chapter 9 Entity Bean Component Contract) Option A EJB コンテナはトランザクション終了後も有効なインスタンス及びその状態(値)を保持する。これに より次回のトランザクション開始時にそのインスタンスが必要な場合、データベースからの再読み込 みを行わずにインスタンスを再利用できる。またトランザクション間で値の有効性を保証するために、 データベースに対する排他的なアクセスが必要になる。すなわち同一のエンティティを表すインスタ ンスは常に 1 つのみ作成される。 Option B 第1章 日本語環境での使用上の注意 19 EJB コンテナはトランザクション終了後も有効なインスタンスを保持するが、その状態(値)は次回の トランザクション開始時にデータベースから再度読み込みを行う。トランザクション開始時に毎回読 み込みが発生するが、データベースに対するアクセスを複数のインスタンスから行うことが出来る。 この場合同一のエンティティを表すインスタンスは複数作成、実行されることができる。 Option C EJB コンテナはトランザクション終了後に有効なインスタンスを保持せず、プールにインスタンスを 戻す。次回のトランザクション実行時にそのインスタンスが必要な場合、再度 ejbActivate()メソッド等 が呼び出される。データベースに対するアクセスを複数のインスタンスから行うことが出来る。 Oracle9iAS Containers for J2EE の EJB コンテナでは Option A のみを実装しているため、特定のエンティティ を表す Entity Bean に対するアクセスは一つのクライアントからのみになります。このため複数のクライア ントが同一のエンティティを表す Entity Bean に同時にアクセスした場合、最初のクライアントのトランザ クションが終了するまで次のクライアントの操作は実行されません。Entity Bean のメソッド実行をクライ アントのトランザクションに含める必要が無い場合には、ejb-jar.xml の<trans-attribute>タグで指定される Entity Bean のトランザクション属性に NotSupported を指定することで、この同時実行性の影響を軽減する ことが出来ます。またこのような同時実行性がパフォーマンス上大きな影響を及ぼす場合、Session Bean に よる実装を検討して下さい。 Oracle9iAS Contianers for J2EE におけるステートフル Session Bean のメソッド間 でのトランザクションの共有についての問題(Bug#1831054) でのトランザクションの共有についての問題 ステートフル Session Bean のメソッド間でトランザクションを分割した場合、「No active Transaction」のエ ラーが発生することがあります。このエラーは以下の条件で発生します。 − トランザクション制御に Bean 管理区分を指定したステートフル Session Bean を使用します。 − EJB の複数メソッドで1つのトランザクションを使用します。 − EJB と異なる JavaVM 環境で動作しているクライアント・アプリケーションから EJB を呼び出します。 エラーが発生すると以下のメッセージが表示されます。 Exception in thread "main" javax.transaction.TransactionRolledback Exception:java.lang.IllegalStateException: No active Transaction ステートフル Session Bean のメソッド間でのトランザクションの共有を行う場合には以下の設定を行って ください。 $ORACLE_HOME/j2ee/home/config/rmi.xml ファイルに serialize-connection-calls="true"を追加します。 以下は修正例です。 <rmi-server port="23791" serialize-connection-calls="true"> <!-- A remote server connection example --> <!-- <server host="the.remote.server.com username="adminUser" password="123abc" /> --> <!-- path to the log-file where RMI-events/errors are stored --> <log> <file path="../log/rmi.log" /> </log> </rmi-server> この設定を行うと EJB の動作方法が変更されます。serialize-connection-calls 属性を省略または false を設定 すると EJB 内のメソッドはスレッドを起動してから実施されます。serialize-connection-calls="true"を設定す ると、EJB 内のメソッドはスレッドを起動せずに実施されます。 20 Oracle9i Application Server for Linux Intelリリース・ノート Oracle9iAS Containers for J2EE(OC4J)で で-shutdown オプションが使用できない問題 (Bug#1817227) 起動している OC4J を停止する場合、次のコマンドで停止させることができません。 java -jar admin.jar ormi://localhost/ <admin> <admin-password> -shutdown 次のいずれかの方法でこの問題を回避して下さい。 -shutdown force オプションにより停止させる。 java -jar admin.jar ormi://localhost/ <admin> <admin-password> -shutdown force OC4J サーバー起動時に-classic オプションを指定して起動する。 java -classic -jar orion.jar Oracle9iAS Containers for J2EE(OC4J)の の-restart オプションが使用できない問題 (Bug#2154504) OC4J をリスタートする場合、次のコマンドでリスタートさせることができません。 java -jar admin.jar ormi://localhost/ <admin> <admin-password> -restart 一旦 OC4J を停止させてから再び起動させて下さい。 data-sources.xml の編集について <OC4J_HOME>/config/data-sources.xml を編集した後は、OC4J を再起動させて下さい。再起動するまで、 data-sources.xml への変更は反映されません。 Oracle Wallet Manager を使用するための修正(Bug#1869196) を使用するための修正 新規 Wallet 作成等で Oracle Wallet Manager が異常終了する事があります。Oracle Wallet Manager を使用する 前に、次の修正を行なって下さい。 <ORACLE_HOME>/bin/owm スクリプトを編集し、以下を追加します。 【61 行目に追加】 THREADS_FLAG=native export THREADS_FLAG Oracle9iAS Containers for J2EE の Servlet で OCI ドライバ使用に関して (Bug#1866890) Oracle9iAS Containers for J2EE の Servlet で OCI ドライバを使用する場合、次のステップで JDBC ライブラ リを置き換えてから使用してください。 <OC4J_HOME>/lib/classes12.jar を削除します。 $ORACLE_HOME/jdbc/lib/classes12.zip を<OC4J_HOME>/lib にコピーします。 Oracle9iAS を Minimal インストールした場合の Universal Installer 起動問題 (Bug#1974129) Minimal インストールした場合、runInstaller コマンドが$ORACLE_HOME/bin に存在しません。次のコマン ドを実行して、シンボリックリンクを作成してください。 第1章 日本語環境での使用上の注意 21 ln -s $ORACLE_BASE/oui/install/runInstaller.sh $ORACLE_HOME/bin/runInstaller VALIDATEXML オプションを指定して OC4J を起動できない問題(Bug#1763194) を起動できない問題 デフォルトでインストールされた server.xml を使用して、VALIDATEXML オプション付きで OC4J サーバ ーを起動すると、以下のエラーで起動できません。 Error initializing server: Error at line 28: Element "application-server" does not allow "library" here. この場合 VALIDATEXML オプションを指定せずに起動してください。 OC4J ロード・バランサがループしメッセージ・ログを出力し続ける問題 (Bug#1964229) load-balancer.xml ファイルに記述した全ての OC4J サーバーが停止状態で OC4J ロード・バランサを起動し、 OC4J サーバーにアクセスすると、ロード・バランサがループして以下のメッセージを出力し続けます。 Unable to connect to <HostName>/<IP Address>:<Port>: connect (code=10061),removing node from list この現象が発生した場合、OC4J サーバーを起動してください 。 OC4J クラスタ化でセッション情報が共有できない問題(Bug#1951486) クラスタ化でセッション情報が共有できない問題 OC4J でクラスタ化を有効にする時に、global-web-application.xml ファイルへ<cluster-config/>を追加しても セッション状態を共有できないという問題が報告されています。この現象が発生した場合、orion-web.xml ファイルに<cluster-config/>を追加します。 FastCGI( (mod_fastcgi)でサポートする開発言語について )でサポートする開発言語について 本リリースに付属の FastCGI(mod_fastcgi)機能では、C 言語のみをサポート対象とします。 Oracle Servlet Engine で getPathInfo()メソッドが使用できない メソッドが使用できない(Bug#2067677) メソッドが使用できない Oracle Servlet Engine 使用時、サーブレットの中で getPathInfo()メソッドを使って URL から拡張パスの情報 を取得しようとすると、 「ドキュメントにデータが含まれていません。あとでやりなおすか、サーバの管理者にお尋ね下さい。」 というダイアログが表示されます。URL が拡張パスの情報を持たない場合は、ダイアログは表示されずに null が表示されます。 CD Pack に同梱されるパッチの適用について mod_plsql に関する修正の適用 Oracle9i Application Server R1.0.2.2 Update CD-ROM には、Oracle9i Application Server R1.0.2.2.2 に含まれる mod_plsql よりも新しいバージョンが含まれています。mod_plsql のセキュリティ上の脆弱性に対する修正 を含みますので、mod_plsql の機能を利用する場合は、必ずインストールしてください。インストール手順 は、Oracle9i Application Server R1.0.2.2 Update CD-ROM の次の場所の readme.html を参照して下さい。 <cdrom>/modplsql/ Oracle HTTP Server に関連した修正の適用 に関連した修正の適用 Oracle HTTP Server に対する修正が、Oracle9i Application Server R1.0.2.2 Update CD-ROM 内の次のディレク トリにあります。 <cdrom>/ohs/p1866039 22 Oracle9i Application Server for Linux Intelリリース・ノート <cdrom>/ohs/p2492925 <cdrom>/ohs/p2611482 これらのパッチを適用することで修正される主な問題は以下の通りです。 − 一台のマシンで複数の Oracle HTTP Server が起動できない問題(Bug#1774568) − 一台のマシンで複数の FastCGI プロセスが起動できない問題(Bug#1803670) − 1024 番 Port 以下で Oracle HTTP Server を起動した場合、mod_plsql のキャッシュが使用できない問題 (Bug#1817550) − Oracle HTTP Server のチャンク・ハンドリングのセキュリティ脆弱性の問題(Bug#2424256) − OpenSSL の複数のセキュリティの脆弱性について(Bug#p2492925) − Apache 1.3.27 に含まれるセキュリティの修正(Bug#p2611482) Oracle HTTP Server をご使用になる前にこのパッチを必ず適用してください。また、これらのパッチは、以 下の順序で適用する必要があります。 1. p1866039 2. p2492925 3. p2611482 パッチの詳細および適用方法に関しては、ディレクトリ内の readmeja.htm または README.txt を参照して ください。 Oracle9iAS Web Cache R2.0.0.4.0 インストール Oracle9i Application Server R1.0.2.2 Update CD-ROM には、Oracle9i Application Server R1.0.2.2.2 に含まれる Oracle9iAS Web Cache よりも新しいバージョン Web Cache R2.0.0.4.0 が含まれています。R2.0.0.4.0 におい て、Oracle9iAS Web Cache の不正リクエストに関する脆弱性に対する修正など重要な修正が含まれますの で、Web Cache 機能を利用する場合は、必ずインストールしてください。インストール手順は、次のよう になります。 Oracle9i Application Server R1.0.2.2 Update CD-ROM の次の場所の readmeja.html の記述に従い、Web Cache R2.0.0.4.0 をインストールします。 <cdrom>/webcache/webcache2.0.0.4.0_linux/ Oracle9iAS Portal のインストールについて Oracle9iAS Portal リリース 3.0.9 では「Oracle Portal Configuration Assistant」を用いたインストールはサポー トされません。OUI の「Component Configuration and Startup」画面で、「Oracle9iAS Portal」の選択を解除し てください。また、インストールした後に、Portal3.0.9.8.1patch を適用する必要があります。適用手順は「4 章 Oracle9iAS Portal」の「Oracle9iAS Portal のインストールについて」の項を参照してください。 Oracle JSP 1.1.3.1 のインストール Oracle9iAS R1.0.2.2 Update CD-ROM に含まれている Oracle JSP 1.1.3.1 には、Oracle9iAS Web Cache の JESI タグライブラリに関する修正が含まれています。以下の手順でインストールしてください。 1. ojsp_11310.zip をテンポラリディレクトリに展開します。 例:> unzip ./ojsp_11310.zip 2. bin ディレクトリと lib ディレクトリのファイルを、それぞれ$ORACLE_HOME/bin と $ORACLE_HOME/lib にコピーします。 例:> cp ./bin/* $ORACLE_HOME/bin > cp ./lib/* $ORACLE_HOME/lib 3. 手順 2 でコピーした servlet22.jar を利用するように Apache JServ Configuration Fie を修正します。 第1章 日本語環境での使用上の注意 23 例:jserv.properties ファイルの次の箇所を書き換えます。 (ここでは $ORACLE_HOME が /u01/app/oracle/product/iAS1022 と仮定します) 変更前: wrapper.classpath=/u01/app/oracle/product/iAS1022/lib/servlet.jar 変更後: wrapper.classpath=/u01/app/oracle/product/iAS1022/lib/servlet22.jar 4. jsp ディレクトリを$ORACLE_HOME/jsp にコピーします。 例:> cp -r ./jsp $ORACLE_HOME 5. jsp/demo/demo.zip をテンポラリ・ディレクトリに展開します。 6. WEB-INF と demo ディレクトリを$ORACLE_HOME/Apache/Apache/htdocs にコピーします。 修正に関する詳細および、OJSP1131 を OC4J で使用する方法については、<cdrom>/ojsp に含まれるドキュ メントを参照してください。 Oracle9i Database に JDBC Thin ドライバで接続する際の修正の適用 Oracle9i Database に JDBC Thin ドライバで接続する場合に必要となるパッチが、Oracle9i Application Server R1.0.2.2 Update CD-ROM で提供されています。適用手順に関しましては、<cdrom>/jdbc に含まれる README.txt を参照してください。 24 Oracle9i Application Server for Linux Intelリリース・ノート 第2部 第1章 日本語環境での使用上の注意 25 第2章 Oracle9i Application Server 原典情報: Oracle9i Application Server Release Notes Release 1 (v1.0.2.2) for AIX-Base Systems, Compaq Tru64 UNIX, HP 9000 Series HP-UX, Linux Intel, and Sun Solaris Intel(A90377-01) はじめに この章の目的 この章では、Oracle9i Application Server for UNIX リリース 1.0.2.2 のコンポーネントについて、ドキュメン トで説明されている機能と実際との違いについて説明します。 製品名称変更 今回のリリースでは、製品名が次のように変更されています。 以前の名称 新しい名称 Oracle8i JVM Oracle Enterprise Java Engine(EJE) Oracle Forms Service Oracle9iAS Forms Services Oracle LDAP Developer’s kit Oracle LDAP Developer Kit Oracle Database Client Developer's Kit Oracle Database Developer Kit Oracle XML Developer's Kit Oracle XML Developer Kit Oracle Portal Oracle9iAS Portal Oracle Portal-to-Go Oracle9iAS Wireless Oracle Database Cache Oracle9iAS Database Cache Oracle Web Cache Oracle9iAS Web Cache Oracle Reports Service Oracle9iAS Reports Services Oracle Discoverer Oracle9iAS Discoverer Oracle Transparent Gateways Oracle Gateways Oracle eMail Server Oracle9iAS Email Oracle Unified Messaging Oracle9iAS Unified Messaging Oracle9i Application Server のインターネット・アプリケーションおよびそのサブコンポーネントは、次のと おりです。 Oracle HTTP Server powered by Apache Apache JServ、mod_jserv Perl インタプリタ、mod_perl mod_plsql、mod_ssl Dynamic Monitoring Service(DMS) FastCGI Oracle9i Application Server Containers for J2EE Oracle9i Application Server Servlet Container 26 Oracle9i Application Server for Linux Intelリリース・ノート Oracle9i Application Server EJB Container Oracle9i Application Server JSP Container Oracle Business Components for Java Oracle9i Application Server Object Caching Services for Java *1 Oracle PL/SQL Oracle PL/SQL Server Pages(Oracle PSP) Oracle9i Application Server Forms Services Oracle9i Application Server Developer Kits Oracle Database Developer Kit Oracle XML Developer Kit Oracle9i Application Server Portal Oracle9i Application Server Wireless Oracle9i Application Server Cache Oracle9i Application Server Web Cache Oracle9i Application Server Database Cache Oracle9i Application Server Business Intelligence Oracle9i Application Server Reports Services Oracle9i Application Server Discoverer(Discoverer Viewer および Discoverer Plus を含む)*2 Oracle Enterprise Manager Oracle Advanced Security Oracle9i Application Server Single Sign-On Oracle9i Application Server Integration Oracle Workflow *1 Oracle9i Application Server InterConnect *1 Oracle9i Application Server SOAP Oracle Internet Directory *1 Oracle9i Application Server Email *1 Oracle9i Application Server Unified Messaging *1 Oracle Internet File System *1 *1 本リリースではサポートされません。 *2 2001 年 10 月 1 日現在、サポートされていません。 動作保証に関する情報 JDK/JRE の動作保証 オラクル社では、mod_jserv を使用した Java アプリケーションの構築および運用にあたり、JDK/JRE 1.1.8 および JDK/JRE 1.3.x の両方で動作を保証しています。今回のリリースでは、Java クラス・ライブラリ(た とえば、Oracle Business Components for Java、Oracle XML Developer's Kit)は、すべて JDK 1.1.8_10 でコン パイルされたものを出荷しています。これらのコンパイル済みクラスは、サポートされている Java JRE の 両バージョンで動作することが保証されています。これらを再コンパイルしないでください。 JDK 1.3 を使用した場合の動作保証は、第 1 章「ドキュメントの修正および補足事項」を参照してください。 第2章 Oracle9i Application Server 27 新機能 この項では、今回のリリースの新機能を、アプリケーション分野ごとに説明します。 インターネット・アプリケーションの新機能 Oracle9i Application Server Containers for J2EE Oracle9iAS Containers for J2EE は、 JDK で実行される純粋な Java ランタイムです。 次の機能が提供されます。 すべての J2EE 1.2 API のサポート。Enterprise JavaBeans(EJB)1.1、Servlet 2.2、Java ServerPages(JSP) 1.1、JTA 1.0.1、JNDI 1.2、JMS 1.0、JDBC 2.0 および JavaMail 1.1.2 が含まれます。 J2EE 1.3 API の部分的なインプリメント。Servlet 2.3 および EJB 2.0 が含まれます。 XML ベースの設定。 標準 J2EE EAR 、WAR または EJB JAR ファイルを使用した Java のデプロイ。 標準の Java 開発ツールおよびプロファイリング・ツールのサポート。 コンポーネント cSOAlustering、ロード・バランシングおよびアプリケーションの状態のレプリケーシ ョンによる信頼性およびスケーラビリティの実現。 Oracle9iAS Containers for J2EE の現在のリリースは、JDK バージョン 1.2.2_07 または 1.3x とともに使用した 場合に、特に動作が安定しています。 Oracle9iAS Containers for J2EE は、oc4j.zip という名前の ZIP ファイルとして提供されています。このファ イルを解凍し、README の手順に従います。 次の J2EE コンポーネントおよびサービスが存在します。 Java Servlet Servlet 2.3 の完全なサポート Tomcat Servlet エンジンとの 100%の互換性 フィルタの完全なサポート 完全な WAR ファイル・ベースのデプロイ オート・コンパイルおよびデプロイ ステートフルなフェイルオーバーおよびクラスタ配布 JavaServer Pages JSP 1.1 の完全なサポート シンプル、ボディ、パラメータ化、およびコラボレーション・タグ JSP キャッシュ・タグ メール、検索およびその他のタグ 完全な WAR ファイル・ベースのデプロイ Enterprise JavaBeans (EJB) EJB 1.1 の完全なサポートおよび EJB 2.0(Public Draft)の大部分のサポート Session Bean Entity Bean(完全なコンテナ管理の永続性(CMP)および Bean 管理の永続性(BMP)) Message-Driven Bean 28 Oracle9i Application Server for Linux Intelリリース・ノート 基本および拡張 O-R マッピングのサポート EJB スタブの動的生成 完全な EAR ファイルベースのデプロイ 簡単かつ自動的な EJB アプリケーションのデプロイ オート・デプロイ 設定のカスタマイズの簡易化 ホット・デプロイ Java Database Connectivity Services( (JDBC) ) JDBC による Oracle データベースへのアクセス Oracle JDBC-OCI ドライバ Oracle thin JDBC ドライバ JDBC 2.0 の完全なサポート データ型の完全なサポート JDBC 2.0 接続プーリング 拡張機能 Oracle8.0、8i、9i のサポート Merant JDBC ドライバとの動作保証 Java( (SQLJ)インプリメンテーションにおける埋込み )インプリメンテーションにおける埋込み SQL Oracle9iAS Containers for J2EE では、標準 ANSI SQLJ が実装されているため、(ほとんどの場合におい て)JDBC API でのコーディングを必要とせず、動的 SQL を直接 SQLJ 文として記述することができま す。SQLJ のインプリメンテーションでは、未定義の ResultSetIterator から fetch コマンドが実行可能 で、イテレータ宣言を省略できます。 さらに、JDBC のプログラムおよびロジックを 1 対 1 で SQLJ に変換可能です。直接、Oracle JDBC の コードの生成が可能で、SQLJ プロファイルを生成またはカスタマイズする必要はありません。対応す る Oracle JDBC の拡張機能もサポートされています。 インフラストラクチャ・サービス Oracle9iAS Container for J2EE には、次のインフラストラクチャ・コンポーネントが含まれています。 Java Naming and Directory Interface(JNDI) Java Transaction API(JTA) Java Message Service(JMS) Java Security Services RMI および HTTP トンネル・サービス Web サーバーから JSP/ Servlet エンジンへの接続 JSP/ Servlet から EJB および EJB から EJB への接続 HTTP と HTTP(S)のトンネル 設定、配布および管理 Oracle9iAS Container for J2EE 設定は、XML をベースに標準化されており、サーバー、汎用およびアプ リケーション/コンポーネントの分野で管理されています。 第2章 Oracle9i Application Server 29 サーバー設定ファイル: server.xml、web-site.xml、principals.xml、data-sources.xml、rmi.xml、jms.xml、 load-balancer.xml、default-web-site.xml 汎用 J2EE アプリケーションおよびコンポーネント設定ファイル: web.xml、ejb-jar.xml、 application.xml、application-client.xml Oracle9iAS Container for J2EE 固有のアプリケーションおよびコンポーネント設定ファイル(.xml) 配布プロセスを簡単にするために、次のツールが用意されています。 WAR ファイル作成ツールにより、JSP、サーブレット、タグ・ライブラリおよび静的コンテンツ から WAR ファイルを作成します。 EJB 作成ツールにより、EJB Home、リモート・インタフェース、デプロイメント・ディスクリ プタおよび EJB 自体を標準の JAR ファイルにパッケージ化します。 EAR ファイル作成ツールにより、WAR ファイルおよび EJB JAR から標準の EAR ファイルを作 成します。 タグ・ライブラリ作成ツールにより、JSP タグ・ライブラリから標準の JAR ファイルを作成しま す。 システム管理 システム管理は、コマンドライン・ツールを使用して、リモートおよびローカルで実行できます。 Oracle9iAS リリース 1.0.2.2 付属の管理コンソールは、次のリリースの機能で提供されるテクノロジの プレビュー版です。このコンソールは、本番環境での使用はサポートされていません。Oracle9iAS リ リース 2 には、Oracle Enterprise Manager と完全に統合された新しい管理コンソールが含まれる予定で す。 システム管理および開発を支援するために、ロギング・サービスが用意されています。Web アクセス、 アプリケーション、サーバー、および RMI や JMS のアクティビティをログに記録可能です。 今回のリリースでは、Oracle9iAS 次の機能を使用することにより、システム管理が簡単になり、信頼 性が向上しています。 ロード・バランシングおよび可用性機能 HTTP サーバーまたは Oracle9iAS J2EE Container レベルでのロード・バランシング サード・パーティー製のロード・バランシング製品との統合 No single point of failure 接続の自動再ルーティング 自動障害検出および再起動 透過的なアプリケーションのフェイルオーバー、ステートフルおよびステートレスなクラスタの サポート クラスタ機能 IP ベースの静的マルチキャスト Web プレゼンテーションおよび Web サーバーのフェイルオーバー セッションの状態のレプリケーションおよびクラスタのフェイルオーバー 透過的なアプリケーションのフェイルオーバー(TAF)およびデータベースの状態管理 30 Oracle9i Application Server for Linux Intelリリース・ノート Oracle HTTP Server powered by Apache Apache JServ プロセスに関する注意 Oracle9i Application Server のサイトでサポートされている Apache JServ プロセスの最大数は、Apache 配布時のデフォルトの最大数 25 から Oracle9i Application Server の最大数 128 に増加しました。この値 は、実行時に設定できません。 Oracle9i Application Server のサード・パーティー製コンポーネントのサポート すべてのサード・パーティー製コンポーネント Oracle9i Application Server の一部は、サード・パーテ ィーのライセンスを受けてオラクル社によって販売されています(サード・パーティー製コンポーネ ントと呼ばれます)。これには、Apache Software Foundation のライセンスを受けた Apache Web サー バー バージョン 1.3.19 が含まれます。オラクル社は、これらのサード・パーティー製コンポーネント を Oracle9i Application Server 製品の一部として販売するものであり、ここに明記されている場合を除 き、サード・パーティー製コンポーネントに対しても標準の製品サポートを行います。これらのサポ ートの詳細については、オラクル社のテクニカル・サポート・ポリシーに定義されています。 注意: 注意 オラクル社では、Oracle9i Application Server 付属のサード・パーティー製コンポーネントのバ ージョンのみサポートするものであり、インターネット上で無料で入手可能であるその他のバ ージョンなどは、オラクル社のサポート対象外のため、ご注意ください。 オラクル社は、サード・パーティー製コンポーネントの拡張を、コンポーネントのライセンス元であ るサード・パーティーに要請する場合があります。ただし、オラクル社にはその義務はありません。 さらに、サード・パーティー製コンポーネント以外のコンポーネント(Oracle コンポーネント)につ いても、問題が Oracle コンポーネントのみで構成される環境で再現できない限り、技術サポートの要 請は受け付けません。 Apache モジュール オラクル社では、Apache Web サーバー(Apache モジュールと呼ばれる)の拡 張機能を提供し、Oracle9i Application Server の一部としての Apache Web サーバーの機能を強化してい ます。このリリース・ノートでは、オラクル社によって提供される Apache モジュールを Oracle Apache モジュールと呼びます。 このリリースでは、次の Oracle Apache モジュールをサポートしています。 Oracle Apache モジュール 説明 http_core Apache のコア機能。 mod_access ホスト・ベースのアクセス制御。クライアントのホスト名ま たは IP アドレスに基づいたアクセス制御を提供します。 mod_actions ファイル・タイプ/方式ベースのスクリプト実行。メディア・ タイプまたはリクエスト方式に基づき、CGI スクリプトに使 用されます。 mod_alias 別名とリダイレクト。ホスト・ファイル・システムの様々な 部分をドキュメント・ツリーにマッピングする際、および URL のリダイレクトに使用されます。 mod_auth テキスト・ファイルを使用したユーザー認証。 mod_auth_anon 匿名のユーザー認証(FTP 方式)。 mod_autoindex 自動ディレクトリ・リスト。 mod_cgi CGI スクリプトの実行。mime タイプが application/x-httpd-cgi であるファイルをすべて処理します。 mod_define 設定の定義。 第2章 Oracle9i Application Server 31 32 Oracle Apache モジュール 説明 mod_digest MD5 認証。MD5 ダイジェスト認証を使用したユーザー認証 に使用されます。 mod_dir 基本ディレクトリ処理。後続のスラッシュのリダイレクトお よびディレクトリのインデックス・ファイルの処理に使用さ れます。 mod_env 環境情報の CGI スクリプトへの受渡し。環境変数を CGI/SSI スクリプトに受け渡すために使用されます。 mod_expires Expires: ヘッダーのリソースへの適用。ユーザー指定の条件 に合わせた Expires ヘッダーの生成に使用されます。 mod_fastcgi Fast CGI サーバーのプールへのリクエストのルーティング。 mod_headers リソースへの任意の HTTP ヘッダーの追加。ヘッダーは、マ ージ、置換または削除が可能です。 mod_include サーバー解析のドキュメント。サーバーによって解析される HTML ドキュメントに使用されます。 mod_info サーバー設定情報。インストールされたすべてのモジュール および設定ファイル内のディレクティブなど、サーバー設定 の全般的な概要を提供します。 mod_jserv サーブレット・エンジンとの通信。 mod_log_config mod_log_common の代替手段として使用可能なユーザー設定 可能なロギング。共通ログ・フォーマットまたはユーザー指 定のフォーマットを使用した、サーバーに対するリクエスト のロギングに使用されます。 mod_log_referer ドキュメントの参照のロギング。サーバー上のドキュメント を参照するドキュメントのロギングに使用されます。 mod_mime ファイル拡張子を使用したドキュメント・タイプの判別。 mod_mime_magic "マジック・ナンバー"を使用したドキュメント・タイプの判 別。内容を数バイト調べることによってファイルの MIME タ イプを判別するために使用できます。 mod_negotiation コンテンツのネゴシエーション。 mod_ose Oracle Servlet Engine(OSE)におけるステートフルな Java サ ーブレットおよび PL/SQL サーブレットへの URL の委任。 mod_oprocmgr サーブレット・エンジンに対するプロセス管理および障害検 出の提供。 mod_perl Perl で Apache モジュールを作成するためのサポート。 mod_plsql PL/SQL のサポート。 libproxy (mod_proxy) キャッシング・プロキシの機能。HTTP 1.0 キャッシング・プ ロキシ・サーバーに使用されます。 mod_rewrite 正規表現を使用した、URL からファイル名への強力なマッピ ング。ルール・ベースの書換えエンジンを提供し、要求され た URL をすばやく書き換えます。 mod_setenvif クライアント情報に基づいた環境変数の設定。リクエストの 属性に基づいて、環境変数を設定する機能に使用されます。 mod_so 実行時のモジュールのロードのサポート。起動時または再起 動時にサーバーに実行コードおよびモジュールをロードする ために使用されます。 Oracle9i Application Server for Linux Intelリリース・ノート Oracle Apache モジュール 説明 mod_speling URL のマイナーな入力ミスの自動修正。大文字入力を無視し、 1 回以下のスペル・ミスを認容することにより、ユーザーが 入力した URL のスペル・ミスを修正します。 mod_ssl SSL のサポート。 mod_status サーバー・ステータスの表示。サーバー管理者がサーバーの 稼動状況を確認できるよう、現在のサーバーの統計を示す HTML ページを読みやすい形式で表示します。 mod_unique_id 各リクエストに対する一意のリクエスト識別子の生成。非常 に特別な状況下で、全リクエストにわたって一意であると保 証されたマジック・トークンを各リクエストに提供します。 mod_userdir ユーザーのホーム・ディレクトリ。ユーザー固有のディレク トリに使用されます。 mod_usertrack Cookie を使用したユーザーのトラッキング。 mod_vhost_alias 動的に設定されるマス仮想ホスティングのサポート。 Oracle9i Application Server に含まれているこれ以外の Oracle Apache モジュールは元のまま提供されて おり、一切保証またはサポートはありません。Apache Software Foundation またはお客様を含め、オラ クル社以外のソースによる Apache モジュールについては、オラクル社のサポートはありません。 Apache モジュールにより、Apache のイベント処理が変更されます。そのため、オラクル社では、サ ポートを提供する際、サポートされているモジュールのみで構成された Apache 設定を使用して問題 が再現可能であることを求める可能性があります。オラクル社では、サポートされているモジュール のみで構成される設定で再現可能な問題に対し、バグ修正サポートのみを提供します。 また、オラクル社では、サポートされている Apache の設定を使用している場合のみ、付属の Perl イ ンタプリタの使用をサポートします。 mod_perl DBI/DBD-Oracle および Apache::DBI のビルド UNIX プラットフォームで mod_Perl DBI/DBD-Oracle および Apache::DBI のビルド、インストー ルおよびテストを行うには、次のステップを実行します。ただし、本リリースでは、mod_perl DBI/DBD-Oracle および Apache::DBI を用いたデータベース接続は、サポート対象外とさせていただき ます。Perl インタプリタ本体は、サポート対象です。 1. ご使用の環境で、次のソフトウェアが使用可能であることを確認します。 C コンパイラ GNU Make バージョン 3.77 Perl バージョン 5.005_03 2. 必須のソフトウェアを正しく検出できるよう PATH 環境変数が設定されていることを確認しま す。 3. 製品 CD から Oracle9i Application Server をインストールします。このバージョンでは、mod_perl 1.21 が組み込まれています。このインストールでは、次のモジュールは含まれません。 Apache::DBI Perl DBI Perl DBD-Oracle 4. 正しい Perl バイナリを実行するよう、PATH 環境変数を設定します。たとえば、次のようになり ます。 prompt> setenv ORACLE_HOME /private1/iAS10 第2章 Oracle9i Application Server 33 prompt> setenv PATH ${ORACLE_HOME}/Apache/perl/bin:${PATH} 注意: 注意: これ以外の方法もあります。次の表の環境変数をご使用のプラットフォームに合わせて設定し、 mod_perl DBI/DBD-Oracle が機能するようにします。 表 1-3 5. プラットフォーム 環境変数 Linux LD_LIBRARY_PATH すべてのプラットフォーム PERL5LIB PERL5LIB 環境変数を次のように変更します。 prompt> setenv PERL5LIB ${ORACLE_HOME}/Apache/perl/lib/5.00503:${ORACLE_HOME}/Apache/ perl/lib/site_perl/5.005 6. 次の Web サイトに移動します。 http://www.cpan.orFg/modules/by-module 7. 次のモジュールをダウンロードします。 DBI バージョン 1.14 DBD::Oracle バージョン 1.06 Apache::DBI バージョン 0.87 8. DBI パッケージを解凍し、README の手順をよく読んでモジュールのビルド、テストおよびイ ンストールを行います。 9. DBD-Oracle モジュールでは、ドライバを正しくビルドするために、Oracle ソフトウェアのパス ($ORACLE_HOME/lib、$ORACLE_HOME/rdbms/lib など)を設定する必要があります。ご使用 の環境で、次の情報が存在していることを確認してください。 a. 有効な Oracle9i Application Server または Oracle データベースを指すよう、ORACLE_HOME 環境変数を設定します(たとえば、8.1.6、8.1.7 など)。 b. 有効な Oracle SID を指すよう、ORACLE_SID 環境変数を設定します。 c. 次の表の環境変数が、ご使用のプラットフォームで対応するファイルを指していることを検 証します。 プラットフォーム 環境変数 ライブラリ・ パス Linux LD_LIBRARY_PATH libclntsh.so これらのファイルを指すようにするには、ご使用のシステムで該当する環境変数の $ORACLE_HOME/lib を設定します。 d. 各国語サポート(NLS)を使用している場合、ORA-01019 エラーを回避するよう、ORA_NLS および ORA_NLS33 環境変数が設定されていることを確認してください。 e. オプションで、ORACLE_USERID 環境変数を設定します。この環境変数を設定しない場合、 テストでは、デフォルトで scott/tiger が使用されます。 10. DBD-Oracle パッケージを解凍し、README の手順をよく読んでモジュールのビルド、テストお よびインストールを行います。テストを正しく実行するには、データベースが稼働中である必要 があります。 11. Apache::DBI パッケージを解凍し、README の手順をよく読んでモジュールのビルドおよびイン ストールを行います。このモジュールに関しては、テストはまだ用意されていません。このステ ップにより、Apache AuthDBI.pm および DBI.pm モジュールがインストールされます。 12. $ORACLE_HOME/Apache/Apache/conf/httpd.conf を次のように編集します。 34 Oracle9i Application Server for Linux Intelリリース・ノート a. 次の行のコメントを解除します(先頭の#記号を削除します)。 PerlModule Apache::DBI これにより、Apache::DBI の永続データベース接続の使用が可能になります。詳細は、Apache::DBI の README の手順を参照してください。 注意: 注意: httpd.conf は、Apache サーバーの主要な設定ファイルです。このファイルの先頭に記 述されている指示を必ずお読みください。 13. 永続的接続をテストします。例として、次のステップを実行して startup.pl からの接続をテストし ます。 a. httpd.conf ファイルに次の行を追加します。 PerlRequire <absolute path to ApacheDBI's startup.pl script> b. startup.pl 接続コールを次のように変更します。 Apache::DBI->connect_on_init('dbi:Oracle:',"scott/tiger", ''); c. Oracle HTTP Server を再起動します。 prompt> $ORACLE_HOME/Apache/Apache/bin/apachectl start d. 接続が正しく取得されたことを Oracle HTTP Server のログで確認します。 注意: 注意: Oracle HTTP Server のログに、ORACLE_HOME 環境変数が設定されていないという メッセージが出力されている場合、次の行を httpd.conf ファイルに追加します。 PerlSetEnv ORACLE_HOME "<absolute path to Oracle Home>" 次のサンプル Perl スクリプトを使用して、接続をテストすることも可能です。 ##### Perl script start ###### use DBI; print "Content-type: text/plain¥n¥n"; $dbh = DBI->connect("dbi:Oracle:", "scott/tiger", "") ||die $DBI::errstr; $stmt = $dbh->prepare("select * from emp order by empno")|| die $DBI::errstr; $rc = $stmt->execute() || die $DBI::errstr; while (($empno, $name) = $stmt->fetchrow()) { print "$empno $name¥n"; } warn $DBI::errstr if $DBI::err; die "fetch error: " . $DBI::errstr if $DBI::err; $stmt->finish() || die "can't close cursor"; $dbh->disconnect() || die "cant't log off Oracle"; ##### Perl script End ###### 既知の問題点 この項では、リリース 1.0.2.2 の既知の問題点について説明します。 Oracle9i Application Server を使用する前に、この項の各アイテムを読み、このリリースの制限事項および制 約事項について理解してください。追加作業が必要になる場合もあります。各項目は、ソリューション分 野別に分類されています。 インストールに関する問題 Oracle9i データベースの初期化パラメータの手動設定の必要性 o7_dictionary_accessibility パラメータが FALSE に設定されている場合、Oracle9i Application Server の一部の コンポーネントは、Oracle9i データベースと対話処理を行う際に正しく機能しない可能性があります。 Oracle9i データベースの init.ora ファイルに次の行を追加してください。 第2章 Oracle9i Application Server 35 o7_dictionary_accessibility=TRUE Oracle Universal Installer における不正なインストール・ステータスの表示 コンポーネントのインストールの完了後に、Oracle Universal Installer によって「in progress」ステータスが 表示される場合があります。この状況は、Database Cache および Portal の構成ツールのインストール時に発 生し、1 回目の試行を取り消すと解決されます。2 回目の試行では、インストールの完了ステータスが正し く表示されます。 インストール時のエラー Oracle9i Application Server をインストールする前に、PATH、ORACLE_HOME および LD_LIBRARY_PATH 環境変数がコマンド・シェル初期化ファイル(たとえば、csh の場合.cshrc、bash の場合.bashrc または ksh の場合$ENV など)で設定されていないことを確認してください。 初期化ファイルにこれらの変数のいずれかが設定されていると、Oracle9i Application Server のインストール が失敗します。ログイン初期化ファイル(sh の場合.profile、csh の場合.login、ksh の場合.kshrc または bash の場合.bash_login)にこれらの環境変数のいずれかが設定されていても、Oracle9i Application Server のイン ストールには影響はありません。 インストール後に redo ログを開いた際のエラー Oracle9i Application Server のシード・データベースのインストール後に、ユーザー・ダンプの場所に次のエ ラーが出力される場合があります。 ORA-00313: open failed for members of log group 1 of thread 1 ORA-00312: online log 1 thread 1: '<redo log file_name>' ORA-27037: unable to obtain file status これらは深刻なエラーではありません。redo ログは、シード・データベース作成の将来のステップで作成 されます。 Standard Edition のキャラクタ・セット Oracle9i Application Server Standard Edition(SE)の一部として提供されている初期データベースでは、 US7ASCII キャラクタ・セットが使用されています。インストール後にデータベースのキャラクタ・セット を変更するには、sqlplus を使用してデータベースに接続し、次の SQL 文を発行します。 SQL> alter database character set <character set> 詳細は、『Oracle8i NLS ガイド』を参照してください。 インストール時の root ユーザーのログイン Oracle9i Application Server のインストール時に、root ユーザーでログインする際、次のコマンドを使用しな いでください。 $ su su コマンドでは環境変数が正しく設定されないため、インストールが失敗する可能性があります。かわり に、別のセッションで root としてログインするか、または次のコマンドを使用してください。 $ su -root 非対話モードのインストール用レスポンス・ファイルの設定ガイド Oracle9iAS リリース 1.0.2.2 の CD-ROM には、各インストール・オプションごとに 1 つずつ、合計 3 つの Oracle Universal Installer 用のレスポンス・ファイルが含まれています。ご使用のインストール・オプション に合せて、レスポンス・ファイルを編集する必要があります。 レスポンス・ファイルを使用するには、そのファイルを Oracle9i Application Server の CD-ROM からご使用 のシステムのドライブへコピーします。レスポンス・ファイルは、Disk#1 の/stage/Response ディレクトリ に存在します。 36 Oracle9i Application Server for Linux リリース・ノート Minimal Edition : oracle.iappserver.iapptop.Minimal.rsp Standard Edition : oracle.iappserver.iapptop.Standard.rsp Enterprise Edition : oracle.iappserver.iapptop.Enterprise.rsp 任意のテキスト・エディタを使用して、使用するレスポンス・ファイルを、ご使用のシステム固有の情報 が反映されるように編集します。各ファイルには、レスポンス・ファイルを正しく設定するための説明が 含まれています。 このドキュメントは、レスポンス・ファイルの編集用のリファレンスとしてご使用ください。ここでは、 前述の各レスポンス・ファイルの、非対話モードでインストールする場合に関連のあるセクションおよび 値の例を示しています。次のセクションについて説明します。 全インストール・タイプ共通(Minimal Edition、Standard Edition および Enterprise Edition) Minimal Edition および Standard Edition インストール・タイプのみ Standard Edition インストール・タイプのみ Enterprise Edition インストール・タイプのみ その他の構成ツール root.sh の実行 必要な変更箇所の数: Enterprise Edition: パラメータが 12 箇所、さらに Portal Configuration Assistant 固有のエントリが 7 箇所 Standard Edition: パラメータが 13 箇所、さらに Portal Configuration Assistant 固有のエントリが 7 箇所 Minimal Edition: パラメータが 10 箇所、さらに Portal Configuration Assistant 固有のエントリが 7 箇所 注意: 注意: UNIX_GROUP_NAME パラメータは、インベントリ・ディレクトリに設定する UNIX グループです。 インストーラのコマンドラインで、インベントリの場所をローカル・ディレクトリに指定した場合、 この値を入力する必要はありません。 FROM_LOCATION_CD_LABEL パラメータは、複数の CD を使用したインストール時にのみ使用し てください。値は、"Oracle9i Application Server 1.0.2.2.0"です。 全インストール・タイプ共通(Minimal Edition、 、Standard Edition および Enterprise Edition) ) 全インストール・タイプ共通( 合計: 9 箇所 [SESSION] #Parameter: UNIX_GROUP_NAME #Type: String #Description: Unix group to be set for the inventory directory. Valid only in Unix platforms. #Example : UNIX_GROUP_NAME = "install" UNIX_GROUP_NAME=<Value Unspecified> #Parameter: FROM_LOCATION #Type: String #Description: Complete path of the products.jar. #Example : FROM_LOCATION = "/net/tools-nfs/inst_ias/solaris/ias10220/production/Disk1/stage/ products.jar" FROM_LOCATION="/net/tools-nfs/inst_ias/solaris/ias10220/production/Disk1 /stage/products.jar" 第2章 Oracle9i Application Server 37 #Parameter: FROM_LOCATION_CD_LABEL #Type: String #Description: This variable should only be used in multi-CD installations. It includes the label of the Compact Disk where the file "products.jar" exists. The label can be found in the file "disk.label" in the same directory as products.jar. #Example : FROM_LOCATION_CD_LABEL = "CD Label" FROM_LOCATION_CD_LABEL=<Value Unspecified> #Parameter: ORACLE_HOME #Type: String #Description: Complete Location of the Oracle Home. #Example : ORACLE_HOME = "C:¥OHOME1" ORACLE_HOME="/private2/oracle/iasse2" [oracle.webdb.apache_3.0.9.8.0] #Parameter: user_input2 #Type: StringList #Description: This variable holds the input from dialog2. user_input2={"portal30", "portal30", "t816.world"} #Parameter: user_input1 #Type: StringList #Description: This variable takes the input from the first dialog. user_input1={"portal30_sso", "portal30_sso", "t816.world"} [portaltogo.server_1.1.0.0.0] #Parameter: SYSTEM_PASSWORD #Type: String #Description: This will hold the panama SYSTEM user password SYSTEM_PASSWORD="manager" #Parameter: SRV_USER #Type: StringList #Description: This will hold the Portal-to-Go User and Password SRV_USER={"scott", "tiger"} #Parameter: SRV_HOST #Type: StringList #Description: This will hold the Portal-to-Go host variables SRV_HOST={"london.us.oracle.com", "2021", "l816"} 38 Oracle9i Application Server for Linux リリース・ノート Minimal Edition および Standard Edition インストール・タイプのみ 合計: 1 箇所 [oracle.iappserver.iapptop_1.0.2.2.0] #Parameter: startupProcesses #Type: StringList #Description: StringList of processes to configure and start automatically in iAS Installation. This variable is used only in Enterprise Edition installs (in other install types, all processes are automatically started). Possible values that can be included in the StringList are the strings "Oracle HTTP Server in Non-SSL mode", "Oracle9iAS Portal". If the StringList is empty, no processes are started. For example, the #StringList {"Oracle HTTP Server in Non-SSL mode", "Oracle9iAS Portal"} would configure and start up those products. startupProcesses={"Oracle HTTP Server in Non-SSL mode", "Oracle 9iASPortal"} Standard Edition インストール・タイプのみ 合計: 3 箇所 [oracle.assistants.dbca_8.1.7.0.0] #Parameter: s_globalDBName #Type: String #Description: Global Database Name s_globalDBName="m10ee2.world" #Parameter: s_mountPoint #Type: String #Description: Database file location: directory for datafiles, control files, redo logs. s_mountPoint="/private2/oracle/iasee2/dbs" #Parameter: s_dbSid #Type: String #Description: Value that $ORACLE_SID will be set to. s_dbSid="m10ee2" Enterprise Edition インストール・タイプのみ 合計: 3 箇所 [oracle.iappserver.iapptop_1.0.2.2.0] #Parameter: startupProcesses 第2章 Oracle9i Application Server 39 #Type: StringList #Description: StringList of processes to configure and start automatically in iAS Installation. This variable is used only in Enterprise Edition installs (in other install types, all processes are automatically started). Possible values that can be included in the StringList are the strings "Oracle9iAS Database Cache" , "Oracle9iAS Forms and Reports Services" , "Oracle HTTP Server in Non-SSL mode" , "Oracle9iAS Web Cache" , "Oracle9iAS Portal" , "Oracle9iAS Discoverer", "Oracle Management Server". If the StringList is empty, no processes are started. For example, the #StringList {"Oracle9iAS Database Cache" , "Oracle9iAS Forms and Reports Services" ,"Oracle HTTP Server in Non-SSL mode", "Oracle9iAS Web Cache", "Oracle9iAS Portal","Oracle9iAS Discoverer","Oracle Management Server"} [oracle.icache.icacheca_1.0.2.2.0] #Parameter: sl_dbaReturn #Type: StringList #Description: Name and Password of SYSDBA user on origin DB. sl_dbaReturn={"sys", "change_on_install"} #Parameter: sl_connectStringReturn #Type: StringList #Description: Fields are: Name of origin DB machine, Port number of listener on origin (often 1521), Service name of origin DB. sl_connectStringReturn={"london.us.oracle.com", "2021", "l816.world"} Portal Configuration Assistant のみ(全インストール・タイプ共通) 合計: 7 箇所 注意: 注意: レスポンス・ファイルで次の 4 つの表領域名に値が指定されていない場合、OPCA ではデフォルト 値が使用されます。該当する表領域名と値は次のとおりです。使用する値がこれらと同じである場 合、レスポンス・ファイルで指定する必要はありません。 tmp_tablespace="TEMP" log_tablespace="USERS" doc_tablespace="USERS" def_tablespace="USERS" [oracle.webdb_3.0.9.8.0] #Parameter: silent #Type: Boolean #Description: This variable is true if silent mode is on. It is passed 40 Oracle9i Application Server for Linux リリース・ノート to the wwv component. silent=true [oracle.webdb.apache_3.0.9.8.0] #Parameter: opca_tnsconnect #Type: String #Description: tns connect string which is required by Oracle Portal Config Assistant. This should be in <machine name>:<port>:<sid> format. opca_tnsconnect="london.us.oracle.com:2021:l816" [oracle.webdb.wwv_3.0.8.9.8] #Parameter: sys_password #Type: String #Description: System Password for Portal's OPCA sys_password="change_on_install" #Parameter: temporary_tablespace #Type: String #Description: Temporary Tablespace for Portal's OPCA temporary_tablespace="TEMP" #Parameter: logging_tablespace #Type: String #Description: Logging tablespace for Portal's OPCA logging_tablespace="USERS" #Parameter: document_tablespace #Type: String #Description: Document Tablespace for Portal's OPCA document_tablespace="USERS" #Parameter: default_tablespace #Type: String #Description: Default Tablespace for Portal's OCPA default_tablespace="USERS" その他の構成ツール DBCA および Net Configuration Assistant これらのツールは、Oracle9i Application Server を非対話モードで実行する場合も標準モードで実行されるた め、レスポンス・ファイルは不要です。 Oracle9iAS Database Cache Configuration Assistant このツールのユーザー入力は、Enterprise Edition のレスポンス・ファイル内に存在する前述のコンポーネン ト[oracle.icache.icacheca_1.0.2.2.0]の 2 つのパラメータ、sl_dbaReturn および sl_connectStringReturn パラメータによって指定されます。 第2章 Oracle9i Application Server 41 Oracle Internet File System Configuration Tool 製品に付属のファイル・テンプレート IfsConfig.properties を使用します。これは、インストール後 に行う作業です。この構成ツールは Oracle9i Application Server のインストール時には実行されません。 Oracle Management Server 非対話モードは、Oracle9i Application Server リリース 1.0.2 ではサポートされていません。Oracle9i Application Server 2.0 でサポートされる予定です。 root.sh の実行 show_rootsh_confirmation=false パラメータを設定し、root.sh をインストール後に実行することが 可能です。/etc/oratab がインストーラ・プロセスの所有者によって書込み可能であり、Database Configuration Assistant(DBCA)および iCache Configuration Assistant(icacheca)によって oratab ファイルが 更新可能であることを確認する必要があります。そうでない場合、DBCA および icacheca は、構成ツール の起動時に失敗します。 Enterprise Edition のレスポンス・ファイルのセクションおよびパラメータ [SESSION] #Parameter: UNIX_GROUP_NAME #Type: String #Description: Unix group to be set for the inventory directory. Valid only in Unix platforms. #Example : UNIX_GROUP_NAME = "install" UNIX_GROUP_NAME=<Value Unspecified> #Parameter: FROM_LOCATION #Type: String #Description: Complete path of the products.jar. #Example : FROM_LOCATION = "../stage/products.jar" FROM_LOCATION= "/private1/balbert/dve/production/Disk1/stage/products.jar" #Parameter: FROM_LOCATION_CD_LABEL #Type: String #Description: This variable should only be used in multi-CD installations. It includes the label of the Compact Disk where the file "products.jar" exists. The label can be found in the file "disk.label" in the same directory as products.jar. #Example : FROM_LOCATION_CD_LABEL = "CD Label" FROM_LOCATION_CD_LABEL="9iAppServer" #Parameter: ORACLE_HOME #Type: String #Description: Complete Location of the Oracle Home. #Example : ORACLE_HOME = "C:¥OHOME1" ORACLE_HOME="/private1/oracle/iasee1" #Parameter: TOPLEVEL_COMPONENT #Type: StringList #Description: The Toplevel component that has to be installed in the 42 Oracle9i Application Server for Linux リリース・ノート current session. #The following choices are available. The value should contain only one of these choices. #The choices are of the form Internal Name, Version : External name. Please use the internal name and version while specifying the value. # oracle.iappserver.iapptop, 1.0.2.0.1 : Oracle9i Application Server 1.0.2.0.1 #Example : TOPLEVEL_COMPONENT = {"oracle.iappserver.iapptop","1.0.2.0.0"} TOPLEVEL_COMPONENT={"oracle.iappserver.iapptop","1.0.2.0.1"} [oracle.iappserver.iapptop_1.0.2.0.1] #Parameter: startupProcesses #Type: StringList #Description: StringList of processes to configure and start automatically in iAS Installation. This variable is used only in Enterprise Edition installs (in other install types, all processes are automatically started). Possible values that can be included in the StringList are the strings: "Oracle Database Cache" , "Forms and Reports Server" , "Oracle HTTP Server (on port 7777)" , "Oracle Web Cache", "Oracle Discoverer 3i Viewer", "Oracle Portal", "Oracle Management Server". If the StringList is empty, no processes are started. For example, the #StringList {"Oracle Database Cache","Forms and Reports Server"} would configure and start up those products. #Possible Values are { "Oracle Database Cache" , "Forms and Reports Server" , "Oracle HTTP Server (on port 7777)" , "Oracle Web Cache" , "Oracle Discoverer 3i Viewer" , "Oracle Portal", "Oracle Management Server" } #But Following 4 config tools doesn't support silent modes: #1. "Oracle Web Cache" , 2. "Oracle Portal", 3. "Oracle Database Cache" , 4. "Oracle Management Server" startupProcesses={"Forms and Reports Server" , "Oracle HTTP Server (on port 7777)" , "Oracle Discoverer 3i Viewer" } [oracle.webdb.apache_1.3.12.0.0a] #Parameter: user_input2 #Type: StringList #Description: This variable holds the input from dialog2. user_input2={"portal30", "portal30", "t816.world"} #Parameter: user_input1 #Type: StringList #Description: This variable takes the input from the first dialog. 第2章 Oracle9i Application Server 43 user_input1={"portal30_sso", "portal30_sso", "t816.world"} [portaltogo.server_1.0.2.2.0] #Parameter: SYSTEM_PASSWORD #Type: String #Description: This will hold the panama SYSTEM user password SYSTEM_PASSWORD="manager" #Parameter: SRV_USER #Type: StringList #Description: This will hold the Portal-to-Go User and Password SRV_USER={"scott", "tiger"} #Parameter: SRV_HOST #Type: StringList #Description: This will hold the Portal-to-Go host variables SRV_HOST={"toronto.us.oracle.com", "2021", "t816"} [oracle.icache.icacheca_1.0.2.0.0] #Parameter: sl_dbaReturn #Type: StringList #Description: Name and Password of SYSDBA user on origin DB. sl_dbaReturn={"sys", "change_on_install"} #Parameter: sl_connectStringReturn #Type: StringList #Description: Fields are: Name of origin DB machine, Port number of listener on origin (often 1521), Service name of origin DB. sl_connectStringReturn={"toronto.us.oracle.com", "2021", "t816.world"} Oracle9iAS Database Cache のインストール時のエラー Oracle9iAS Database Cache のインストール時に、オリジナル・データベースのリスナーが正しく設定されて いない場合、次のエラーが発生する可能性があります。 Adding users to the cache failed. Reason: WTE-03501 Error updating list of users: Export failed on origin database OCI error - ORA-28575: unable to open RPC connection to external procedure agent オリジナル・データベースのリスナーの設定方法の詳細は、『Oracle9i Application Server インストレーシ ョン・ガイド』を参照してください。 同じ Oracle ホームへの再インストール時の Oracle HTTP Server 設定の変更点の保持 httpd.conf、jserv.conf、zone.properties およびその他の変更を加えた Oracle HTTP Server 設定 ファイルのコピーをすべて保存しておいてください。Oracle9iAS を同じ Oracle ホームに再インストールす ると、既存の設定ファイルは新しくインストールされたファイルによって上書きされてしまいます。 44 Oracle9i Application Server for Linux リリース・ノート RDBMS パッチのインストール・ダイアログの表示 Oracle9iAS Enterprise Edition のインストール時に、次の RDBMS パッチのインストール・ダイアログが表示 される場合があります。 「You have enabled the ORATAB_FAIL feature by setting the environment variable ORATAB_FAIL to TRUE. This will allow you to continue installation eventhough there is no write permission on ORATAB (/var/opt/oracle/oratab) file. Currently ORATAB file does not exist, or is not writtable by the user. You can run the orainst/oratab.sh script as the root user to create the file or modify its permissions. In that case select [Shell] to invoke a new window from which to run the oratab.sh script, or exit the installer and restart it after oratab.sh has been run. If you decide to continue without changing the ORATAB permissions, select OK. But this installation session will not update ORATAB file and OCSM functionalities may not work properly. However running root.sh in the end will update the ORATAB file.」 「OK」をクリックしてインストールを続行します。ダイアログに表示されているように、シェルを開始し たりスクリプトを実行する必要はありません。 openssl の要件 Oracle9i Application Server で SSL の秘密鍵を生成する際に、以下のような警告の後で終了する場合がありま す。 warning, not much extra random data, consider using the -rand option Generating RSA private key,1024 bit long modulus 23973:error:24064064:random number generator:SSLEAY_RAND_BYTES:PRNG not seeded:md_rand.c:538:23973:error:04069003:rsa routines:RSA_generate_key:BN lib:rsa_gen.c:182: いくつかの UNIX プラットフォームでは/dev/random が openssl の必要とする乱数を生成するために必要と なります。オペレーティングシステムのマニュアルをご参照の上、乱数生成のガイドラインをご確認下さ い。 アンインストールおよび移行に関する問題点 Oracle Universal Installer を使用した Oracle9iAS Database Cache のアンインストールによる依存コン ポーネントの削除 Oracle Universal Installer を使用して Oracle9iAS Database Cache をアンインストールすると、すべてのサービ スがアンインストールされます。Oracle9iAS Database Cache をアンインストールするには、次のコマンドを 使用します。 1. キャッシュが稼動中であることを確認します。稼動中でない場合、Cache Manager を使用するか、 $ORACLE_HOME/bin ディレクトリ内の cachstrt スクリプトを使用してキャッシュを起動します。 2. -deinstall オプションを指定して Database Cache Configuration Assistant を実行します。 prompt>wtacca -deinstall OraInventory ディレクトリの移行前にバックアップが必要 Oracle Universal Installer で移行プロセスを実行する前に、OraInventory ディレクトリをバックアップする必 要があります。 移行が失敗するか、途中で中止されると、Oracle Universal Installer によって OraInventory ディレクトリが変 更されているため、その後の処理が失敗する可能性があります。移行プロセスが完了しなかった場合、移 行前のバックアップ・ファイルから OraInventory ディレクトリを復元してから、移行を再試行してくださ い。 Oracle HTTP Server 起動時のエラー Oracle9i Application Server をアンインストールし、同じ Oracle ホームに再インストールした後、Oracle HTTP Server を起動すると次のエラーが発生する可能性があります。 第2章 Oracle9i Application Server 45 Syntax error on line 14 of <ORACLE_HOME>Apache/Apache/conf/mod__ose.conf: AuroraService - directive already in effect for this server このエラーを解決するには、次のステップを実行します。 1. <ORACLE_HOME>Apache/Apache/conf/oracle_apache.conf ファイルを開きます。 2. 次の行の重複を削除します。 include "<ORACLE_HOME>Apache/Apache/conf/mod__ose.conf:" 3. Oracle HTTP Server を再起動します。 SOAP のリリース・ノートおよびドキュメントのリンクが機能しない リリース 1.0.2 またはリリース 1.0.2.1 からリリース 1.0.2.2 にアップグレードまたは移行した後、"SOAP Release Notes and Documentation"というタイトルの index.html ページのリンクは機能しません。 この問題を解決するには、次のようにします。 1. 次のディレクティブを ORACLE_HOME/Apache/Apache/conf/httpd.conf ファイルに追加します。 Alias /soapdocs/ "ORACLE_HOME/soap/" (ORACLE_HOME は Oracle ホーム・ディレクトリの絶対パスです)。 2. サーバーを再起動します。 移行後の nmxw.ora のインスタンス化の必要性 Oracle9iAS リリース 1.0.2.0.1 またはリリース 1.0.2.1 からリリース 1.0.2.2 への移行後、 nmxw.ora ファイルを 手動でインスタンス化し、Web サーバーの ServerRoot、ConfigFile および ApacheVersion ディレクティブに 値を挿入する必要があります。これらに値が挿入されていない場合、Enterprise Manager Console は HTTP サーバーを検出できません。 このファイルのパスは ORACLE_HOME/network/agent/config/です。 Core Edition への Minimal/Standard/Enterprise Edition の上書きインストールでの既知の問題点 1. すでに Core Edition がインストールされている ORACLE_HOME に Minimal/Standard/Enterprise Edition をインストールする場合には、まず Oracle HTTP Server を停止する必要があります。停止していな い場合には「Apache Listener Configuration for Oracle9iAS Portal(DAD およびスキーマ名)」画面で 次へボタンを押すとエラーが返されます。この場合には Oracle HTTP Server を停止して、インスト ール作業を続行してください。 2. Oracle HTTP Server を停止してから、 すでに Core Edition がインストールされている ORACLE_HOME に Minimal/Standard/Enterprise Edition をインストールする場合には、インストール・プロセスでエラ ーメッセージは出ません。しかし、インストール後に Portal の設定を手動で行う必要があります。 $ORACLE_HOME/Apache/modplsql/cfg/wdbsvr.app に Portal の接続情報を設定してください。 インターネット・アプリケーション・ソリューションの分野の問題点 Oracle HTTP Server powered by Apache Oracle HTTP Server powered by Apache の Global Server ID Apache サーバーに適切な GS-ID 証明書が含まれており、GS-ID を受け入れるためのパッチがブラウザ に適用されている場合、Global Server ID を使用すると、 輸出レベルのブラウザをアップグレードして、 高度な暗号化(128 ビット)を使用できます。すべてのブラウザに高度な暗号化機能が備わっていま すが、輸出製品の場合、この機能は使用不可の状態で出荷されています。米国輸出法が最近変更され たため、将来は GS-ID は不要になります。ただし、現在、輸出レベルのブラウザを使用しており、高 度な暗号化が必要な場合、次のステップを実行して GS-ID 証明書を取得し、ブラウザで高度な暗号化 を使用可能にしてください。 46 Oracle9i Application Server for Linux リリース・ノート 1. GS-ID 証明書を購入する。 適切なベンダーから GS-ID 証明書を入手します。オラクル社では、ベリサイン社の GS-ID 証明書 をテスト済みです。詳細は、次の Web サイトを参照してください。 http://www.verisign.com/server/prd/g/index.html 手順に従って証明書をダウンロードし、サーバーに保存します。証明書の取得後、Oracle HTTP Server 管理者は、httpd.conf ファイルを更新する必要があります。更新する行は次のとおりで す。 SSLCertificateFile <pathname>/gsid.crt SSLCertificateKeyFile <pathname>/gsid.key SSLCertificateChainFile <pathname>/gsidintermediate.crt pathname は、インストール済みの Verisign ファイルの絶対パスです。 2. ブラウザのパッチを購入する。 ブラウザの暗号化方式をアップグレード可能にするパッチを入手します。ブラウザのパッチは、 次の Apache または Fortify のサイトから入手可能です。 http://www.apache.org http://www.fortify.net/intro.html Oracle Demo 証明書の置換 Oracle Demo 証明書(ダミーの証明書)が Oracle HTTP Server powered by Apache のビルドに含まれて いますが、これはテスト環境でのみ使用可能です。本番環境に移る前に、Oracle Demo 証明書を実際 に利用する証明書に置き換える必要があります。 仮想ホスト使用時の"APACHECTL -START"による による Apache 起動エラー 仮想ホスト使用時の ポート番号ディレクティブと NameVirtualHost ディレクティブ・ポートが一致しない場合、このエラ ーが発生します。この問題を解決するには、ポートおよび NameVirtualHost が同じポートに設定され ていることを確認してください。また、この問題は、NameVirtualHost ディレクティブのポート番号を 指定しないことによっても解決できます。 この問題は、SSL を使用せずに起動した場合のみ発生します。 Apache JServ アプリケーション用のメモリーの増加 アプリケーション用のメモリーの増加 Apache JServ ログまたはブラウザにより「メモリー不足」という状況が報告された場合、大半は、JVM のメモリー不足に起因している可能性があります。通常、JVM によって処理されるデータがメモリー 割当てプールを超過した場合にこの状況が発生します。 JVM のメモリー割当てプールの最大サイズを増加するには、次のステップを実行します。 1. $ORACLE_HOME/Apache/Jserv/etc/jserv.properties に次の行を追加します。 wrapper.bin.parameters=-mx<size>m <size>はメモリー割当てプールのサイズ(メガバイト単位)です。デフォルト値は、メモリー1 メガバイトです。オラクル社では、128 メガバイトのサイズの使用をお薦めします。値を 128 メ ガバイトに設定するには、次の行を追加します。 wrapper.bin.parameters=-mx128m 2. 変更後、Web サーバーを再起動し、変更を反映させます。 第2章 Oracle9i Application Server 47 mod_plsql の要件 mod_plsql モジュールを特定のバックエンド・データベースに対して使用するには、Oracle PL/SQL Web Toolkit(OWA PL/SQL パッケージ)をバックエンド・データベースに手動でインストールする必要が あります。OWA PL/SQL パッケージは、SYS データベース・スキーマにインストールする必要があり ます。OWA PL/SQL パッケージが 1 つのみインストールされていることを確認してください。既存の Oracle Application Server(OAS)から Oracle9i Application Server にアップグレードする場合、以前のバ ージョンの OWS PL/SQL パッケージが存在するため、これらを新しいバージョンに置き換える必要が あります。 詳細は、『Oracle9i Application Server PL/SQL ゲートウェイの使用』を参照してください。 mod_plsql のキャッシング・エラー mod_plsql のキャッシングが正しく動作しない場合、$ORACLE_HOME/Apache/modplsql/cfg/cache.cfg 内の 2 つの cache_dir エントリから最後のスラッシュを削除します。 mod_plsql のセキュリティ上の脆弱性 mod_plsql が不正な URL のリクエストを受けることによって、バッファ・オーバーランやサービスの 低下(DoS)を引き起こす可能性があります。 この問題の詳細については、 次の Web サイトの「mod_plsql のセキュリティ上の脆弱性」の項目の[説明とよくある質問・回答]を参照して下さい。 http://www.oracle.co.jp/news/security/ Oracle Application Server の OWA パッケージの復元 新しい mod_plsql OWA パッケージをインストールすると、SYS データベース・スキーマに格納されま す。これにより、PL/SQL カートリッジを使用している Oracle Application Server のアプリケーション で問題が発生する可能性があります。このような問題が発生し、Oracle Application Server の PL/SQL カートリッジ・アプリケーションを引き続き使用する場合、Oracle Application Server の OWA パッケ ージを参照するシノニムを再作成する必要があります。 オリジナル・データベース・マシンでこれらのシノニムを作成するには、次のステップを実行します。 1. SQL*Plus で、SYS ユーザーとしてオリジナル・データベースに接続します。 2. SQL*Plus で次のコマンドを実行します。これにより、Oracle9i Application Server のインストール・ プロセス中に作成された OWA パブリック・シノニムがすべて削除されます。 drop public synonym OWA_CUSTOM; drop public synonym OWA_GLOBAL; drop public synonym OWA; drop public synonym HTF; drop public synonym HTP; drop public synonym OWA_COOKIE; drop public synonym OWA_IMAGE; drop public synonym OWA_OPT_LOCK; drop public synonym OWA_PATTERN; drop public synonym OWA_SEC; drop public synonym OWA_TEXT; drop public synonym OWA_UTIL; drop public synonym OWA_INIT; drop public synonym OWA_CACHE; drop public synonym WPG_DOCLOAD; 3. 48 "oas_public" という OWA パッケージ・インストール・スキーマに接続します。 Oracle9i Application Server for Linux リリース・ノート 4. ユーザー・スキーマに"CREATE PUBLIC SYNONYM"権限があることを確認します。権限がない 場合、次のステップに進む前に、これらの権限をユーザー・スキーマに付与します。 5. SQL*Plus で次のコマンドを実行します。これにより、OWA パブリック・シノニムが再作成され、 Oracle Application Server の OWA パッケージが参照されます。 create public synonym OWA_CUSTOM for OWA_CUSTOM; create public synonym OWA_GLOBAL for OWA_CUSTOM; create public synonym OWA for OWA; create public synonym HTF for HTF; create public synonym HTP for HTP; create public synonym OWA_COOKIE for OWA_COOKIE; create public synonym OWA_IMAGE for OWA_IMAGE; create public synonym OWA_OPT_LOCK for OWA_OPT_LOCK; create public synonym OWA_PATTERN for OWA_PATTERN; create public synonym OWA_SEC for OWA_SEC; create public synonym OWA_TEXT for OWA_TEXT; create public synonym OWA_UTIL for OWA_UTIL; create public synonym OWA_INIT for OWA_CUSTOM; create public synonym OWA_CACHE for OWA_CACHE; create public synonym WPG_DOCLOAD for WPG_DOCLOAD; 8.1.7.0 から 8.1.7.1 へのアップグレード時の既知の問題点 Oracle9i Application Server ベースの mod_plsql アプリケーション(Oracle Portal など)を実行している 場合、8.1.7.1 へのアップグレードにより、データベース付属のデフォルトの OWA パッケージが再イ ンストールされる点に注意してください。これらのパッケージは、Oracle9i Application Server/Oracle Portal 付属のものより古く、Oracle Portal の一部のコンポーネントの実行時に問題が発生します。 関連項目: 関連項目 バグ番号 1745320 この問題の回避策としては、アップグレードの最後に、Oracle9i Application Server から OWA パッケー ジを再インストールする必要があります。 1. 8.1.7.1 へのアップグレードをまだ実行していない場合、回避策は次のとおりです。 $ORACLE_HOME/rdbms/admin/catproc.sql ファイルを編集します。 2. OWA パッケージをロードする"@@owacomm.sql"という行をコメント化します。 Oracle9i Application Server からデータベースにすでにロードされている OWA パッケージが保持されま す。 注意: 注意 OWA パッケージを再インストールする場合、無効になった依存オブジェクトをすべて再コン パイルする必要があります。 mod_rewrite のセキュリティの脆弱性 mod_rewrite において、一部のルールを使用すると、Web サーバー上のあらゆるファイルにアクセス可 能になるというセキュリティ上の脆弱性が判明しています。これらの問題を回避するには、書換えル ールを直接ファイルにマップするのではなく、すべて絶対 URL にマップします。 たとえば、ご使用の Web サーバーで DocumentRoot に/webroot が設定されている場合、次のルールは 使用しないでください。 RewriteRule /foobar/(.*) /webroot/myfiles/$1 この場合、リクエストが直接ファイルシステムの場所にマップされてしまいます。かわりに、次のル ールを使用します。 RewriteRule /foobar/(.*) http://myserver.mydomain.com/myfiles/$1 第2章 Oracle9i Application Server 49 この場合、アクセスは、Apache インスタンスによってアクセス可能なファイル(つまり、DirectoryRoot ディレクトリ・ツリーに含まれるファイル)のみに制限されます。 OpenSSL の CA 機能の非サポート OpenSSL の認証局(CA)機能はサポートされていないため、使用しないでください。Oracle9i Application Server は Certicom SSL スタックに移動しており、 ここには SSL の CA 機能は含まれていません。 openssl コマンドは、証明書要求の生成にのみ使用してください。証明書の調査、証明書の署名など、その他 の機能は、オラクル社ではサポートしていません。 mod_ssl の制約事項 リリース 1.0.2.2 では、 対称型暗号化アルゴリズム RC2、 RC5 および IDEA はサポートされていません。 mod_oprocmgr のドキュメントの誤り のドキュメントの誤り Oracle9i Application Server のドキュメント「Using mod_oprocmgr with mod_jserv」(部品番号: A90282-01)に、完全に動作しないステータス・ハンドラに関する記述が存在します。mod_oprocmgr の現在の機能を反映するために、二重引用符で囲まれた次の項目をドキュメントから削除してくださ い。 2 ページの「System Administration(システム管理)」の項: "mod_oprocmgr provides a status handler which displays process information stored in shared memory." 3 ページの「Changes to httpd.conf(httpd.conf への変更)」の項: "<Location /oprocmgr-status> SetHandler oprocmgr-status </Location> " 4 ページの「Changes to jserv.properties(jserv.properties への変更)」の項: "or port=8007 9000-9010 8010 " 7 ページの「Checking JServ Process Status(JServ プロセスのステータスの確認)」の項: "The directive shown in "Changes to httpd.conf" includes a status handler that enables you to monitor JServ processes managed by mod_oprocmgr. You can access the status handler at http://myhost:port/oprocmgr-status, and display a page similar to that shown below." (スクリーン・キャプチャには、正しく機能しないボタンが表示されているため、これも削除する必 要があります。) "If there are zeroes instead of port numbers in the Process Port column, it could be that the JServ processes have not yet registered with the process manager. If you refresh the browser window and the port numbers still do not appear, then the JServ processes were unable to start (possibly because the specified ports were unavailable). Ensure that the specified ports are free, and that you have allotted enough port numbers for the JServ processes. To determine the cause of errors, see jserv.log and mod_jserv.log." HTTP サーバーのインフラストラクチャ・ウォッチャによる JVM の一時停止の可能性 HTTP サーバーのインフラストラクチャにはウォッチャ・コンポーネントが含まれており、自動的に 起動された JServ プロセスを監視します。JServ プロセスが応答しなくなると、ウォッチャにより、そ のプロセスが停止され、別のプロセスが起動されて置き換えられます。JVM の負荷が高いか、または ガベージ・コレクションを実行している場合にも、やはり JVM は一時停止されます。JVM の終了を 防ぐためには、jserv.conf ファイルのタイムアウト値(ApJServVMTimeout)を大きくするか、または JVM のヒープ・サイズを小さくしてガベージ・コレクションの時間を短くします。 50 Oracle9i Application Server for Linux リリース・ノート 同じ URL を使用した 2 回目のリクエストで有効なサーブレット・リクエストが失敗 有効なサーブレットが 1 回リクエストされ、さらにそのサーブレットの URL の URL エンコード・バ ージョンを使用して再びリクエストされると、2 回目のリクエストは失敗し、Apache の error_log にエ ラーが記録される可能性があります。 たとえば、次の例の 2 番目の URL によって HTTP エラーが発生する可能性があります。 http://mysite/demo/basic/hellouser/hellouser.jsp http://mysite/demo/basic/hellouser/hellouser%2ejsp サーバーは実行を継続し、エンコードされていないバージョンの URL は正しく機能します。 回避策としては、常に各 URL のエンコード・バージョンを使用するか、または常に各 URL のエンコ ードされていないバージョンを使用するようにします。混在して使用する必要がある場合、必ず、エ ンコードされていないバージョンを使用する前にエンコード・バージョンを使用します(サーバーの 各実行のたびに)。 DMS クライアントの設定の変更の必要性 DMS クライアント(flexmon、oasomo、ohsTree および EMD を含む)が正しく機能するように、 soap.properties を若干変更する必要があります。SOAP サーバー(および独自の JServ プロパティ・フ ァイルを持つ各プロセス・グループごと)に、"root"というゾーンが存在する必要があります。DMS クライアントは、このゾーンを使用して、パフォーマンス・メトリックを取得します。 "root"ゾーンを soap.properties ファイルに追加するには、soap.properties の中の 1 行を変更し、 soap.properties に新しい行を 1 行追加する必要があります。 次のように変更します。 1. %ORACLE_HOME%/Apache/Jserv/etc/ jservSoap.properties ファイルを開き、次のステップを実行し ます。 zones=soap 次のように変更します。 zones=soap,root 次のような行を探します。 soap.properties=%ORACLE_HOME%/soap/webapps/soap/WEB-INF/config/ soap.properties その後に、次の行を追加します。 root.properties=%ORACLE_HOME%/Apache/Jserv/etc/zone.properties (%ORACLE_HOME%を、展開済みの ORACLE_HOME 環境変数に置換します。) 2. サーバーを再起動します。 3. テストするには、次の URL を使用します(mysite をご使用のサイトの hostname:port に置換しま す)。 @ http://mysite/dms/AggreSpy この URL への 1 回目のアクセスでは、一部のメトリックが使用できないという メッセージが返される可能性がありますが、その後のアクセスでは、有効なメトリック値が返さ れます。サーバーが正しく設定されていない場合、URL により、長時間のタイムアウトの遅延、 Apache の error_log ファイルでのエラー、および HTTP リクエストに対する応答エラーが発生し ます。 第2章 Oracle9i Application Server 51 JServ の LANG 環境変数 LANG 環境変数により、アプリケーション・プログラムのデフォルトのロケールが指定されます。サ ーブレットおよび JSP が英語以外のロケールで正しく動作するようにするには、Oracle9iAS のインス トール後、Oracle HTTP Server の起動前に、次の作業を実行する必要があります。 $ORACLE_HOME/Apache/Jserv/etc/jserv.properties ファイルを開き、サーブレットおよび JSP を実行す る Java VM のデフォルトのロケールが、LANG 環境変数に対応して初期化されるようにします。 #wrapper.env.copy=LANG 負荷が高い場合の HTTP サーバーのタイムアウト Oracle HTTP Server の負荷が高い場合、リクエストがタイムアウトになり、大きな(10MB 以上の)静 的ファイルの送信が完了しないことがあります。これに対処するには、httpd.conf の TimeOut ディレク ティブの値を大きくします。 キャッシュ・ソリューション分野の問題点 Web Cache 設定時に不正なリスナー・ポートが使用される Oracle9iAS Web Cache のデフォルトの設定では、プライマリ Web リスナーがポート 7777 でリスニン グを行うことを前提としています。Oracle HTTP Server がリスニングするポート番号は、インストール 時に動的に選択されます。 Oracle HTTP Server によって 7777 以外のポートが選択された場合、Oracle9iAS Web Cache は、Web サ ーバーのポート 7777 に接続できないため、 自分のポート 1100 にアクセスする際にエラーを返します。 この問題を解決するには、Web Cache Manager の「Application Web Servers」画面で、ポート番号を HTTP サーバーがリスニングしているポートに変更します。 Oracle9iAS Web Cache 許容量パラメータが低い場合のコア・ダンプ リクエストの処理数が許容量パラメータ設定を大幅に上回り、ほとんどのリクエストがキャッシュ不 可のページに対するものである場合、Web Cache によりコア・ダンプが発生する可能性があります。 これに対処するには、許容量パラメータ「Capacity」を、予測されるリクエスト数に近い数値に設定 します。400 のクライアントがキャッシュ不可のページを要求したテストで、許容量パラメータが 400 に設定されている場合、コア・ダンプは発生しませんでした。同じテストで許容量パラメータが 30 に設定されている場合(デフォルト)、コア・ダンプが発生しました。 許容量パラメータ「Capacity」の設定は、Oracle9iAS Web Cache Manager の「Application Web Server」 セクションに存在します。 例およびデモ Oracle9i Application Server のほとんどのコンポーネントのデモおよび例は、次の場所に存在します。 http://<hostname:port> hostname はご使用のマシン名で、port は Oracle HTTP Server リスナーのポートです。このポートの詳細 は、Apache のドキュメントを参照してください。 さらに、Oracle9i Application Server のコンポーネントの例およびデモは、製品の CD-ROM に含まれており、 各コンポーネントのディレクトリにもインストールされます。 52 Oracle9i Application Server for Linux リリース・ノート デモの制限事項 OracleJSP のデモ クライアント側で実行する OracleJSP のデモ 今回付属している OracleJSP のデモは、Oracle9i Application Server のクライアント側で実行するための もので、Oracle Servlet Engine(OSE)のデータベースでは実行できません。Email、Cache、JESI、XML Dom および info デモを含め、いくつかの新しいデモは、サーバーに自動的にロードされないライブラ リに依存しています。make または makeit.bat ファイルを使用せずに、デモの README ファイルの非 OSE セクションの説明に従ってください。 Oracle Business Components for Java のデモのエラー Business Components for Java のデモが動作しない場合、ご使用のシステムがセットアップされていない可能 性があります。HTTP Server のホーム・ページで Business Components for Java のリンクをクリックし、Sample Application Setup リンクの手順に従ってください。 $ORACLE_HOME/Apache/Apache/htdocs/OnlineOrders_html/submit_login.jsp National Language Support( (NLS)に関する問題点 )に関する問題点 NLS_LANG Environment Variable mod_plsql mod_plsql の設定時には、NLS_LANG 環境変数は、Web サーバーのインスタンス・レベルご とに設定されます。パラメータを設定すれば、DAD レベルで NLS_LANG の設定を行なうことも可能です。 Oracle9i Application Server インスタンスを開始する前に、NLS_LANG の設定が正しいことを確認してくだ さい。 Oracle PSP Oracle PSP の場合、loadpsp コマンドを使用して PL/SQL Server Pages(PSP)をデータベー スにロードする前に、NLS_LANG 環境変数を設定する必要があります。 JDBC OCI8 ドライバを JServ および OracleJSP とともに使用する JDBC OCI8 ドライバを使用して Oracle に接続する場合、jserv.properties で NLS_LANG を正しく設定する必要があります。たとえば、次の ようになります。 wrapper.env=NLS_LANG=AMERICAN_AMERICA.UTF8 NLS_LANG 環境変数の詳細は、『Oracle8i NLS ガイド』を参照してください。 initicache.ora ファイルの NLS パラメータ Oracle9iAS Database Cache をインストールすると、オリジナル・データベースと同じデータベース・キャラ クタ・セットを使用するキャッシュが作成されます。ただし、日付書式または通貨記号など、その他の各 国語サポート(NLS)機能は設定されません。 オリジナル・データベースの初期化ファイル(initSID.ora)で NLS パラメータが指定されている場合、そ れらのパラメータをキャッシュの初期化ファイル(initicache.ora)にコピーする必要があります(NLS パラ メータは"NLS_"で始まります)。 たとえば、オリジナル・データベースの初期化ファイルに次のパラメータが含まれている場合、それらを initicache.ora にコピーします。 NLS_LANGUAGE = JAPANESE NLS_CALENDAR = "Japanese Imperial" NLS_DATE_FORMAT = "E YY-MM-DD" 第2章 Oracle9i Application Server 53 initicache.ora ファイルは、 $ORACLE_HOME/admin/icache/pfile ディレクトリに含まれています。 NLS の制約事項 今回のリリースでは、NLS に関し、次の不具合が判明しています。 Developer 6i の簡体字中国語バージョンのユーザー・インタフェースおよびメッセージの一部は、英語 で表示されます。この不具合の回避手段はありません。 Developer 6i の Forms Builder の繁体字中国語バージョンで、メニュー項目「File」→「Generate to file」 →「Delimited」の「Delimited」という単語は翻訳されているべきですが、文字化けしています。この 不具合の回避手段は判明していません。 54 Oracle9i Application Server for Linux リリース・ノート 第3章 Oracle Servlet Engine 原典情報: A86590-01 Oracle8i Oracle Servlet Engine Release Notes Release 3 (8.1.7) この章では、Oracle Servlet Engine 環境の初期設定について説明します。 次の項目について説明します。 はじめに パラメータ・ファイルの変更 はじめに 1. Oracle Servlet Engine を設定するには、セッション・シェルを使用します。セッション・シェルを起動 して、Oracle Servlet Engine の Web ドメインを構成するコマンドにアクセスします。 例: % sess_sh -u sys/change_on_install -s jdbc:oracle:oci8:@ 2. この手順以降は、セッション・シェルで実行します。createservice コマンドで、Web サービスを作成 します。サービス・ルート・ディレクトリを定義します。サービス名と JNDI ロケーションを指定し てください。マルチドメイン・サービスを作成する場合は、IP アドレスとバーチャル・ホスト名も定 義してください。 $ createwebservice -root <JNDI ロケーション> <Web サービス名> 例: $ createwebservice -root webdomains webserver 3. データベース・リスナーを経由して OSE にアクセスするには、addendpoint コマンドで登録します。 $ addendpoint -net8 <Web サービス名> <エンドポイント名> 例: $ addendpoint -net8 -timeout 300 webserver endpnet8 指定のポート番号でディスパッチャを起動しても、OSE にアクセスできます。 次の例では、ポート番号 8800 のディスパッチャでアクセスします。 例: $ addendpoint -port 8800 -timeout 300 webserver endp8800 4. createwebdomain コマンドで新しい Web ドメインを作成します。作成される Web ドメインは、このコ マンドを実行したスキーマにより所有されます。ドメインに含まれるサーブレットは、ドメイン・オ ーナーとして実行されます。-docroot オプションで OSE ファイル・ディレクトリを指定します。 $ createwebdomain [-docroot <ファイル・ディレクトリ>] <Web ドメイン名> 例: $ createwebdomain -docroot /usr/local/public_html /webdomains $ exit パラメータ・ファイルの変更 必要に応じたケースを選択し、パラメータ・ファイルを変更します。 ケース 1 指定のポート番号でディスパッチャを起動する場合 第3章 Oracle Servlet Engine 55 1. 初期化パラメータ・ファイル(init.ora)に mts_dispatchers パラメータを追加します。 mts_dispatchers = "(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)¥ (PORT=<ポート番号>))(DISP=1)(PRE=http://<Web サービス名>)" 例: mts_dispatchers = "(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)¥ (PORT=8800))(DISP=1)(PRE=http://webserver)" ケース 2 データベース・リスナーを経由して OSE にアクセスする場合 1. 初期化パラメータ・ファイル(init.ora)に mts_dispatchers パラメータを追加します。 > mts_dispatchers = "(PROTOCOL=tcp)(PRE=http://<Web サービス名>)" 例: mts_dispatchers = "(PROTOCOL=tcp)(PRE=http://webserver)" 2. Net8 クライアント用にデフォルトのポート 1521 を使用しない TCP/IP リスナー・アドレスを構成する 場合は、local_listener パラメータを設定し、tnsnames.ora ファイルなどを使用してこのパラメータ を解決する必要があります。 > local_listener = "local_listener_name" 例: local_listener = "listener_orcl" tnsnames.ora ファイルにエントリを追加します。 > <local_listener_name> = > (ADDRESS_LIST = > (ADDRESS = (PROTOCOL=TCP)(HOST=localhost)(PORT=<ポート番号>)) > ) > #(ポート番号:TCP/IP リスナーがリスニングしているポート番号) 例: listener_orcl = (ADDRESS_LIST = (ADDRESS = (PROTOCOL=TCP)(HOST=localhost)(PORT=7521)) ) 3. Listener.ora ファイルにエントリを追加します。 > (DESCRIPTION = > (PROTOCOL_STACK = > (PRESENTATION = http://<Web サービス名>) > (SERVICE_NAME=localhost) > ) > (ADDRESS = (PROTOCOL=TCP)(HOST=localhost)(PORT=<ポート番号>)) > ) > #(ポート番号:HTTP プロトコルをリスニングするポート番号) 56 Oracle9i Application Server for Linux リリース・ノート 例: LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL=TCP)(HOST=localhost)(PORT=7521)) ) ) (DESCRIPTION = (PROTOCOL_STACK = (PRESENTATION = GIOP) (SESSION = RAW) ) (ADDRESS = (PROTOCOL=TCP)(HOST=localhost)(PORT=2481)) ) (DESCRIPTION = (PROTOCOL_STACK = (PRESENTATION = http://webserver) (SERVICE_NAME = localhost) ) (ADDRESS = (PROTOCOL=TCP)(HOST=localhost)(PORT=7700)) ) 第3章 Oracle Servlet Engine 57 第4章 Oracle9iAS Portal はじめに この章では、Oracle9iAS Portal リリース 3.0.9 とドキュメントに記載されている機能との相違点、制限事項 および使用上の注意点について説明します。Oracle9iAS Portal リリース 3.0.9 をご使用になる前に必ずお読 みください。また以下の記述に Oracle9iAS Portal リリース 3.0.9 のマニュアルと相違がある場合は、以下 の記述を優先して下さい。 ドキュメント Oracle Portal の正式な製品名は、「Oracle9iAS Portal」となりました。ドキュメント内では、表現を簡潔に するために、短縮された製品名である「Oracle Portal」も引き続き使用されます。 動作要件 Oracle9iAS Portal リリース 3.0.9 を実行するには、以下のシステムを必要とします。 Oracle データベース Oracle8i リリース 8.1.7 Oracle9i リリース 9.0.1 Web ブラウザ Netscape Navigator/Communicator 4.73(日本語版)以上 (Netscape 6 は除く) Microsoft Internet Explorer 5.01 Service Pack 1 以上 Oracle9iAS Portal のインストールについて 以下に Oracle9iAS Portal インストール時の注意点を示します。 Oracle9iAS Portal をインストールする対象データベースが Oracle9i Database R9.0.1 の場合、データベー スの CD Pack に同梱されている「Oracle9i Database Patch Set Release」を適用してください。適用方法 は、「Oracle9i Database Patch Set Release」CD-ROM に含まれる Patch Set Notes 等のドキュメントを参 照してください。 Oracle9iAS Portal インストール後にデータベースの Patch Set Release を適用した場合は、PL/SQL Web Toolkit を再インストールする必要があります。 − owaload.sql を以下の手順で実行してください。 コマンド・プロンプトでディレクトリを次のように変更します。 <ORACLE_HOME>/portal30/admin/plsql/owa ここで<ORACLE_HOME>は Oracle9iAS のオラクルホーム・ディレクトリです。 SQL*Plus で Oracle9iAS Portal をインストールする対象のデータベースに sys ユーザーでロ グインします。 owaload.sql を実行します。オプションは次のようになります。 SQL > @owaload.sql <logfile> ここで<logfile>は任意のログファイル名です。 実行例: @owaload.sql owaload.log 58 Oracle9i Application Server for Linux リリース・ノート − owaload.sql を実行した際に「すでに使用されているオブジェクト名です。」というエラーメッセ ージが表示された場合は、以下の手順で recomp.sql を実行した後、上の手順に従って PL/SQL Web Toolkit を再インストールしてください。 コマンド・プロンプトでディレクトリを次のように変更します。 <ORACLE_HOME>/portal30/admin/plsql ここで<ORACLE_HOME>は Oracle9iAS のオラクルホーム・ディレクトリです。 SQL*Plus で Oracle9iAS Portal をインストールする対象のデータベースに SYSDBA としてロ グインします。SQL*Plus を「nolog 」オプションをつけて起動し、sys ユーザーでログイン した後、次のコマンドを実行してください。 >sqlplus /nolog SQL> connect sys/<sys_password>@<connect_string> as sysdba ここで<sys_password> は sys ユーザーのパスワード、<connect_string>は Oracle9iAS Portal を インストールする対象のデータベースに接続するための TNS 接続文字列です。 recomp.sql を実行します。 SQL> @recomp.sql Oracle9iAS Portal リリース 3.0.9 では Oracle Portal Configuration Assistant を用いたインストールはサポ ートされません。次の注意事項にしたがってインストール作業を行ってください。 UNIX 環境では C シェルを使用する必要があります。また Oracle9i Application Server for Linux の場合 には、ksh(Korn Shell)を必要とします。ksh が利用できない場合には、Portal のインストール前に ksh をインストールして下さい。 OUI で Oracle9iAS をインストールする際の、Oracle9iAS Portal を使用するために必要な注意点を示し ます。 - OUI の「Component Configuration and Startup」画面で、「Oracle9iAS Portal」の選択を解除してくださ い。もしくは OUI から Oracle Portal Configuration Assistant が起動された時点で、最初の画面で「キャ ンセル」ボタンをクリックしてください。(キャンセルした場合は、インストール終了時に OUI の画 面で「Oracle9i Application Server のインストールに失敗しました」と表示されますが、インストール は正常終了しています。) - OUI の「Oracle Portal 用 Apache リスナー構成 – Oracle Portal 対応 Database Access Descriptor (DAD)」 画面では各項目はデフォルト値のまま「次へ」ボタンをクリックしてください。 - OUI の「Oracle Portal 用 Apache リスナー構成 – Login Server 対応 Database Access Descriptor (DAD)」 画面では各項目はデフォルト値のまま「次へ」ボタンをクリックしてください。 Oracle9iAS Portal をインストールするためには、OUI 終了後に「Oracle Portal マニュアル・インストレ ーション・ガイド リリース 3.0.9」に沿って、インストール作業を行う必要があります。その際に必 要な注意点を示します。 - Oracle9iAS Portal をインストールする対象のデータベースの SYSTEM 表領域は 600MB 以上、デフォ ルト表領域に 200MB 以上の空きがあること。また、ブロック・サイズは 4096byte 以上あること。 - データベース作成時に次のコンポーネントがインストールされていること。 Oracle interMedia Oracle JServer - データベースの作成時にブロック・サイズが 4096Byte 以上に設定されていること。 - データベースの init<sid>.ora のパラメータが次のような設定になっていること。ここで、<sid>は Oracle9iAS Portal をインストールする対象データベースの SID です。 open_cursors = 300 以上 max_enabled_roles = 30 以上 processes = 150 以上 第4章 Oracle9iAS Portal 59 compatible = 8.1.0 以上 java_pool_size = 50000000 以上 shared_pool_size = 100000000 以上 large_pool_size の指定を解除(インストール時のみ) job_queue_processes=1 以上 cursor_sharing=exact o7_dictionary_accessibility=true (Oracle9i データベースからデフォルト値が false に変更されています。Oracle9i データベースで は明示的に true を指定してください。) − Oracle9iAS Portal をインストールする時の対象データベースが Oracle9i データベースの場合、次のよ うな設定を行ってください。 spfile<sid>.ora が存在する場合は、spfile<sid>.ora 以外の任意の名前にリネームしてデータベース を再起動します。 − Oracle9i データベースからサーバ・パラメータ・ファイル(Server Parameter File) が導入され ています。spfile<sid>.ora、spfile.ora が存在する場合、init<sid>.ora に設定した値が確実に反 映されるようにするために spfile<sid>.ora、spfile.ora を別の名前にファイル名を変更してく ださい。 ここで、<sid>は Oracle9iAS Portal をインストールする対象データベースの SID です。 Oracle9iAS Portal リリース 3.0.9 のインストール対象データベースが Oracle9i Database Standard Edition の場合、winstall コマンドを実行する前に insttrig.sql を置き換えてからインストールを実 行する必要があります。Oracle9iAS Portal R3.0.9.8.5 Patch CD に収録されている「9idb.zip」を適 当なディレクトリにコピーして展開してください。インストールについては 9idb.zip に含まれて いる readmeJP.pdf を参照してください。 vpdstatic.sql スクリプトを実行してください。 − Oracle9iAS Portal R3.0.9.8.5 Patch CD に収録されている「9idb.zip」を任意のディレクトリに コピーして展開し、さらにその中の「p2207018_309_GENERIC.zip」を展開してください。 インストールについては「9idb.zip」に含まれている readmeJP.pdf を参照してください。 - データベースに Oracle8i R8.1.7 を使用していて Oracle8i と Oracle9iAS を同一マシン上で稼働させる場 合、Oracle8i R8.1.7 に付属の Oracle HTTP Server は停止しておくか、使用するポート番号が Oracle9iAS に付属の Oracle HTTP Server と競合しないよう設定を変更しておいてください。 - Oracle9iAS Portal のインストール対象データベースが Oracle8i Standard Edition(旧名称:Oracle8i Workgroup Server) の場合、インストール時に以下のようなエラーが複数出力されますが、インスト ールは問題ありません。エラーは無視してください。 create unique index xxxxxxxxxxxxxxx * 1 行でエラーが発生しました。 ORA-00439: 機能は使用できません: Function-based indexes create bitmap index xxxxxxxxxxxxxxxx * 1 行でエラーが発生しました。 ORA-00439: 機能は使用できません: Bit-mapped indexes - 60 「Oracle Portal マニュアル・インストレーション・ガイド リリース 3.0.9」の「前提条件」にある通 り、Oracle9iAS Portal をインストールする対象のデータベースに接続できるように Oracle9iAS の tnsnames.ora を編集してください。例えば次のような記述を <ORACLE_HOME>/network/admin/tnsnames.ora に追加します。なお<ORACLE_HOME>は Oracle9iAS のオラ クルホーム・ディレクトリです。 Oracle9i Application Server for Linux リリース・ノート <CONNECT_STRING> = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = <HOSTNAME>)(PORT = <PORT>)) ) (CONNECT_DATA = (SERVICE_NAME = <SERVICE_NAME>) ) ) <CONNECT_STRING>は設定する接続文字列(任意)、<HOSTNAME>はデータベースの稼働しているホスト名、 <PORT>は TNS リスナーの稼働しているポート番号、<SERVICE_NAME>はデータベースのサービス名で す。 設定が完了したら、Oracle9iAS の SQL*Plus で Oracle9iAS Portal をインストールする対象のデータベ ースに接続できることを確認してください - 「Oracle Portal マニュアル・インストレーション・ガイド リリース 3.0.9」の「Oracle9iAS Portal の手 動インストール」の 6.で実行する onetime スクリプト・ファイルのオプションは次の通りです。 オプション 意味 デフォルト値 -p SYS ユーザのパスワード change_on_install -l (必須) ログファイル名 なし -c Oracle9iAS Portal をインストールする対象の データベースに接続するための TNS 接続文 字列 空白文字列 - 実行例: onetime -p change_on_install -l onetime.log -c orcl.jp.oracle.com - 「Oracle Portal マニュアル・インストレーション・ガイド リリース 3.0.9」の「Oracle9iAS Portal の手 動インストール」の 7.で実行する winstall スクリプト・ファイルのオプションは次の通りです。 オプション 意味 デフォルト値 -s Portal のパッケージがインストールされる Portal スキーマ PORTAL30 -p SYS ユーザのパスワード CHANGE_ON_INSTALL -u デフォルト表領域名 USERS -t 一時表領域名 TEMP -d ドキュメント表領域(コンテンツ領域にアッ プロードしたデータが格納される表領域) デフォルト表領域名 -l ログ表領域(Portal のログが記録される表領 域) デフォルト表領域名 -o ログイン・サーバのパッケージがインストー ルされる SSO スキーマ <portal_schema>_SSO ログイン・サーバのパスワードが保存される スキーマ <sso_schema>_PS パスワードの暗号化に用いられる乱数列の 初期化値 空白文字列 -I -r ここで<portal_schema>は Portal スキー マ名です ここで<sso_schema>は SSO スキーマ 名です 第4章 Oracle9iAS Portal 61 初期化値 -c Oracle9iAS Portal をインストールする対象の データベースに接続するための TNS 接続文 字列 空白文字列 -nodemo デモのインストールの省略 指定なし(デモをインストールする) -nosso ログイン・サーバのインストールの省略 指定なし(ログイン・サーバをインス トールする) -casesensitive パスワードで大文字小文字を区別する 指定なし(パスワードで大文字小文字 を区別しない) -disablerep Oracle Reports Security ポートレットのインス トールの省略 指定なし(Oracle Reports Security ポー トレットをインストール) - 実行例: winstall -s portal30 -p change_on_install -c orcl.jp.oracle.com - winstall スクリプト・ファイルの実行が完了するまでには約 1∼2 時間かかります。 - <ORACLE_HOME>/Apache/Apache/conf/httpd.conf の「ServerName」項目(2 ヶ所)の値がホスト名のみの 場合は、ネットワークのドメイン名を追加します。また大文字が混ざっている時はすべて小文字に変 換してください。なお<ORACLE_HOME>は Oracle9iAS のオラクルホーム・ディレクトリです。 例: 「ServerName MyHost」→「ServerName myhost.jp.oracle.com」 - 「Oracle Portal マニュアル・インストレーション・ガイド リリース 3.0.9」の「Oracle9iAS Portal の手 動インストール」の 8.での、Oracle9iAS Portal のスキーマをすべて削除するコマンドは実際には次の ようになります。ここでは Portal スキーマを「portal30」、SSO スキーマを「portal30_sso」、ログイン・ サーバのパスワードが保存されるスキーマを「portal30_sso_ps」、デモがインストールされたスキーマ を「portal30_demo」とします。データベースを再起動した後、SQL*Plus から SYS ユーザでログイン して以下のコマンドを実行してください。削除が完了するまでには約 1∼2 時間かかります。 SQL>drop user portal30 cascade; SQL>drop user portal30_public cascade; SQL>drop user portal30_sso cascade; SQL>drop user portal30_sso_public cascade; SQL>drop user portal30_sso_ps cascade; SQL>drop user portal30_demo cascade; SQL>drop public synonym owa_vpd_ctx; SQL>commit; - 「Oracle Portal マニュアル・インストレーション・ガイド リリース 3.0.9」の「Oracle9iAS Portal の手 動インストール」の 9.で実行する ssodatan スクリプト・ファイルは、Oracle9iAS Portal にアクセスす るための URL が変更された場合には、新しい URL を指定して再実行する必要があります。例えば Oracle9iAS をインストールしたホストのホスト名を変更したり、Oracle HTTP Server の使用するポート 番号を変更したり、Oracle9iAS Portal にアクセスするための DAD を変更したりした場合は、必ず新し い URL を-w オプションおよび-l オプションに指定して ssodatan を再実行してください。 Portal 3.0.9 での Portal3.0.9.8.5 patch(PSR3.0.9.8.5)の適用手順 この PSR3.0.9.8.5 の詳細については Oracle9iAS Portal R3.0.9.8.5 Patch CD に収録されている 30985lnx.zip に含まれる readme.txt および relnotes.htm を参照してください。 − 62 オンライン・ヘルプのインストール(オプション)を行う場合には、Oracle9iAS Portal 3.0.9.8.0 に対 して行ってください。PSR 3.0.9.8.5 を適用すると、それ以後オンライン・ヘルプのインストール を行うことができません。オンライン・ヘルプは必ず PSR 適用前にインストールしてください。 Oracle9i Application Server for Linux リリース・ノート − Oracle9iAS Portal R3.0.9.8.5 Patch CD に収録されている 30985lnx.zip ファイルに含まれている次 のファイルを適当なディレクトリにコピーして展開してください。 p2394398_309_LINUX.zip − Oracle9iAS の Oracle HTTP Server を停止してください。 − OUI を起動します。 − 「ファイルの場所」画面のソースセクションでパッチを展開したパスにある products.jar を指定し ます。 例:<dir>/Disk1/Stage/products.jar ここで<dir>はパッチファイルを展開した任意のディレクトリです。 − 「ファイルの場所」画面のインストール先セクションで Oracle9iAS がインストールされている ORACLE_HOME の名前とパスを設定します。 − 「次へ」ボタンを選択し、パッチをインストールするためのウィザードが行う質問に答え、OUI でのインストールを完了させてください。 − searchdb.plb を適用します。Oracle9iAS Portal R3.0.9.8.5 Patch CD に収録されている「searchdb.zip」 を任意のディレクトリにコピーして展開してください。適用方法については「searchdb.zip」に含 まれている readmejp.htm を参照してください。 − Oracle9iAS Portal をインストールする対象のデータベースが Oracle9i/8i for Linux の場合において DB PSR 9.0.1.2 以下または DB PSR 8.1.7.2 以下を適用している時 、 Portal PSR 3.0.9.8.5 を適用後、 Oracle Text/interMedia Text を使用して検索を行うためには、Oracle Text/interMedia Text の索引を 作成する前に、Oracle9iAS Portal R3.0.9.8.5 Patch CD に収録されている context.pth を適用してくだ さい。適用方法については「context.zip」に含まれている readmejp.htm を参照してください。ま たこの context.pth を適用した場合、URL コンポーネントや URL アイテム、URL フォルダで指定 したコンテンツは、Oracle Text/interMedia Text を使用した検索の対象にはなりません。 − Oracle9iAS の Oracle HTTP Server を起動してください。 以前のバージョンからのアップグレードについて Oracle9iAS Portal R3.0.9.8.5 Patch CD には以前のバージョンからのアップグレード・スクリプト・ファ イルを収録しています。アップグレードの手順はそのファイルの中に含まれるドキュメントを参照し てください。 PSR30983A 以降を適用時のプロキシ・サーバーの制限 PSR3.0.9.8.3A 以降を適用時、プロキシ・サーバーに squid を使用している場合、外部アプリケーションに ログインできない場合があります。 以下のいずれかの方法で回避できます。 ブラウザに Internet Explorer を使用する。 http.c ファイルを次のように修正し、再ビルドする。 [src/http.c] httpBuildRequestHeader() ... /* append Authorization if known in URL, not in header and going direct */ if (!httpHeaderHas(hdr_out, HDR_AUTHORIZATION)) { @ if (!request->flags.proxying && *request->login) { httpHeaderPutStrf(hdr_out, HDR_AUTHORIZATION, "Basic %25s", @ base64_encode(request->login)); } 第4章 Oracle9iAS Portal 63 } ...<中略>... 以下をコメントアウトして squid を再ビルドします。 /* httpHeaderPutStrf(hdr_out, HDR_AUTHORIZATION, "Basic %25s", @ base64_encode(request->login)); */ squid 以外のプロキシ・サーバーにおいても、内部で Authorization ヘッダを付与するような処理を行っ ている場合、Netscape では外部アプリケーションへの SSO は正常に動作しません。その場合は、プロ キシ・サーバーの設定で、自動的に Authorization ヘッダを付けないようにする必要があります。 ブラウザの設定 Internet Explorer 5.0 SP1 以上の場合 「インターネット オプション」の「全般」タブで「設定」ボタンをクリックして「ページを表示する ごとに確認する」にチェックし、「詳細設定」タブで「いつも UTF-8 として URL を送信する」のチ ェックを外してください。 Netscape Communicator 4.73(日本語版)以上の場合 「編集」メニューの「設定」を選択して「詳細」の「キャッシュ」で「毎回」にチェックして下さい。 ログインのトラブルシューティング ログイン時に問題が発生した場合、Portal 管理者は『Oracle Portal 構成ガイド』のトラブルシューティング の項を参照してください。 Internet Explorer 5 での高度なセキュリティ Internet Explorer 5 で最高度のセキュリティを設定していると、Oracle9iAS Portal のパブリック・ホーム・ペ ージを表示する際に問題が発生する場合があります。この場合、Oracle9iAS Portal ホーム・ページを表示す るために、Internet Explorer 5 のセキュリティ・レベルを引き下げることが必要になります。セキュリティ 設定は、Internet Explorer の「インターネット オプション」ダイアログの「セキュリティ」タブで変更でき ます。 ドキュメント名の制限 コンテンツ領域にアップロードするドキュメントの名前に、次の制限が適用されます。 ファイル名は、80 文字以内である必要があります。 ファイル名には、文字¥ / : * ? < > | " % # +を含めることはできません。 ファイル名には、空白および文字! @ ~ & . $ ^ ( ) - _ ` ' [ ] { } ; =を含めることができます。 Oracle9iAS Portal の分散環境での制限 Oracle9iAS Portal の分散環境において、ウィザードを用いて作成したリモート・ノードのアプリケー ション・コンポーネントを使用することはできません。 分散環境において、Oracle9iAS Portal をインストールしている対象のデータベースに適用されている Patch Set Release のバージョンが同一である必要があります。またプラットフォームが異なる場合、 Patch Set Release8.1.7.1 を適用してください。 64 Oracle9i Application Server for Linux リリース・ノート セキュリティ情報付きのインポート/エクスポート セキュリティ情報付きのインポート エクスポート アプリケーション、ページおよびコンテンツ領域をエクスポートおよびインポートする場合、関連するペ ージおよびセキュリティ情報(ユーザー名、パスワード、アクセス制御リスト)もエクスポートおよびイ ンポートできます。この機能は、セキュリティ権限およびページを保持したままエクスポートおよびイン ポート処理を実行する場合に有用です。 適切な Oracle9iAS Portal エクスポートまたはインポート・スクリプトを実行する際、-security および-page スイッチのいずれかまたは両方を指定できます。 たとえば、Solaris では次のようにスクリプトを実行できます。 スクリプト 例 アプリケーションのインポート appimp.csh -s portal30 -p portal30 -t SCOTT -a EXAMPLE_APP -security ページのエクスポート pageexp.csh -s portal30 -p portal30 -n HOMEPAGE -security ページのインポート pageimp.csh -s portal30 -p portal30 -o portal30 -c orcl -security コンテンツ領域のエクスポート contexp.csh -s portal30 -p portal30 -a SAMPLECONTENTAREA -security -page コンテンツ領域のインポート contimp.csh -s portal30 -p portal30 -o portal30 -m reuse -security -page 各オプションは、次のように使用します。 -s <portal_schema> -p <portal_password> -n <page_name> -d <dump_file_name> -a <application_name> <-security> -c <connect_string> 注意: Windows の場合、拡張子.csh を拡張子.cmd で置き換えるか、拡張子を指定せずに実行してください。 たとえば、アプリケーションのインポート・スクリプトは次のようになります。 appimp.cmd -s portal30 -p portal30 -t SCOTT -a EXAMPLE_APP -security エクスポート/インポート・スクリプトの-security または-page オプションを使用して作成されたダン プ・ファイルには、デフォルト名が付けられます。他のスクリプト・ファイルの場合、ダンプ・ファ イルに任意の名前を指定できます。 Solaris でのインポート/エクスポートの制限 でのインポート エクスポートの制限 Solaris 上に存在するデータベースに対して、NT マシンのコンテンツ領域をインポート/エクスポートする 場合、2 タスク変換エラー(ORA-03120)が発生します。 この問題を回避するには、NT マシン上ではなく Solaris マシン上で、スクリプト(contexp.csh および contimp.csh)を実行してください。 フォームの制限 以下に、Forms コンポーネントの既知の制限事項を示します。 第4章 Oracle9iAS Portal 65 データベース・リンクの使用は、Oracle8i データベースでのみ認められます。Oracle8i 以外のデータベ ース(例:Oracle 7.3)へのデータベース・リンクを使用すると、予期しない結果になる場合がありま す。 現時点では、ユーザー定義のオブジェクト型はサポートされていません。 66 Oracle9i Application Server for Linux リリース・ノート 次のリストに、データ型およびそのサポート状況を示します。 データ型 サポート状況 BLOB はい CHAR はい CLOB いいえ DATE はい LONG いいえ LONG RAW いいえ MLSLABEL いいえ NCHAR いいえ NCLOB いいえ NUMBER はい NVARCHAR いいえ NVARCHAR2 いいえ RAW いいえ ROWID いいえ UNDEFINED いいえ VARCHAR はい VARCHAR2 はい 次のリストに、interMedia オブジェクト型およびそのサポート状況を示します。 オブジェクト型 サポート状況 ORDIMAGE はい ORDAUDIO いいえ ORDVIDEO いいえ Custom object types いいえ フォームのベースとなるアイテム(表またはビュー内の列およびボタンや他の要素)の最大数は、200 です。 表/ビュー上に構築するフォームおよびマスター/ディテール・フォームは、複数のパブリック・デー タベース・リンクをまたぐ表/ビュー上にのみ作成できます。プライベート・データベース・リンクは サポートされていません。 ファイル・アップロード機能は、複数のデータベース・リンクをまたぐ環境では、サポートされてい ません。ファイル・アップロード機能は、ストアド・プロシージャをベースとするフォームでもサポ ートされません。 次のいずれかを保持するビューを、フォームのベースとすることはできません。なお更新可能なビュ ーの詳細は、Oracle8i ドキュメントを参照してください。 − DISTINCT 演算子 − AVG、COUNT、MAX、MIN などの集計関数 − GROUP BY、HAVING、START WITH、または CONNECT BY 句 第4章 Oracle9iAS Portal 67 表/ビューまたはマスター/ディテール・フォームをベースとするフォーム上のすべてのアイテム・プ ロパティで「挿入可能」および「更新可能」オプションを選択すると、エラーが発生します。この問 題を回避するには、フォーム上の少なくとも 1 つのフィールドで、「挿入可能」および「更新可能」 を選択しないようにする必要があります。 Oracle Report Security について Oracle Reports Security はサポートしていません。 イメージ・チャートの制限 • イメージ・チャート機能は、このリリースではベータ機能でありサポート対象外です。なおこの機能 を有効にするには、Oracle9iAS Portal ホームページの「管理」タブをクリックしてから、「グローバ ル設定」をクリックします。次に「グローバル設定」ページで、「問合せウィザードからのイメージ・ チャート」をチェックします。 ユーザーの追加、削除について Oracle9iAS Portal 管理画面、「管理」タブの「ユーザー」ポートレットからユーザーを削除しても、 ユーザーのプロファイル情報が残ったままになります。したがって、「ユーザー」ポートレットから ユーザーを削除した後、次の手順でプロファイル情報を削除してください。 − SQL*Plus で Oracle9iAS Portal をインストールしたデータベースに、Oracle9iAS Portal をインス トールした Portal スキーマ(デフォルト Portal30)でログインして、次のコマンドを実行してくだ さい 。 SQL> exec PORTAL30.WWSEC_API.DELETE_PORTAL_USER( P_USER_NAME =>'<USERNAME>' ) SQL> COMMIT; ここで<USERNAME>は削除したいユーザー名です。 また、1 つのログイン・サーバーに複数の Oracle9iAS Portal が関係付けられている場合は、この 作業を全ての Oracle9iAS Portal のインストール対象データベースに対して行ってください。 ユーザーの追加、削除には次の API が使用できます。ユーザーを追加する場合は、「ログイン・サー バーへのユーザー追加」「Oracle9iAS Portal へのユーザー追加」の順に実行してください。ユーザー を削除する場合は、「Oracle9iAS Portal からのユーザー削除」「ログイン・サーバーからのユーザー 削除」の順に実行してください。 − ログイン・サーバーへのユーザー追加 PROCEDURE <SSO_SCHEMA>.WWSSO_API_USER_ADMIN.CREATE_USER( P_USERNAME IN VARCHAR2, -- ユーザー名 P_PASSWORD IN VARCHAR2, -- パスワード P_EMAIL IN VARCHAR2, -- 電子メール・アドレス P_ACTIVATION_TIME IN DATE DEFAULT NULL, -- アカウント発効日 P_TERMINATION_TIME IN DATE DEFAULT NULL, -- アカウント失効日 P_LSADMIN IN BOOLEAN DEFAULT FALSE, -- ログイン・サーバーの 総合管理者 P_ERROR_CODE OUT NUMBER -- エラー・コード ); − ログイン・サーバーからのユーザー削除 PROCEDURE <SSO_SCHEMA>.WWSSO_API_USER_ADMIN.DELETE_USER ( 68 Oracle9i Application Server for Linux リリース・ノート P_USER_NAME IN VARCHAR2, P_ERROR_CODE OUT NUMBER -- ユーザー名 -- エラー・コード ); − Oracle9iAS Portal へのユーザー追加 FUNCTION <PORTAL_SCHEMA>.WWSEC_API.ADD_PORTAL_USER( P_USER_NAME IN VARCHAR2 -- ユーザー名 ) RETURN NUMBER; − Oracle9iAS Portal からのユーザー削除 PROCEDURE <PORTAL_SCHEMA>.WWSEC_API.DELETE_PORTAL_USER( P_USER_NAME IN VARCHAR2 -- ユーザー名 ); ここで<SSO_SCHEMA>は SSO スキーマ、<PORTAL_SCHEMA>は Portal スキーマです。 Oracle9iAS Portal へのユーザー追加に関するユーザー名以外のパラメータについては PDK 付属の PL/SQL API リファレンスを参照してください。 ユーザー・プロファイルの編集について 下記の Oracle9iAS Portal のデフォルト・ユーザーに関して、「Portal ユーザー・プロファイルの編集」 画面で「デフォルトに戻す」ボタンを実行しますと、フォーム・コンポーネントの作成や、編集が行 えなくなります。これらのユーザーに関しては、「デフォルトに戻す」ボタンを実行しないでくださ い。 − <Portal スキーマ名> (デフォルト: PORTAL30 ) − <Portal スキーマ名>_ADMIN (デフォルト: PORTAL30_ADMIN ) − <Login Server スキーマ名>_SSO (デフォルト: PORTAL30_SSO ) − <Login Server スキーマ名>_ADMIN (デフォルト: PORTAL30_SSO_ADMIN ) − PUBLIC (デフォルト: PUBLIC ) なお、<Portal スキーマ名> (デフォルト: PORTAL30 )は、「デフォルトに戻す」ボタンを実行してもエ ラーにより実行を継続することはできません。 各国語サポートの制限 中間層(Oracle9iAS)で使用するキャラクタ・セット(NLS_LANG)の設定は、データベースのキャラク タ・セットと同じにする必要があります。 データベースで UTF8 キャラクタ・セットを使用する場合、一部ページのレイアウトが乱れます。そ の場合 Netscape Navigator ではなく Microsoft Internet Explorer を使用してください。 Oracle HTTP Server が「Internal Server Error」を表示する場合、次のファイルを編集して設定を変更す ると改善されます(マシンの性能が高くない時に有効です) - Solaris 版の場合: $ORACLE_HOME/Apache/Jserv/etc/jserv.conf - デフォルトでは「#」でコメントアウトされている「ApJServVMTimeout」パラメータの設定を追加しま す 例:「# ApJServVMTimeout 10」 →「ApJServVMTimeout 30」 Oracle9iAS に含まれる Oracle9iAS Web Cache を、Oracle9iAS Portal で構築されたポータルに対して使 用することはサポートされません。 第4章 Oracle9iAS Portal 69 Oracle9iAS Portal の初期画面であるウェルカム・ページは、最初英語で表示されます。日本語の画面 に変更したいときは、まず「ゲートウェイ構成メニュー」画面の「キャッシュ構成の設定」リンクか ら「キャッシュ構成の設定」画面を表示させます。その画面の「PLSQL キャッシュを有効にする」と 「セッションキャッシュを有効にする」を「No」に設定し、「OK」ボタンをクリックします。次に Oracle9iAS Portal にログインし、「言語を設定」ポートレットで「日本語」を選択してください。そ の後ログアウトして、ウェルカム・ページが日本語になっていることを確認してください。確認でき たら、「PLSQL キャッシュを有効にする」と「セッションキャッシュを有効にする」の設定を「Yes」 に戻してください。 オンライン・ヘルプで検索する時は英語の検索語句を指定して下さい。検索結果は英語で表示されま すが、ヘルプの内容は日本語で表示されます。 フォーム・ウィザードによってフォーム・コンポーネントを作成、編集する場合、「書式および妥当 性チェックオプション」画面において列名やボタン名を選択した状態で、「次へ」ボタンや「完了」 ボタン、或いは画面右上のタブ(編集時)をクリックしないで下さい。ボタン名やラベルが文字化けす る場合があります。それらの操作を行って次の画面に移る前に、必ず左上の「Form 」項目を一度選 択して下さい。 レポート・コンポーネント作成時に「レポート作成ウィザード」の「書式条件」ステップで「点滅」 チェックボックスにチェックした場合、レポート・コンポーネントを Internet Explorer で実行しても点 滅表示はされません。 QBE レポートを作成する時に、選択した列の中に日付型の列が含まれている場合、「表示書式」画面 でその列の「書式マスク」項目に書式マスクを指定してください。指定されていない場合、実行時に 「更新」リンクからデータを更新することはできません。 カレンダー・コンポーネント作成時、日付書式を間違って入力した時に表示されるエラーメッセージ は日付書式を「YYYY-MM」と指示していますが、入力する日付書式は「MON-YYYY」で入力して ください。 URL コンポーネント、URL アイテム、または URL フォルダでは、対象の Web ページの Content-Type HTTP ヘッダーで、キャラクタ・セットが指定されていない場合、キャラクタ・セットを ISO-8859-1 として Web ページを表示します。(Web ページの HTML ヘッダー内で、<META>タグの HTTP-EQUIV 属性で指定されているキャラクタ・セットは、有効になりません。) たとえば、 Shift_JIS キャラクタ・セットを使用している Web ページであるにもかかわらず、 Content-Type HTTP ヘッダーが"text/html"である場合など、Content-Type HTTP ヘッダーで適切なキャラクタ・セッ トが指定されていない場合、Web ページを正しく表示できません。 日本語環境において、コンテンツ領域内右上のプロパティシートアイコンは機能しません。また検索 結果のアイテムの右のプロパティシートも機能しません。コンテンツ領域に関する情報は、「ナビゲ ータ」の「コンテンツ領域」タブの「プロパティの編集」からアクセスして下さい。 コンテンツ領域に日本語の名前を持つファイルをファイル・アイテムや Zip ファイル・アイテムとし てアップロードすると、 データベースのキャラクタ・セットが UTF8 で Web ブラウザに Internet Explorer を使用している場合は、ファイルをダウンロードして保存する時にファイル名が乱れて表示されます。 適切なファイル名にリネームしてから保存して下さい。 Zip ファイルアイテムをアップロードする場合は、必ず含まれているファイルの名前に日本語が使用 されていないことを確認して下さい。またディレクトリ構造付きで ZIP されている場合は、ディレク トリ名がアルファベット、数字及び「_」(アンダースコア)以外を含んでいないことを確認して下さい。 日本語の名前を持つファイルを含んでいる場合や、ディレクトリ名がアルファベット、数字及び「_」 (アンダースコア)以外の文字を含んでいる場合は、コンテンツ領域内に正常に解凍されません。 Zip ファイルアイテムをコンテンツ領域に解凍する場合は、必ず「バックグラウンドで解凍」オプシ ョンのチェックをはずして下さい。 日本語環境において Zip ファイル・アイテムをコンテンツ領域に解凍した場合、「バルクロードのロ グ」の表示が乱れますが、そのまま操作を続行して下さい。 コンテンツ領域のアイテムを検索する時に、検索語句として複数の単語を指定する場合、全角スペー スでは語句を区切ることはできません。必ず半角スペースを使用して下さい。 コンテンツ領域の「フォルダの編集」時に「アイテム一括操作」を選択してアイテムの一括操作をす る画面で、Internet Explorer5.0 SP2 以上のブラウザでは「フォルダをブラウズ」アイコンを選択しても 70 Oracle9i Application Server for Linux リリース・ノート フォルダのツリーが表示されません。Netscape Navigator か Internet Explorer5.0 SP1 を使用してくださ い。 コンテンツ領域で「フォルダの編集」時の「アイテム一括操作」での「コピー」機能はサポートされ ません。 コンテンツ領域から検索を実行して得られた検索結果のページから、「一括操作」リンクへアクセス し再度検索結果のページへ戻った時、検索文字列が崩れていた場合は、検索文字を再入力してくださ い。 コンテンツ領域の表示名を変更した後、Oracle9iAS Portal 管理画面から、コンテンツ領域を「表示」 または「編集」する場合、コンテンツ領域のリストから選択されたコンテンツ領域名が、以前の表示 名になっている場合があります。その場合「表示」または「編集」対象のコンテンツ領域名を手動で 入力するか、「言語の設定」ポートレットで設定を「English」にした後、コンテンツ領域のリストか らコンテンツ領域を選択するか、「Oracle Portal ナビゲータ」画面から変更したコンテンツ領域にア クセスするか、もしくは次の手順で mod_plsql のキャッシュをクリアしてください。 − 次のディレクトリの下にあるファイルとディレクトリをすべて削除して下さい(名前が数字のみ のディレクトリが多数存在するので、それらをすべて削除して下さい。 また次のディレクトリ 自体は削除しないで下さい) <PLSQL_CACHE>/plsql <SESSION_CACHE>/session ここで「<PLSQL_CACHE>」及び「<SESSION_CACHE>」は、それぞれ mod_plsql の「ゲートウ ェイ構成メニュー」画面の、「キャッシュ構成の設定」画面の「PL/SQL キャッシュ」および「セ ッション Cookie キャッシュ」項目で「キャシュ・ディレクトリ」に指定されているディレクト リです。 ただし、キャッシュを全てクリアするので、一時的にパフォーマンスが低下することがあります。 コンテンツ領域でフォルダの「スタイルのプロパティ」の「フォルダのレイアウト」タブを選択し、 「領域のプロパティ」の「フォルダ領域のプロパティ」を選択すると「使用可能な属性」リストに「作 成者」が二つ表示されます。このため属性の表示部分で二つの「作成者」属性を両方表示させたい場 合には、「アイテムの追加」でアイテムの管理者として設定可能な「作成者」にデフォルトの作成者 と区別可能な値を設定してください。 コンテンツ領域にファイル・アイテムとして登録されたテキストファイルや HTML ファイルは以下の 条件をすべて満たす場合にのみ、Oracle Text/interMedia Text を使用した日本語検索の対象となります。 − Oracle9iAS Portal のインストール対象データベースのキャラクタセットが JA16SJIS であること − テキストファイルおよび HTML ファイル中に含まれる文字の文字コードが Shift JIS であること − HTML ファイルの場合は<HTML>タグの直後に以下の META タグが含まれていること <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=Shift_JIS"> URL コンポーネントや URL アイテム、URL フォルダで指定したコンテンツが日本語の場合、それら は Oracle Text/interMedia Text を使用した検索の対象にはなりません。 Oracle9iAS Portal をインストールする対象のデータベースが Oracle8i for MS Windows の場合、 interMedia Text の索引を作成する場合および interMedia Text を使用して検索を行う場合、次の設定が 必要です。また、Oracle9iAS Portal をインストールする対象のデータベースが Oracle9i for MS Windows の場合、Oracle Text の索引を作成する場合にのみ、次の設定が必要です。 − 「Database Access Descriptor」ページの「接続プール・パラメータ」の設定で「接続プーリングを 有効にしますか?」を「No」にしてください。 Oracle9iAS Portal をインストールする対象のデータベースが Oracle9i/8i for Linux の場合、Oracle Text/interMedia Text を使用して検索を行うためには、Oracle Text/interMedia Text の索引を作成する前 に次の作業を行ってください。 − コマンド・プロンプトでディレクトリを次のように変更します。 <ORACLE_HOME>/portal30/admin/plsql/wws ここで<ORACLE_HOME>は Oracle9iAS のオラクルホーム・ディレクトリです。 第4章 Oracle9iAS Portal 71 − SQL*Plus で Oracle9iAS Portal をインストールしたデータベースに、Oracle9iAS Portal をインスト ールした Portal スキーマでログインして、次のコマンドを実行してください。 SQL> @context.pth また Oracle9iAS Portal をインストールする対象のデータベースが Oracle8i for Linux の場合は、URL コ ンポーネントや URL アイテム、URL フォルダで指定したコンテンツは、interMedia Text を使用した検 索の対象にはなりません。 Oracle Text/interMedia Text 検索の検索結果の画面において Oracle9iAS Portal をインストールしている 対象データベースが Oracle8i for Solaris で PSR8.1.7.1 を適用している場合および Oracle9i for Solaris の 場合、Text 強調表示(HTML)は機能しません。文章の確認は HTML 表示の機能で行ってください。 Oracle Text/interMedia Text 検索の検索結果の画面において Oracle9iAS Portal をインストールしている 対象データベースが Oracle8i for HP-UX で PSR8.1.7.1 を適用している場合および Oracle9i for HP-UX の 場合、HTML 表示は機能しません。文章の確認は Text 強調表示の機能で行ってください。 Oracle Text/interMedia Text 検索の検索結果の画面において、Microsoft(R) Word2000 のファイルでは Text 強調表示(HTML)は機能しません。文章の確認は HTML 表示の機能で行ってください。 Oracle Text/interMedia Text の「テーマと要旨」は、英語とその他一部の言語でのみ提供されている機 能であり、日本語では提供されておりません。そのため、Oracle9iAS Portal においても日本語環境で は、Oracle Text/interMedia Text の「テーマと要旨」は利用できません。 Oracle Text/interMedia Text の索引を削除するとき、Java script のエラーで「An Unhandled Exception has occurred」(ハンドルされていない例外発生)が表示される場合がありますが、削除は正常に行われてい ます。 Oracle9iAS Portal をインストールする対象のデータベースが Oracle8i リリース 8.1.7.2(ただし Oracle8i for MS Windows リリース 8.1.7.2.5 以上を除く)の場合、interMedia Text を使用して検索を行うためには、 interMedia Text の索引を作成する前に次の作業を行ってください。 − コマンド・プロンプトでディレクトリを次のように変更します。 <ORACLE_HOME>/portal30/admin/plsql/wws ここで<ORACLE_HOME>は Oracle9iAS のオラクルホーム・ディレクトリです。 SQL*Plus で Oracle9iAS Portal をインストールしたデータベースに、Oracle9iAS Portal をイン ストールした Portal スキーマでログインして、次のコマンドを実行してください。 set serverout on; declare cursor rls_cur is select object_name, policy_name from user_policies where policy_name = 'WEBDB_VPD_POLICY'; begin dbms_output.enable(100000); for c1 in rls_cur loop dbms_output.put_line('Disabling RLS on table '||c1.object_name); dbms_rls.enable_policy( object_name=>c1.object_name, policy_name=>c1.policy_name, enable=>FALSE); end loop; end; / 72 Oracle9i Application Server for Linux リリース・ノート また interMedia Text の索引の作成が完了したら、次の作業を行ってください。 − コマンド・プロンプトでディレクトリを次のように変更します。 <ORACLE_HOME>/portal30/admin/plsql/wws ここで<ORACLE_HOME>は Oracle9iAS のオラクルホーム・ディレクトリです。 SQL*Plus で Oracle9iAS Portal をインストールしたデータベースに、Oracle9iAS Portal をインストールした Portal スキーマでログインして、次のコマンドを実行してください。 set serverout on; declare cursor rls_cur is select object_name, policy_name from user_policies where policy_name = 'WEBDB_VPD_POLICY'; begin dbms_output.enable(100000); for c1 in rls_cur loop dbms_output.put_line('Enabling RLS on table '||c1.object_name); dbms_rls.enable_policy( object_name=>c1.object_name, policy_name=>c1.policy_name, enable=>TRUE); end loop; end; / なおこの作業は索引の作成時にのみ必要です。索引の作成後、「Oracle Portal 構成ガイド」 の「6.5.4 手順 4: interMedia Text 索引の管理」のように索引の自動更新を有効にする際にはこの作業は必要 ありません。 Netscape Navigator を使用する場合、ページにポートレットを追加する時に「選択したポートレット」 枠内で日本語のポートレット名の表示が乱れることがありますが、そのまま操作を続行してください。 ポートレットをページに追加する時、「ポートレットの追加」画面の「使用可能なポートレット」の プレビュー画面で Internet Explorer では文字化けが発生します。その場合は、Netscape Navigator を使用 してください。 日本語環境で作成したポートレットをページに追加する時、「言語を設定」ポートレットでページの 言語に「English」が選択されている場合、プレビューは表示されませんが、ポートレットの追加はで きますので、そのまま操作を継続してください。 新規ページ作成時にカスタムテンプレートを適用した場合、右上のヘルプボタンは正常に機能しませ ん。バナー付きのデフォルトテンプレートを使用して下さい。 その他の制限 ページの言語の変更や、ページにポートレットを追加した時に変更がすぐにページに反映されない場 合は、ページの「ページの更新(Refresh)」リンクやブラウザの「再読み込み」ボタンでページを再読 み込みしてください。 第4章 Oracle9iAS Portal 73 大きなファイルのアップロードなど処理に時間がかかるような場合は、 <ORACLE_HOME>/Apache/Apache/conf/httpd.conf で指定される TimeOut ディレクティブの値(デフォ ルト 300 秒)で接続が切断されてしまいます。その場合は切断されないような値に変更してください。 <ORACLE_HOME>は Oracle9iAS のオラクルホーム・ディレクトリです。 Oracle9iAS の Oracle HTTP Server に含まれる mod_plsql から Oracle WebDB への接続は、Oracle9iAS R1.0.2.1 以降ではサポートされません。Oracle9iAS R1.0.2.0 でのみサポートされています。 74 Oracle9i Application Server for Linux リリース・ノート 第5章 Oracle9i Application Server への EJB の配置 原典情報: Oracle8i JVM Deploying Enterprise JavaBeans to Oracle9i Application Server (A88705-01) はじめに この章の目的 このリリースでは、 Enterprise Java Beans (EJB) 1.1 が完全にサポートされています。 Oracle9i Application Server 中間層と 8.1.7 データベースの両方で、EJB が適切に機能できるようにするために、Oracle 固有の EJB 用デ ィプロイメント・ディスクリプタに変更があります。 この章では、次のトピックを取り扱います。 トランザクションのための Oracle 固有要素の定義 コンテナ管理の永続性の定義 Oracle 固有の DTD の変更 トランザクションのための Oracle 固有要素の定義 グローバル・トランザクションのために、追加で指定できる 3 つの要素があります。 ローカル・リソースをトランザクションに自動的に参加させるかどうかを定義する 2 フェーズ・コミット・エンジンを定義する グローバル・トランザクションでブランチを使用可能にするかどうかを定義する 次に、上記の要素に必要な要素を示します。これらは、Oracle 固有のディプロイメント・ディスクリプタ の<transaction-manager>要素の中に含めます。 <mappings> ... <transaction-manager> <jndi-name>/test/TransactionManager</jndi-name> <default-enlist>TRUE</default-enlist> <create-branches>FALSE</create-branches> </transaction-manager> </mappings> トランザクションへのローカル・リソース参加の定義 ローカル・リソースは、データベースまたは Oracle9i Application Server 中間層のキャッシュになります。 EJB が Oracle 8.1.7 データベースで稼動している場合で、ローカル・リソースをグローバル・トランザクシ ョンに参加させるときは、<default-enlist>を TRUE に指定する必要があります。 <mappings> ... <transaction-manager> ... <default-enlist>TRUE</default-enlist> </transaction-manager> 第5章 Oracle9i Application Server への EJB の配置 75 </mappings> EJB が、Oracle9i Application Server 中間層で稼動している場合は、Oracle9i Application Server Database Cache が読取り専用なので、Oracle9i Application Server キャッシュをトランザクション・マネージャには参加させ ません。この要素のデフォルトは FALSE なので、ディプロイメント・ディスクリプタに <default-enlist>タグを付ける必要はありません。 <mappings> ... <transaction-manager> ... </transaction-manager> </mappings> 2 フェーズ・コミット・エンジンの定義 グローバル・トランザクションに 2 フェーズ・コミットを使用している場合、Oracle 固有のディプロイメ ント・ディスクリプタ内の<transaction-manager>要素に UserTransaction オブジェクトの JNDI 名を提供する必要があります。次の例では、UserTransaction オブジェクト/test/myUTFor2pc を指定して います。 <mappings> ... <transaction-manager> <jndi-name>/test/myUTFor2pc</jndi-name> ... </transaction-manager> </mappings> トランザクション内のブランチの使用可能化 X/Open XA プロトコルによると、単一のデータベースに複数の更新を行なう場合、トランザクション・マ ネージャは、それぞれの update-known を unit-of-work-through ブランチとして管理します。 <create-branches>要素で、複数の単位の作業が単一のデータベース上で実行できるかどうかを定義し ます。すなわち、単一のデータベースに複数の別々の更新を適用する場合、この要素を、TRUE に設定す る必要があります。これが FALSE の場合は、グローバル・トランザクション内で、データベースあたり 1 単位の作業しか行なえません。 次のように、<create-branches>要素を TRUE に指定することで、グローバル・トランザクション内で 複数のブランチを可能にすることができます。 <mappings> ... <transaction-manager> ... <create-branches>TRUE</create-branches> </transaction-manager> </mappings> ブランチを使用可能にすることは、グローバル・トランザクションが次のものを使用する場合にのみサポ ートされています。 複数のデータベース 単一データベースにアクセスする複数のセッション 単一トランザクション内で同一データベースへのセッションのブランチはサポートされていません。 76 Oracle9i Application Server for Linux リリース・ノート 複数セッションから単一データベースにアクセスするときは、ブランチが使用されます。ただし、これは、 2 フェーズ・コミットになります。 コンテナ管理の永続性の定義 コンテナ管理の永続性 Entity Bean を使用すると決めた場合、永続性の属性がアクセスされる <persistence-datasource>を任意に提供することができます。ディプロイメント・ディスクリプタに <persistence-datasource>が定義されていない場合、EJB コンテナは kprb ドライバを使用して、永続 性属性のためにローカル・データベースにアクセスします。 次の例では、永続性フィールドを格納するためにリモート・データベースを使用する永続性プロバイダを 定義します。この例では、/test/empDatabase JTA DataSource がリモート永続性ストレージとして 定義されています。この DataSource は、-type jta オプションでバインドされています。 <persistence-provider> <description>specifies a type of persistence manager</description> <persistence-name> psi-ri </persistence-name> <persistence-deployer> oracle.aurora.ejb.persistence.ocmp.OcmpEntityDeployer </persistence-deployer> <persistence-datasource> /test/empDatabase </persistence-datasource> </persistence-provider> Oracle 固有の DTD の変更 完全な Oracle 固有 DTD を下にリストします。ここに、前述のオプション・タグが含まれていることに注意 してください。 <!-- This is the XML DTD for the Oracle Specific EJB deployment descriptor --> <!ELEMENT oracle-descriptor (mappings*, run-as*, persistence-provider*, persistence-descriptor*)> <!ELEMENT run-as (description?, mode, security-role*, method)> <!ELEMENT method (description?, ejb-name, method-intf?, method-name, method-params?)> <!ELEMENT method-params (method-param*)> <!ELEMENT method-intf (#PCDATA)> <!ELEMENT method-name (#PCDATA)> <!ELEMENT method-param (#PCDATA)> <!ELEMENT mappings (ejb-mapping*, security-role-mapping*, resource-ref-mapping*, transaction-manager*)> <!ELEMENT transaction-manager (description?, jndi-name?, default-enlist?, create-branches?)> <!ELEMENT ejb-mapping (ejb-name, jndi-name)> <!ELEMENT security-role-mapping (security-role, oracle-role)> <!ELEMENT resource-ref-mapping (res-ref-name, jndi-name)> <!ELEMENT ejb-name (#PCDATA)> <!ELEMENT jndi-name (#PCDATA)> <!ELEMENT default-enlist (#PCDATA)> <!ELEMENT create-branches (#PCDATA)> 第5章 Oracle9i Application Server への EJB の配置 77 <!ELEMENT security-role (description?, role-name)> <!ELEMENT role-name (#PCDATA)> <!ELEMENT oracle-role (#PCDATA)> <!ELEMENT ejb-ref-name (#PCDATA)> <!ELEMENT res-ref-name (#PCDATA)> <!-mode = SYSTEM_IDENTITY, SPECIFIED_IDENTITY, CLIENT_IDENTITY if mode is SPECIFIED_IDENTITY, security-role must be specified if mode is SYSTEM_IDENTITY or CLIENT_IDENTITY and security-role is security-role is ignored specified, --> <!ELEMENT mode (#PCDATA)> <!--- persistence-provider describes the container managed persistence --> <!ELEMENT persistence-provider (description?, persistence-name, persistence-deployer, persistence-datasource?)> <!ELEMENT description (#PCDATA)> <!ELEMENT persistence-name (#PCDATA)> <!ELEMENT persistence-deployer (#PCDATA)> <!ELEMENT persistence-datasource (#PCDATA)> <!ELEMENT persistence-descriptor (description?, ejb-name, persistence-name, persistence-param*, psi-ri*)> <!ELEMENT persistence-param (#PCDATA)> <!ELEMENT psi-ri (schema, table, attr-mapping+, serialize-mapping?)> <!ELEMENT schema (#PCDATA)> <!ELEMENT table (#PCDATA)> <!ELEMENT attr-mapping (field-name, column-name)> <!ELEMENT serialize-mapping (field-name+, column-name)> <!ELEMENT field-name (#PCDATA)> <!ELEMENT column-name (#PCDATA)> Oracle9i Application Server 環境でのグローバル・トランザクション 通常のグローバル・トランザクションでは、グローバル・トランザクションに組み込むそれぞれのデータ ベースと接続をします。トランザクションが完了すると、トランザクション・マネージャは、すべての変 更をそのトランザクションに関連したすべてのデータベースに対してコミットします。 ただし、Oracle9i Application Server では、Oracle9iAS Database Cache がトランザクション・マネージャによ って、誤ってグローバル・トランザクションのデータベースの 1 つとして取り扱われる可能性があります。 中間層でアクティブになっている EJB は、Oracle9iAS Database Cache とバックエンドの Oracle データベー スの両方への接続を検索します。しかし、EJB は、バックエンド・データベースしか更新できません。ト ランザクション・マネージャが Cache をそのトランザクションに関与する別のデータベースとして取り扱 わないようにする必要があります。そうしないとトランザクション・マネージャは、トランザクションが 終了したときに 2 フェーズ・コミットを実行します。2 フェーズ・コミット・プロセスは、コストも高く、 必須ではありません。バックエンド・データベースのみをグローバル・トランザクションに参加させるよ うにしてください。すなわち、トランザクション・マネージャに、コストが高くない単一フェーズ・コミ ットを実行させるようにします。 Cache がグローバル・トランザクションの参加データベースとして取り扱われることがないようにするには、 次のようにしてください。 1. 78 Oracle 固有ディプロイメント・ディスクリプタの<default-enlist>要素が、設定されていない、す なわち、デフォルトで FALSE になっているか、または、FALSE に設定されるようにします。 Oracle9i Application Server for Linux リリース・ノート 2. データベース Cache 用の DataSource を非 JTA タイプでバインドします。JTADataSource オブジ ェクトのみを、自動的にグローバル・トランザクションに参加させることができます。 第5章 Oracle9i Application Server への EJB の配置 79 第6章 Oracle9iAS Web Cache 原典情報: Oracle Web Cache Relase Notes, Relase 2.0.0.1.0 はじめに この章の目的 この章では、Oracle9iAS Web Cache とドキュメントに記載されている機能との相違点、および使用上の注 意点について説明します。Oracle9iAS Web Cache をご使用の前には、必ずお読みください。 この章では、次のトピックを取り扱います。 Oracle9iAS Web Cache の構成 Oracle9iAS Web Cache の制限事項 Netscape の制限事項 TCP のチューニング Oracle9iAS Web Cache の Watchdog 機能 Oracle9iAS Web Cache のデフォルト・ポート Oracle9iAS Web Cache 使用法の例 1024 以下のポートをリスニングするための Oracle9iAS Web Cache の構成方法 拡張機能 Oracle9iAS Web Cache のバージョン Oracle9i Application Server の本リリースに含まれる、Oracle9iAS Web Cache のバージョンは 2.0.0.4 です。こ の章に含まれるバージョン番号は、Oracle9iAS Web Cache のバージョン番号を示しています。 Oracle9iAS Web Cache の構成 次のように Oracle9iAS Web Cache の初期構成を開始してください。 1. 現在、Oracle9iAS Web Cache のコンピュータに、ログオンしていない場合、インストールを実行した ユーザーのユーザーID でログインしてください。 2. Oracle9iAS Web Cache を起動します。コマンドラインから、次のように入力します。 webcachectl start 3. Oracle9iAS Web Cache Manager を次のように起動します。 a. ブラウザで次の URL にアクセスします。 http://web_cache_hostname:4000/ b. 管理者のユーザーID とパスワードの入力をプロンプトで求められたら、ユーザー名に 「administrator」を入れ、正しいパスワードを入力します。初めてログインしたときには、パスワ ードは「administrator」になっています。 参照: 構成についての詳細な説明は、『Oracle Web Cache 管理および配置ガイド』を参照してください。 80 Oracle9i Application Server for Linux リリース・ノート 注意: Oracle9iAS Web Cache は、webcache.xml と internal.xml の 2 つの構成ファイルを使用します。これらの構成 ファイルを決して編集しないでください。構成の変更は、サポートされていないため、Oracle9iAS Web Cache で問題が発生する可能性があります。(例外については、「Oracle9iAS Web Cache の Watchdog 機能」また は 「Oracle9iAS Web Cache のデフォルト・ポート」を参照してください。) Oracle9iAS Web Cache の制限事項 HTTP Range リクエストとマルチパートのレスポンス HTTP ブラウザには、HTTP リクエストに Range ヘッダーを入れて送信するものがあります。このタイプの リクエストに対するレスポンスとして、アプリケーション Web サーバーは、マルチパートのドキュメント でレスポンスするか、またはそのまま 1 つのドキュメントでレスポンスします。 このリリースの Oracle9iAS Web Cache は、HTTP の Range リクエストに対する HTTP マルチパートのレス ポンスをキャッシュできません。Oracle9iAS Web Cache が HTTP リクエストを送信する先のアプリケーシ ョン Web サーバーから、マルチパート形式でドキュメントが返される場合は、Oracle9iAS Web Cache Manager の「Administering Web Sites > Cacheability Rules」項目で、これらのドキュメントをキャッシュ不可 と設定してください。 たとえば、ブラウザの中には、PDF ドキュメントに対して Range リクエストを送信するものがあります。 そこで、すべての PDF ドキュメントについて、キャッシュ・ルールをキャッシュ不可と設定する必要があ ります。 パーソナライズ・ページ キャッシュ・ルールを設定するとき、オプションで、Oracle9iAS Web Cache が、キャッシュされたドキュ メントのパーソナライズ情報を HTTP リクエスト内のユーザー固有のパーソナライズ情報と置換できるよ うに指定できます。こうすることで、キャッシュされたパーソナライズ・ページが他のユーザーのために 再利用され、パフォーマンスが著しく向上します。 このパーソナライズ機能を有効にすることで、Oracle9iAS Web Cache で、HTTP のレスポンス内の特殊なタ グの付いたパーソナライズ情報や、HTTP のレスポンス内のすべての HTML リンク(HREF として認識さ れる)上のパーソナライズ情報を探し出せるように設定できます。このリリースの Oracle9iAS Web Cache は、特殊なタグ内のパーソナライズ情報も HREF HTML リンク内のパーソナライズ情報もどちらも検索し ます。そのため、キャッシュ・ルールの作成/編集中に、パーソナライズ・ページの項目で「YES」を選択 すると、そのサブセクションの選択は、常に「pages contain HREFs that are session encoded URLs」になりま す。 一方のオプション「pages do not contain HREFs that are session encoded URLs」を選択しても無視され、 すべてのパーソナライズ・ページは、セッションがエンコードされた URL として常に解析されています。 Oracle9iAS Web Cache Manager での不十分な入力チェック Oracle9iAS Web Cache Manager は、構成情報の入力データ受信の際、Oracle9iAS Web Cache が起動時に行う チェックと同じレベルの整合性検査は行っていません。したがって、Oracle9iAS Web Cache Manager では構 成変更が受け入れられたのに、Oracle9iAS Web Cache が、その変更を反映した構成で起動しないという場 合があります。 これは、誤った構成変更を適用した後で、Admin Server 自身が(webcachectl stop を使用して)シャットダ ウンされた場合に特に問題になります。この場合、Admin Server 自体が、起動することができなくなり、 Oracle9iAS Web Cache Manager にアクセスできなくなります。回避策として、次のようにしてください。 # webcachectl repair これで、構成変更前のバージョンをリストアします。 Web サーバー・ステータスの報告 Web サーバー・ステータス・ページは、別に失敗を検知しなければ、構成された Web サーバーがすべて活 動中であるとして報告をするでしょう。それは、たとえ Web サーバー・ステータス・ページがそれらが活 第6章 Oracle9iAS Web Cache 81 動中だと報告しても、Oracle9iAS Web Cache が Web サーバーへのリクエストのルーティングをスタートす るまでは、それらの Web サーバーの実際の状態は未確認であることを意味します。 Admin Server への IP アクセス Admin Server への IP アクセスが Web Admin インターフェースを通して可能になる場合、Web Cache オペレ ーション・ページによって Web Cache を再開することは十分ではありません。Admin Server は webcachectl ユーティリティを使用して、コマンドラインから再開される必要があります。 Netscape の制限事項 Oracle9iAS Web Cache は、オプションで、キャッシュされたドキュメントを圧縮することができるため、 連続した HTTP リクエストの対応に必要となるネットワーク帯域幅を少なくすることができます。ただし、 Netscape Navigator ブラウザのバージョンによっては、圧縮した JavaScript ドキュメントおよび HTML 以外 のドキュメントをサポートしていません。このリリースは Oracle9iAS Web Cache では、Netscape Navigator ブラウザ以外のブラウザに対してドキュイメントの圧縮機能をサポートしています。 ファイル記述子の制限事項 ほとんどの UNIX プラットフォームで、1 プロセスがオープンできるファイル記述子の数にハードウェア上 の制限があります。この数は、通常 1024 ですが、設定が可能です。この初期値をより大きなものに変更す るためには、ルートあるいはルート権限でプロセスを実行しなければなりません。別の方法はプロセスを ルートするために setuid ビットをセットすることです。このための手続きは下記と同じものです。 「1024 以下のポートをリスニングするための Oracle9iAS Web Cache の構成方法」 このリリースでは、Oracle9iAS Web Cache が使用するファイル記述子の最大数は、次の式によって計算さ れます。 使用するファイル記述子の最大数=現在の最大接続数 (Web Cache Manage によって webcache.xml 中に指定された数) +すべての構成された Web サーバー・インスタンスの合計値+50(内部使用) 上記の計算式に基づき、Web Cache サーバーは開始時にファイル記述子を確保しようとします。それが確 保できなかった場合、自動的により低い値にはならず、エラー・メッセージを記録して Web Cache サーバ ーは開始に失敗します。1024 以上のファイル記述子が要求されたため Web Cache サーバーが開始できない 場合、ルートで実行するか、あるいはルート権限として実行できるように setuid を設定します。さらに、 Web Cache Manager の中の"Current Maximum Incoming Connections"に、サーバに同時接続するクライアント の最大数を正確に反映させてください。任意の高い値にセットすると、それに対して Web Cache がシステ ム資源を使用し、パフォーマンスに悪影響を及ぼすので注意して下さい。 なお、最大数をハードウェア上の制限の許容範囲以上に設定し、Oracle Web Cache を起動させてしまった 場合は、別ターミナルより全ての Web Cache プロセスを削除して下さい。(Bug#2153139) TCP のチューニング Oracle9iAS Web Cache で、同時に多数の HTTP リクエストを処理させる場合は、TCP 接続キューの最大の 長さなどの、オペレーティング・システムの TCP 設定を調整する必要があります。 特に、Oracle9iAS Web Cache に対するストレス・テストを実行し、1 つのクライアント・コンピュータから Oracle9iAS Web Cache に TCP 接続を連続して数多くオープンする場合に、スループットが周期的に変動す ることがあります。通常、これは、オペレーティング・システムでの TCP 接続の TIME_WAIT が原因で起 こります。実際の使用における配置では、1 つのクライアントが膨大な数の接続をすることはほとんどない ので、これは問題にはなりません。 82 Oracle9i Application Server for Linux リリース・ノート サービス・アタックを拒否した場合に、通常、オペレーティング・システムのネットワーク・レイヤーで 使用可能性の問題が生じます。たとえば、あるクライアントが多数の接続を生成する場合、TCP 接続の問 題は、オペレーティング・システムの中で起こります。 次に示すのは、Solaris 2.x 用に TCP パラメータを設定するシェル・スクリプトの例です。 #!/bin/sh -x /usr/sbin/ndd -set /dev/tcp tcp_conn_req_max_q 10240 /usr/sbin/ndd -set /dev/tcp tcp_conn_req_max_q0 10240 /usr/sbin/ndd -set /dev/tcp tcp_xmit_hiwat 32768 /usr/sbin/ndd -set /dev/tcp tcp_recv_hiwat 32768 /usr/sbin/ndd -set /dev/tcp tcp_time_wait_interval 1000 Oracle9iAS Web Cache のデフォルト・ポート インストール時に、Oracle9iAS Web Cache は、次のデフォルト TCP ポートを使用するように構成されます。 管理: 4000 HTTP リクエスト: 1100 失効化: 4001 統計: 4002 アプリケーション Web サーバー: localhost:7777 インストールの最後に、Oracle9iAS Web Cache は起動を試みます。お使いの環境によっては(ポートの競 合、ファイル/ディレクトリの権限など)、Oracle9iAS Web Cache Admin Server または Cache Server が起動 に失敗することがあります。 デフォルト管理ポートが実行中の他のアプリケーションによってすでに使用されているために、Admin Server が起動できなかった場合は、$ORACLE_HOME/webcache/webcache.xml の中の管理ポートを変更する 必要があります。まず、次の行を検索してください。 <LISTEN IPADDR="ANY" PORT="4000" PORTTYPE="ADMINISTRATION"/> この "4000" を未使用のポート("3999"など)に変更します。それから、次のように実行して、Admin Server と Cache Server を起動します。 $ORACLE_HOME/webcache/bin/webcachectl start 注意: Oracle9iAS Web Cache 構成ファイルを直接編集する必要があるのは、この場合のみです。この唯一の 状況を除いて、決して構成ファイルを編集しないでください。 Admin Server は起動しているのに、Cache Server が起動できなかった場合は、ブラウザで http://<hostname>:<admin port>/にアクセスして、Cache Server を再構成してください。その後、WWW の管 理ページから Cache Server を起動します。 上記のポート設定が 1 つでもインストール済みコンピュータの既存設定と競合する場合は、 http://<hostname of the installed computer>:<administration port>/で再構成してください。たとえば、Oracle9iAS Web Cache が server1 という名前のコンピュータにインストールされている場合、http://server1:4000/で再構成することが できます。 管理ポートを再構成した後に、Oracle9iAS Web Cache Admin Server を再起動する必要があることに注意して ください。他のポートの再構成後も、Oracle9iAS Web Cache の Cache Server を開始する必要があります。 UNIX で Admin Server を再起動するには、次のコマンドを実行します。 $ORACLE_HOME/webcache/bin/webcachectl stop $ORACLE_HOME/webcache/bin/webcachectl start 第6章 Oracle9iAS Web Cache 83 Oracle9iAS Web Cache 使用法の例 Oracle9iAS Web Cache の使用法の例は、 $ORACLE_HOME/webcache/examples/readme.examples.html を参照してください。 1024 以下のポートをリスニングするための Oracle9iAS Web Cache の構成方法 ほとんどの UNIX プラットフォームで、ルート権限を持たないプロセスは、1024 以下のポートでリスニン グすることができません。Oracle9iAS Web Cache が通常のポート 80 などの 1024 以下のポートでもリスニ ングできるように構成し、しかも、Oracle9iAS Web Cache がルート権限をもったまま稼動し続けないよう にするために、次の手順に従ってください。 1. Web Cache Manager によって、プロセスの識別情報を、たとえば nobody/nobody などの希望する稼動プ ロセスの識別情報に変更します。また、Oracle9iAS Web Cache のリスニング・ポートを、たとえば 80 などの希望するポートに変更します。 2. ルートとしてログインします。 3. 実行可能な'webcached'の所有者を次のようにして、ルートに変更します。 $ chown root $ORACLE_HOME/webcache/bin/webcached 4. 実行可能な'webcached'のグループを、たとえば nobody などの希望する実行プロセスの識別情報のグル ープ ID に、次のように変更します。 $ chgrp <groupid> $ORACLE_HOME/webcache/bin/webcached 5. set-user-id 権限を実行可能な 'webcached' に、次のように追加します。 $ chmod a+s $ORACLE_HOME/webcache/bin/webcached 6. ルートを終了します。 7. webcachectl から、Oracle9iAS Web Cache を起動します。Oracle9iAS Web Cache が、希望するプロセス の識別情報(nobody/nobody)で希望するポートをリスニングしている必要があります。 $ $ORACLE_HOME/webcache/bin/webcachectl start Oracle9iAS Web Cache Manager の administrator パスワード紛失について Oracle9iAS Web Cache Manager の管理者ページにアクセスするには管理者ユーザ administrator のパスワード が必要です。もしパスワードを紛失して Oracle9iAS Web Cache Manager にアクセスできなくなった場合は 次の作業を行ってください。デフォルトのパスワード administrator でアクセスできるようになります。 1. 設定ファイル$ORACLE_HOME/webcache/webcache.xml を開きます。 2. <USER TYPE="MONITORING" PASSWORDHASH="XXXXXXX"/>の行を編集して<USER TYPE="MONITORING" PASSWORDHASH="-652229939"/>と書きかえます。 3. webcachectl stop コマンドと webcachectl start コマンドにより再起動を行います。 Oracle9iAS Web Cache のキャッシュルール設定時の注意 キャッシュルール設定時に、Expiration Rules を設定することができます。その場合、コマンドラインから webcache をリスタートする必要があります。Web Cache Manager からのリスタートでは Expiration Rules が 有効にならないことがありますので注意してください。 84 Oracle9i Application Server for Linux リリース・ノート Oracle9iAS Web Cache キャッシュ失効機能について(Bug#1972673) キャッシュ失効機能について Web Cache Manager から Administering Oracle Web Cache - Cache Cleanup を選択することで、キャッシュの手 動失効が行えます。しかし、失効実施後に表示される失効されたドキュメント数(Number of Objects Invalidated)が正しく表示されないことがあります。 Oracle9iAS Web Cache でサポートされないコンポーネント 本リリースでは、以下のコンポーネントは Oracle9iAS Web Cache との組合せで使用することはできません。 ・Oracle9iAS Portal ・Oracle9iAS Wireless ・Oracle9iAS Forms Service ・Oracle9iAS Reports Service ・Oracle9iAS Discoverer Basic 認証を必要とするページのキャッシュ指定について Basic 認証のページに対しキャッシュの指定を行って、Web Cache 上にページがキャッシュされると次回の アクセスから Web Cache 上からそのページが返されてしまう為、認証が行われずユーザー名、パスワード の認証なしにコンテンツにアクセスが出来てしまいます。認証を必要とするページをキャッシュしない指 定にしてください。 拡張機能 バージョン 1.0.2.1.0 の拡張機能 watchdog 機能 前出の「watchdog 機能を使用可能にする」を参照してください。 Web Cache Manager を使用して、アクセスのロギングを使用不可にすることが可能 「Administering Web Sites > Access Logging」ページでアクセス・ログを無効にできます。 注意: オンライン・ヘルプは、この新機能を反映していません。 イベント・ログは、オプションで冗長モードをサポート このモードは、使用可能にすると、通常のイベントに加えて、アプリケーション Web サーバー・リクエス トに関連するイベントのログも記録します、冗長的なイベント・ログは、デバッグの目的で使用できます が、オラクル・カスタマ・サポート・センターによって薦められた場合にのみ、使用可能にしてください。 Oracle9iAS Web Cache Manager の「Administering Oracle Web Cache > Event Logging」ページでこの冗長イベ ント・ロギングを使用可能にすることができます。 バージョン 1.0.2.3.0 の拡張機能 リクエストに対する HTTP レスポンスをキャッシュから送信するときに (いわゆるキャッシュ・ヒットの 場合)、もしこのレスポンス・オブジェクトの本文にセッションがエンコード化された URL(たとえば、 URL にセッション値のある HTML リンクなど)や、パーソナライズ属性(たとえば、ログインのユーザー 名やそのアドレス情報など)があり、これらのセッション値やパーソナライズ属性のいずれかの代入値が リクエストに存在しない場合、WebCache 1.0.2.2.0 以前のバージョンは、このリクエストを、キャッシュ・ ミスとみなし、キャッシュ・オブジェクトを使用せずにバックエンドのアプリケーション Web サーバーに 第6章 Oracle9iAS Web Cache 85 レスポンスをリクエストします。バージョン 1.0.2.3.0 の WebCache は、この代入において、可能なかぎり の代入処理をして、欠けているパーソナライズ属性/セッション値は、そのまま空にしておきます。したが って、このリクエストは、キャッシュ・ヒットになります。この機能を使用できなくする場合、すなわち、 必要なすべてのパーソナライズ属性/セッション値がリクエストに存在することをキャッシュ・ヒットの必 須条件とする場合は、それらのパーソナライズ属性/セッション値を、セッションとして定義して、そのよ うなリクエストに対するルールを Oracle9iAS Web Cache Manager の「Administering Web Sites > Session Related Caching Rules」項目で定義する必要があります。そのルールでは、リクエストにセッション値が含 まれている場合にのみレスポンスがキャッシュ可能になるように指定します。 バージョン 2.0.0.1 の拡張機能 キャッシュされたオブジェクトの TOP100 のリスト Oracle9iAS Web Cache では、キャッシュで最もよく参照されたオブジェクトのトップ 100 のリストを見る ことができます。トップ 100 のオブジェクトを見るためには、次のステップを実行してください。 Web Cache Manager を開始してください。 ブラウザで次の URL を入力してください: http://web_cache_hostname:Admin_Port/webcacheadmin?SCREEN_ID=CGA.Top100&ACTION=Show Web Cache Manager は、キャッシュが最後に開始されてからのキャッシュ中のトップ 100 のオブジェクトを リストする、オブジェクト・スクリーンを表示します。ディスプレイ中のカラムは次の意味を表します。 Rank:1 から 100 までのオブジェクトのスコアに基づいたランキング。 「1」のランクは最も高いスコアのオブジェクト、つまり最もよく参照されたオブジェクトを表します。 Object Name:オブジェクトの URL。URL は、クッキーかセッション情報のような 付加的な情報を含んでい る場合があります。 Score:ドキュメンテーションが Web Cache に置かれてから要求された回数によって決定されるオブジェク トの点数。 Size:オブジェクトのサイズ。 サイズは、バイト、キロバイト(K)あるいはメガバイト(M)で表わされます。 キャッシュされたコンテンツのリスト Web Cache Manager で、現在キャッシュ中のオブジェクトのすべての URL のリストを生成することができ ます。これは、指定したキャッシュビリティ・ルールが保存されて、望むオブジェクトをキャッシュして いることを確認するのに役立ちます。Web Cache のパフォーマンスを維持するために、非ピーク時間にこ のオペレーションを実行するように注意してください。 テキストファイルに URL のリストを書いている間、 パフォーマンスは多少低下するかもしれません。Web Cache の内容のリストを生成するとき、Web Cache Manager はテキストファイルに URL を書き出します。 リストを生成するためには、次のステップを実行してください。: Web Cache Manager を開始します。 ブラウザに次の URL を入力してください: http://web_cache_hostname:Admin_Port/webcacheadmin?SCREEN_ID=CGA.CacheDump&ACTION=S how 86 Oracle9i Application Server for Linux リリース・ノート Web Cache Manager はキャッシュ・コンテンツ・ページを表示します。このページは URL を書くファイル をリストします。デフォルトでは、ファイルは Web Cache ログ・ディレクトリに書かれ、webcache_contents.txt と命名されます。 "Submit"をクリックします: Oracle9iAS Web Cache は、テキストファイルに URL のリストを書きます。リストを生成するごとに、既存 のファイルにデータが追加されます。それは、現在キャッシュされているオブジェクトの URL の後に続け て、ファイルに追加れた日付をリストします。 次の例は、webcache_contents.txt ファイルの抜粋を示します: Cache Contents at Wed Apr 11 11:47:03 2001 /images/lnav/lnav_products.gif /images/rnav/rnav_red_line_1.gif /images/bullets_and_symbols/blk_line_bullet_10.gif . . . Cache Contents at Wed Apr 11 13:01:24 2001 /images/white_spacer_xp.gif /images/white_spacer.gif /images/miniappsnet.gif Oracle9iAS Web Cache の Watchdog 機能 Oracle9iAS Web Cache には、Admin Server と Cache Server の 2 つの主要なコンポーネントがあります。Admin Server は、管理タスクを処理し、Cache Server は、キャッシングと HTTP リクエストの処理を行います。ま た、Admin Server には、watchdog 機能があり、Cache Server の起動状態の確認を行ないます。Cache Server が動作していない場合は、Watchdog は Cache Server を起動させます。 Admin Server プロセスは起動時に、Watchdog プロセスを起動させます。Watchdog プロセスは指定された間 隔で、指定された URL にリクエストを送ることによって Cache Server の動作確認を行います。それが Cache Server に接続することができない場合、あるいは Cache Server が指定された時間内に応答しない場合、 Watchdog プロセスは Cache Server を再起動します。 Watchdog プロセスには、以下のような属性を指定することができます。 ENABLE: Enables the watchdog process. Accepted values are: YES NO 初期値は NO です。 PINGINTERVAL:Cache Server の動作確認を行う秒間隔。初期値は 5 秒です。 PINGTIMEOUT:Watchdog プロセスが Cache Server の応答を待つ秒数。初期値は 5 秒です。 PINGURL:Watchdog プロセスが Cache Server の動作確認をするための URL。初期値は「/」です。 Cache Server が、有効なアプリケーション Web サーバーで構成されていない場合、Watchdog 機能の ping 動作は毎回失敗し、その結果、イベント・ログにエラーを出力します。これを止めるためには、有効なア プリケーション Web サーバーを構成するか、または、管理者ページ(http:// <hostname>:<admin port>/ ) から Cache Server を停止してください。 第6章 Oracle9iAS Web Cache 87 このリリースでは、初期値を変更するために webcache.xml ファイルを編集しなければなりません。ファイ ルは次のディレクトリに位置します: $ORACLE_HOME/webcache Watchdog プロセスの属性の値を指定するために次のフォーマットを使用します: <WATCHDOG [ENABLE =value] [PINGINTERVAL =value] [PINGTIMEOUT =value] [PINGURL =value] /> フォーマットでは、次のシンタックス・ルールに注意してください: 属性名および「ENABLE」の値は大文字でなくてはなりません。 各値はダブル・コーテーション・マーク(”)で囲まれます。 空白は引用された値の中で、あるいは引用符と値の間で許可されません。 空白は開いた鍵括弧(<)と要素名「WATCHDOG」の間で許可されません。 空白はエレメントのの終わりのスラッシュ(/)と鍵括弧(>)の間で許可されません。 例外は、このリスト中で注意されるように、余白(タブと newlines を含んで)が許可されます。 例えば、下記は有効です: <WATCHDOG PINGINTERVAL ENABLE "YES" = "5" = /> 属性は任意の順にリストすることができます。 WATCHDOG 要素は webcache.xml ファイル中の最後のエレメントです。 例えば、Watchdog プロセスが 8 秒ごとに Cache Server を確認し、10 秒間 Cache Server の応答を待つこと を定義するためには、webcache.xml ファイルの中の次の行を使用します: <WATCHDOG ENABLE="YES" PINGINTERVAL="8" PINGTIMEOUT="10" PINGURL="/" /> キャッシュのヒット/ミス キャッシュのヒット ミス Oracle9iAS Web Cache により、キャッシュにリクエストされた各ドキュメントに対し、キャッシュ・ヒッ トまたはキャッシュ・ミスの情報が HTTP レスポンス・メッセージの Server レスポンス・ヘッダー・フィ ールドに追加されます。 例えばキャッシュ・ミスのレスポンスのサーバー・ヘッダー・フィールドは以下のようになります。 Server: Oracle9iAS Web Cache/2.0.0.1.0 M / Apache/1.3.12 (Unix) (Red Hat/Linux) “Oracle9iAS Web Cache/2.0.0.1.0”の後の M はキャッシュミスを示します。 H はキャッシュ・ヒット、S は失効後のキャッシュ・ヒットを示します。 リスニングの保留/再開 リスニングの保留 再開 Oracle9iAS Web Cache は、すべてのキャッシュのリスニング・ポート(管理、統計あるいは失効ポートを含 まない)に関する HTTP リクエストを保留し再開することを可能にします。これは、フロントエンド・クラ イアントへのキャッシュを停止したいが、Cache Server のメインメモリのキャッシュ内容を失いたくない場 合に役立ちます。 88 Oracle9i Application Server for Linux リリース・ノート 例えば、Web Cache の前にロードバランサを配置している場合、一時的に HTTP をキャッシュに送信した くなければ、ロードバランサを再構成する代わりにこの機能を使用することで、キャッシュ内容を維持す ることができます。 Web Cache のリスニング・ポートすべて (管理、失効、統計ポート以外)を保留するには、ブラウザに以下 の URL を入力してください。 "http://<cache host>:<statistics port>/stop_listen" Web Cache のリスニング・ポートすべての再開(管理、失効、統計ポート以外)を再開するには、ブラウザに 以下の URL を入力してください。 "http://<cache host>:<statistics port>/start_listen". 第6章 Oracle9iAS Web Cache 89 第7章 Edge Side Includes の JESI タグ この章では、OracleJSP で提供される JESI(Edge Side Includes for Java)のタグ・ライブラリについて説明し ます。これらのタグは Edge Side Includes(ESI)フレームワークを包括し、JSP アプリケーションの ESI キ ャッシング機能を提供します。 この章には、次のトピックが含まれています。 Edge Side Includes テクノロジおよび処理の概要 JESI 機能の概要 OracleJSP JESI タグの説明 Edge Side Includes テクノロジおよび処理の概要 この項では、OracleJSP JESI タグの基礎となる基本的なテクノロジの一部についてのバックグラウンド情報 を提供します。 JSP ページの動的コンテンツをキャッシュ可能なコンポーネントに分割する JESI タグは、 Edge Side Includes アーキテクチャおよび ESI マークアップ言語に基づいています。 JESI タグの仕様は特定の ESI プロセッサまたはキャッシング・システムに依存しているわけではありませ んが、ほとんどの OracleJSP 顧客は Oracle9iAS Web Cache およびその ESI プロセッサを使用するものとみ なしてよいでしょう。 この項では、次のトピックを説明します。 Edge Side Includes テクノロジ Oracle9iAS Web Cache および ESI プロセッサ ここでは ESI アーキテクチャと言語の簡単な概要についてのみ説明します。ESI テクノロジの詳細は、次の Web サイトを参照してください。 http://www.edge-delivery.org Edge Side Includes テクノロジ この項では、ESI テクノロジの特長および ESI"サロゲート"(代理)の概念について紹介します。 ESI の概要 Edge Side Includes は XML 形式のマークアップ言語で、元の Web サーバーから離れた場所(ネットワーク の"エッジ")での動的コンテンツの組立てを可能にします。また、Web キャッシュや Content Delivery Networks(CDN)など使用可能なツールの利点を活用して、エンド・ユーザーへのパフォーマンスを向上 することを目的として設計されています。 ESI では、ESI 言語を認識し、Web サーバーの代理で動作する、サロゲートまたはリバース・プロキシと呼 ばれる中間サーバーの利用を促進することで、Web サーバーおよびアプリケーション・サーバーのロード を削減します。ESI コンテンツの処理は、コンテンツが元の Web サーバーを離れてエンド・ユーザーのブ ラウザに表示されるまでの間に行われます。サロゲートは HTTP ヘッダーを介して指令を受けます。この ようなサロゲートを"ESI プロセッサ"と呼び、Web キャッシュ機能の一部として含めることが可能です。 ESI では部分ページ・キャッシングの方法論が採用されており、Web ページの各動的部分を個別にキャッ シュし、適切に抽出できるようにします。 ESI マークアップ・タグを使用すると、開発者は集計 Web ページおよびキャッシュ可能コンポーネントを 定義することができ、ESI プロセッサは必要に応じて HTTP クライアントでの表示用にこれらの抽出および 組立てを行います。エンド・ユーザーが指定する URL に関連付けられたリソースである集計ページは、ESI タグで指定される抽出および組立て指示を含む組立コンテナと考えることができます。 90 Oracle9i Application Server for Linux リリース・ノート 注意: JESI ユーザーは、ESI タグを直接使用する必要がない(また通常は使用しようとしない)ことに注 意してください。JESI タグ・ハンドラが JESI タグを ESI タグに変換します。 サロゲートについて サロゲートはページ・コンテンツが保持される Web サーバーの代理として動作するため、コンテンツ所有 者は動作を十分に制御できます。このようにして、他の方法では実現できないパフォーマンス向上の大き な可能性が提供されます。 サロゲートのキャッシング・プロセスは、一般的な HTTP のキャッシング・プロセスと同様のフレッシュ および検証メカニズムをベースに動作します。ただし、サロゲートには別の制御メカニズムが追加されて います。 主要な ESI 機能 ESI 言語のバージョン 1.0 には、次のような主要エリアに関する機能があります。 組込み ESI プロセッサは、ネットワークから抽出された動的コンテンツのフラグメントを集計ページに組み 立ててユーザーに出力します。各フラグメントは、それぞれのキャッシング動作を制御する独自のメ タデータを持ちます。 変数のサポート ESI は、 HTTP 要求属性に基づいた変数の使用をサポートします。 ESI 文は処理中に変数を使用するか、 または処理済のマークアップに変数を直接出力することができます。 条件処理 ESI では、ページの処理方法を決定する際に条件ロジックにブール比較を使用できます。 エラー処理および代替処理 一部の ESI タグは、 プライマリ・リソースが検出できない場合は代替 Web ページなどの代替リソース、 またはデフォルト・リソース(あるいはその両方)の指定をサポートします。 Oracle9iAS Web Cache および ESI プロセッサ この項では、Oracle9iAS Web Cache とその ESI プロセッサの概要を説明します。詳細は、Oracle9i Application Server ドキュメンテーション・ライブラリの『Oracle9iAS Web Cache 管理および配置ガイド』を参照してく ださい。 Oracle9iAS Web Cache の概要 オラクルでは、E-Business における Web サイトのパフォーマンスの問題解決を支援する Oracle9iAS Web Cache を提供しています。Oracle9iAS Web Cache はコンテンツ対応サーバー・アクセラレータ、すなわちリ バース・プロキシで、Oracle9i Application Server 上で稼働する Web サイトのパフォーマンス、スケーラビ リティおよび可用性を改善します。 Oracle9iAS Web Cache は頻繁にアクセスされる URL をメモリに格納することで、アプリケーション・サー バーでこれらの URL に対する要求を繰り返して処理する必要性をなくします。静的ドキュメントのみを処 理する従来のプロキシ・サーバーと異なり、Oracle9iAS Web Cache は 1 つ以上のアプリケーション Web サ ーバーの静的コンテンツおよび動的に生成されたコンテンツの両方をキャッシュします。より頻繁なキャ ッシュ・ヒットにより、Oracle9iAS Web Cache は従来のプロキシ以上のパフォーマンス拡張を提供し、ア プリケーション・サーバーのロードを大幅に削減します。 概念的には、Oracle9iAS Web Cache はアプリケーション Web サーバーの前面に位置し、コンテンツをキャ ッシングしてそのコンテンツを要求元の Web ブラウザに提供します。Web ブラウザが Web サイトにアク セスすると、 ブラウザは HTTP プロトコルまたは HTTPS プロトコル要求を Oracle9iAS Web Cache に送信し、 Oracle9iAS Web Cache はアプリケーション Web サーバーの仮想サーバーとして機能します。要求されたコ ンテンツが期限切れだったり、失効されたりしてアクセス不能である場合、Oracle9iAS Web Cache はアプ 第7章 Edge Side Includes の JESI タグ 91 リケーション・サーバーから新規コンテンツを抽出します。アプリケーション・サーバーは、コンテンツ を Oracle データベースから抽出する場合もあります。 Web Cache 使用方法のステップ 標準的なブラウザと Oracle9iAS Web Cache の対話ステップは、次のとおりです。 1. ブラウザが企業の Web サイトに要求を送信します。 この要求は、次に Web サイトの IP アドレスに対する Domain Name System(DNS)への要求を生成し ます。 2. DNS は Oracle9iAS Web Cache の IP アドレスを返します。 3. ブラウザは、Web ページに対する要求を Oracle9iAS Web Cache に送信します。 4. 要求されたコンテンツがキャッシュにある場合は、Oracle9iAS Web Cache がコンテンツを直接ブラウ ザに送信します。これはキャッシュ・ヒットと呼ばれます。 5. Oracle9iAS Web Cache に要求されたコンテンツがない場合、あるいはコンテンツが失効または無効で ある場合、Web キャッシュは要求をアプリケーション・サーバーに渡します。 6. アプリケーション・サーバーは、Oracle9iAS Web Cache を介してコンテンツを送信します。 7. Oracle9iAS Web Cache がクライアントにコンテンツを送信し、キャッシュにページのコピーを作成し ます。 注意: キャッシュに格納されたページは、ページが失効または期限切れになったときに削除されます。 Oracle9iAS Web Cache ESI プロセッサ Oracle9iAS Web Cache リリース 2.0.0.0 には、キャッシングで Edge Side Includes マークアップ言語の使用を サポートする ESI プロセッサが含まれています。(8-2 ページ「Edge Side Includes テクノロジ」を参照。) Oracle9iAS Web Cache 環境の Web 開発者は、アプリケーションで ESI 言語を直接使用できます。ただし、 OracleJSP 開発者からすれば、ESI 言語への便利な JSP インタフェースとして提供される JESI タグ・ライブ ラリを使用する理由はいくつかあります。(「JESI タグを使用する理由」を参照。) JESI 機能の概要 この項では、次のトピックを含む JESI 機能および OracleJSP 実装の概要を説明します。 JESI タグを使用する理由 OracleJSP によって実装される JESI タグの概要 JESI 使用方法モデル ページの失効化 ページのパーソナライズ JESI 仕様には、次の Web サイトでアクセスできます。 http://www.edge-delivery.org JESI タグを使用する理由 OracleJSP では、ESI タグへの便利なインタフェースとして JESI タグ・ライブラリが、また Web キャッシ ングに Edge Side Includes 機能が提供されます。開発者はオプションで ESI タグを任意の Web アプリケーシ ョンに直接使用できますが、JESI タグは JSP 環境に利便性を提供します。ESI タグを直接使用するかわり に JESI タグを使用する主な利点は、次のとおりです。 標準 JSP フレームワークおよび便利な機能 92 Oracle9i Application Server for Linux リリース・ノート JSP ページの使用または JSP IDE 環境での作業に慣れている開発者は、JESI タグで使い慣れた便利な JSP プログラミング機能を使用できます。たとえば、完全な URL またはファイル・パスのかわりにペ ージ関連またはアプリケーション関連の構文に含まれるページを参照できます。 JESI ショートカット構文 JESI タグは、必要に応じて明示的にページを失効化したり、Cookie 情報を使用してページをパーソナ ライズすることで、メタデータ情報(キャッシュされたページの有効期限など)を指定する便利な構 文およびタグ属性をサポートします。 アプリケーション・レベルの構成ファイル JESI タグ・ライブラリは、特定の環境に合わせた配置時パラメータおよびアプリケーションのデフォ ルト設定を便利に指定できるように、アプリケーション・レベルの構成ファイルを使用できます。こ のようにすると、多様なニーズを持つ異なる環境での配置を行い、アプリケーション・コードを変更 せずに適切なデフォルト値を設定することができます。 たとえば、無効化要求に対するキャッシュ・サーバーURL、ユーザー名およびパスワードを事前設定する 構成ファイルを使用できます。 OracleJSP によって実装される JESI タグの概要 標準 JavaServer Pages タグ・ライブラリ実装である OracleJSP JESI タグ・ライブラリは、 OracleJSP の ojsputil.jar ファイルに含まれています。(OracleJSP ファイルの詳細は、「ファイルの要約」を参照。) JESI の OracleJSP 実装は、標準 ESI フレームワークの上から行われます。 JESI タグ・ライブラリは標準実装であるため、次の点に注意してください。 任意の標準 JSP 環境で使用できます。OracleJSP コンテナには依存しません。 このドキュメントでは Oracle9iAS Web Cache およびその ESI プロセッサについて特に説明しています が、 JESI タグ・ライブラリは特定のキャッシング環境または特定の ESI プロセッサには依存しません。 OracleJSP JESI タグ・ライブラリは次のタグをサポートします。 jesi:control、jesi:include、jesi:template および jesi:fragment−ページの設定およびコンテンツ jesi:invalidate(およびサブタグ)−キャッシュ・オブジェクトの必要に応じた明示的な無効化 jesi:personalize−ページのパーソナライズ タグ・ライブラリには、次のものが含まれています。 これらのタグのタグ・ハンドラ・クラス これらのタグの標準タグ・ライブラリ記述ファイル(TLD) JSP 開発者は、対応する ESI タグ(esi:include など)のかわりにこれらのタグ(jesi:include など)を使用し ます。この有用性と利便性については、「JESI タグを使用する理由」で前述しています。 OracleJSP JESI タグ・ライブラリは標準ライブラリです。標準 JavaServer Pages タグ・ライブラリ・フレー ムワークの一般的な情報は、「標準タグ・ライブラリ・フレームワーク」を参照してください。 JESI 使用方法モデル 集計ページおよびそのキャッシュ可能なコンポーネントを定義するための JESI タグの使用方法モデルは、 2 つ存在します。 control/include モデル template/fragment モデル この項ではこれらのモデルを説明し、最後に jesi:include タグの特別な注意について説明します。 第7章 Edge Side Includes の JESI タグ 93 control/include モデル JESI タグ・アプローチの 1 つはモジュラー・アプローチで、通常はほとんど(あるいはすべて)のキャッ シュ可能コンテンツをインクルードされたページとして集計ページに含めます。jesi:control タグを使用して キャッシング・パラメータを設定し、jesi:include タグで動的コンテンツを移入します。 タグは両方ともオプションですが、状況に応じて異なります。デフォルト・キャッシュ設定が十分であれ ば、jesi:control タグは省略できます。また、jesi:include タグなしの jesi:control タグを持つこともできます。 実際、これは既存ページを JESI で使用するために変換する最も簡単な方法です。 各インクルード・ファイルは固有のキャッシュ可能オブジェクトであり(キャッシングはタグ設定によっ て無効な場合があります)、集計ページの追加コンテンツも固有オブジェクトとなります。 このドキュメントでは、このモジュラー・アプローチを control/include モデルと言います。新規ページを開 発する場合に特に役立つアプローチです。 注意: 集計ページの jesi:control タグはインクルード・ページに影響しません。独自の jesi:control タグのな いインクルード・ページは、デフォルトのキャッシュ設定を使用します。 タグの構文と例については、次の項を参照してください。 「JESI control タグ」 「JESI include タグ」 「例−control/include モデル」 template/fragment モデル もう一方の JESI タグ・アプローチはコンテンツが集計ページそれ自身であるアプローチで、ページは必要 に応じてキャッシュ可能な別個のフラグメントに分割されます。 jesi:template タグを使用して、すべてのキャッシュ可能コンテンツの集計を囲みます。このタグは集計ペー ジのキャッシング・パラメータ(フラグメント外部のすべて)を設定します。それ以外はデフォルト設定 が使用されます。必要に応じて jesi:fragment タグを使用して、別個にキャッシュされる集計内のフラグメ ントを定義してください。集計ページと同じように、フラグメントはキャッシング・パラメータを設定す るか、あるいはデフォルト設定を使用できます。 オプションで、テンプレート・レベルまたはフラグメント・レベルで jesi:include タグを使用できます。 jesi:template タグおよび jesi:fragment タグは常に一緒に使用されます。ページの別個のフラグメントが必要 ない場合は、jesi:template のかわりに jesi:control を使用してください。 各フラグメントは固有のキャッシュ可能オブジェクトであり、フラグメント外部のテンプレート・レベル の動的コンテンツは固有のキャッシュ可能オブジェクトです。 このドキュメントでは、前述のシナリオを template/fragement モデルと言います。既存ページを JESI で使用 するために変換する場合に特に便利なモデルです。 タグの構文と例については、次の項を参照してください。 「JESI template タグ」 「JESI fragment タグ」 「JESI include タグ」 「例−template/fragment モデル」 JESI include に関する注意 いずれのモデルを使用する際も、jesi:include 文について次の点に注意してください。 ネストされた"インクルード"は、独自の jesi:include 文を持つページを含む jesi:include 文として、ある いは jesi:fragment で定義されたフラグメント内部の jesi:include 文としてサポートされます。 94 Oracle9i Application Server for Linux リリース・ノート 後者の場合、たとえば ESI プロセッサは集計ページのコンテンツ、フラグメントのコンテンツ、フラ グメント内のインクルード・ページのコンテンツの順番で要求を行います。 jesi:include および jsp:include は概念的には類似していますが、JSP ページをキャッシング用に変換する 場合は jesi:include は jsp:include の完全な代替とはなりません。ESI プロセッサは別個の HTTP 要求を 使用するため、HTTP 要求または応答オブジェクトを集計ページと jesi:include タグを介してインクル ードされるページ間で渡すことはできません。インクルード・ページのコードが集計ページの要求ま たは応答オブジェクトにアクセスする必要がある場合は、インクルード・ページ内ではなく、 jesi:fragment タグ(集計ページの jesi:template タグ内部)にコードを配置できます。 ページの失効化 データベースの関連データに対する変更など、外的要因からキャッシュされたオブジェクトを明示的に失 効化しなければならない状況が生じることがあります。また、1 つのページを実行することで、他のページ に対応するキャッシュ・オブジェクトのデータが失効化されることもあります。 このため、JESI 仕様では jesi:invalidate タグおよびいくつかのサブタグが用意されています。これらのタグ を使用すると、次のような適切な組合せに基づいてページを失効化することができます。 完全 URI または URI 接頭辞 Cookie の名前と値のペア(オプション) HTTP/1.1 要求ヘッダーの名前と値のペア(オプション) 失効化メッセージは XML ベース・フォーマットで、失効化される URL を指定します。これらのメッセー ジは、HTTP の POST メソッドによってキャッシュ・サーバーに転送されます。その後、キャッシュ・サー バーは失効化の応答を HTTP で返します。 タグの構文と例については、8-21 ページ「ページの失効化タグおよびサブタグの説明」を参照してくださ い。 ページのパーソナライズ 動的 Web ページは、ユーザーそれぞれに合わせてパーソナライズされた情報を頻繁に表示します。たとえ ば、ウェルカム・ページにはユーザーの名前と特別な挨拶、またはユーザーが所有する現在の株価などが 表示されます。 このようなカスタマイズ出力では、Web ページは Cookie 情報に依存します。ESI プロセッサにこの依存性 を通知する特別なタグがないと、Web ページは ESI レベルで複数ユーザーで共有できません。 タグの構文と例については、8-27 ページ「ページのパーソナライズ・タグの説明」を参照してください。 OracleJSP JESI タグの説明 この項では、OracleJSP で提供される JESI タグの構文と属性について説明し、続いて使用例を説明します。 説明は次のカテゴリに編成されています。 構文における記号の表記および注意事項 ページの設定およびコンテンツ・タグの説明 ページの無効化タグおよびサブタグの説明 ページのパーソナライズ・タグの説明 JESI タグ処理および JESI から ESI への変換 OracleJSP JESI タグ・ライブラリ記述ファイル 構文における記号の表記および注意事項 タグ記述の構文ドキュメントでは、次の点に注意してください。 第7章 Edge Side Includes の JESI タグ 95 イタリックは、値または文字列を指定する必要があることを示します。 オプション属性は、大カッコ([...])で囲みます。 一部のオプション属性のデフォルト値は、太字 太字で示されます。 太字 属性の指定方法における選択肢は、垂直線( | )で分けられます。 接頭辞"jesi:"を使用します。これは慣例であり、必須ではありません。taglib ディレクティブでは、任 意の接頭辞を指定できます。 JESI タグの属性に値または文字列を指定する場合は、適切な値または文字列に解決する JSP 式もサポ ートされます。 注意: デフォルト設定(デフォルト保持期間など)は ESI プロセッサによって決定されます。Oracle9iAS Web Cache ESI プロセッサの場合、デフォルト設定は Oracle9iAS Web Cache 構成ファイルによって 決定されます。 ページの設定およびコンテンツ・タグの説明 この項では次のタグの使用を要約し、タグの構文と属性を示します。 jesi:control jesi:include jesi:template jesi:fragment また、この項では control/include モデルと templage/fragment モデルの両方の例も提供されます。 ページの設定および使用方法モデルの要約 「JESI 使用方法モデル」で説明したように、JSP ページで JESI タグを使用するには 2 つのシナリオがあり ます。 control/include−ページにキャッシュ設定を指定するには jesi:control タグを使用し、別個のキャッシュ 可能(またはタグ設定に応じてキャッシュ不可能)オブジェクトである動的ページを移入するには jesi:include タグを使用します。 template/fragment−キャッシングを設定して集計ページのキャッシュ設定を指定するには jesi:template タグを使用し、集計ページ内で個別のキャッシュ可能(またはキャッシュ不可能)オブジェクトを指 定するには jesi:fragment タグを使用します(必要に応じて代替キャッシュ設定を指定)。フラグメン ト内部またはテンプレート全体内でも jesi:include タグを使用できます。 JESI control タグ jesi:control タグは、 control/include 使用方法モデルの JSP ページのキャッシング特性を制御します。 jesi:control タグは集計ページまたは任意のインクルード・ページで使用できますが、必須ではありません。デフォル トのキャッシュ設定で十分であれば、jesi:control タグなしで jesi:include タグを使用できます。(「JESI 使 用方法モデル」を参照。)対応する HTTP ヘッダーがエッジ・アーキテクチャ仕様に従って設定されます。 jesi:control タグは、他の JESI タグまたはページのバッファ・フラッシュより前に可能なかぎりページの始 めに表示する必要があります。 次の点に注意してください。 単一 JSP ページで複数の jesi:control タグを使用しないでください。例外が発生します。 同一ページで jesi:control タグおよび jesi:template タグを使用しないでください。例外が発生します。 集計ページの jesi:control タグはインクルード・ページに影響しません。必要に応じて(デフォルトの 制御設定が十分でない場合に)、各インクルード・ページに jesi:control タグを使用してください。 96 Oracle9i Application Server for Linux リリース・ノート 構文 <jesi:control [expiration = " value"] [maxRemovalDelay = " value"] [cache = "yes | no | no-remote"] /> 注意: JESI 仕様では、jesi:control タグの control 属性が含まれます。この属性は ESI コントロール・ヘッダ ーのパラメータを直接設定するためのものです。ただし、現行の Oracle 実装はコントロール・ヘッ ダーmax-age パラメータのみの設定をサポートしています。この設定は不要ですが、jesi:control の expiration および maxRemovalDelay 属性を設定しても同じことができます。したがって、このリリー スでは control 属性については説明しません。(将来のリリースでは追加 ESI コントロール・ヘッダ ーのパラメータ設定もサポートする予定で、control 属性についても説明されます。) 属性 expiration−キャッシュされたオブジェクトの存続期間を秒単位で指定します。デフォルトでは、オブ ジェクトは期限切れになりません。 maxRemovalDelay−キャッシュされたオブジェクトの期限切れ後に ESI プロセッサがそのオブジェク トを格納できる最大時間を秒単位で指定します。デフォルトは 0 で、すぐに削除されます。 cache−ページに対応するオブジェクトがキャッシュ可能かどうかを指定します。デフォルトは TRUE ですが、cache を明示的に yes に設定することもできます。または、キャッシュ可能にしないページに は no を設定するか、あるいは(リモート Web サーバーまたはコンテンツ転送ネットワークに対する ものとして)ローカルにのみキャッシュ可能にするページには no-remote と指定できます。 ページをキャッシュ可能にしない 1 つの理由として、copyparam を有効にした jesi:include タグを使用 する場合があります。次の「JESI include タグ」を参照してください。 JESI include タグ jesi:include タグは、標準の jsp:include タグと同じようにインクルード・ページの出力を集計ページの出力に 動的に挿入します。さらに、インクルード・ページが ESI プロセッサによって処理および組み立てられる ように指示します。各インクルード・ページは個別のキャッシュ可能(タグ設定によってはキャッシュ不 可能)オブジェクトです。 このタグは、次のシナリオのいずれかで control/include および template/fragment 両方のモデルで使用できま す。 JESI control タグまたは JESI template/fragment タグなしで単独使用 jesi:control タグの後に使用 フラグメント外部の jesi:template タグ内で使用 jesi:template タグ内で使用 (「JESI 使用方法モデル」を参照。) jesi:include タグは使用方法において jsp:include タグと似ていますが、セマンティクスが異なるので要求や応 答オブジェクトを元のページとインクルード・ページ間に渡す必要のあるページ組込みには適していませ ん。 構文 <jesi:include page = "uri_string" [alt = "alt_uri_string"] [ignoreError = "true | false"] [copyparam = "true | false"] [flush = "true | false"] /> 第7章 Edge Side Includes の JESI タグ 97 属性 page(必須)―ページ関連またはアプリケーション関連の構文いずれかを使って JSP ページの URI を 含めることを指定します。(ページ関連構文およびアプリケーション関連構文の詳細は、「JSP ペー ジの間接要求」を参照してください。"http://..."または"https://..."の完全 URL もサポートされます。 alt−page 属性で指定されたページにアクセスできない場合に、代替ページの URI が含まれることを指 定します。構文は page 属性のものと同じです。 ignoreError−インクルード・ページに(page ページも alt ページも)アクセスできない場合でも、集計 ページの処理を続行する場合には TRUE に設定します。 copyparam−インクルード・ページに含めるページの HTTP 要求文字列からパラメータおよびその値を コピーする場合は TRUE に設定します。 flush−この属性は無視されますが、jsp:include 構文からの移行を容易にするためにサポートされてい ます。 注意: 要求パラメータは要求ごとに異なる可能性があるので、キャッシュ可能でないページでのみ copyparam="true"を使用してください(jesi:control タグの cache="no")。 将来のリリースでは jesi:param サブタグもサポートされる予定で、これは jsp:include で使用され る jsp:param サブタグと概念的に類似しています。 例−control/include モデル 例− この項では、control/include モデルにおける JESI タグの使用例を提供します。 例 1: control/include 次の例では、デフォルトのキャッシュ設定が採用されています。jesi:control タグは必要がありません。 jesi:include タグは代替ファイルを指定せず、 「ファイルが見つかりません」 エラーは処理を停止します。flush 属性は使用できますが無視されます。 <%@ taglib uri="/WEB-INF/jesitaglib.tld" prefix="jesi" %> <html> <body> <jesi:include page="stocks.jsp" flush="true" /> <p> <hr> <jesi:include page="/weather.jsp" flush="true" /> <p> <hr> <jesi:include page="../sales.jsp" flush="true" /> </body> </html> 例 2: control/include この例では、jesi:control タグを使用して maxRemovalDelay および expiration のデフォルト以外のキャッシュ 設定を指定します。さらに、ページのキャッシングはデフォルトですでに有効ですが、これを明示的に有 効にします。最初の jesi:include タグは ESI プロセッサによって order.jsp が抽出できない場合の代替ページ を指定し、またどのページが抽出できない場合でも処理を続行することを指示します。2 番目の jesi:include タグは代替ページを指定せず、ページが抽出できない場合は処理も停止されます。 「例 1: control/include」で使用される HTML タグは実際には必要ではありません。 <%@ taglib uri="/WEB-INF/jesitaglib.tld" prefix="jesi" %> 98 Oracle9i Application Server for Linux リリース・ノート <jesi:control maxRemovalDelay="1000" expiration="300" cache="yes"/> <jesi:include page="order.jsp" alt="alt.jsp" ignoreError="true"/> <jesi:include page="commit.jsp" /> 例 3: control/include これは、出力が条件付きである集計ページの例です。Cookie は顧客の識別情報を表します。Cookie が見つ からない場合、ユーザーには一般的な製品情報の汎用ウェルカム・ページが表示されます。Cookie が見つ かった場合は、ユーザーにはユーザー・プロファイルに従った製品リストが表示されます。このリストは、 jesi:include 文によって移入されます。 jesi:control タグも maxRemovalDelay および expiration のデフォルト以外の値を設定して、ページのキャッシ ングを明示的に有効にします。 <%@ taglib uri="/WEB-INF/jesitaglib.tld" prefix="jesi" %> <jesi:control maxRemovalDelay="1000" expiration="300" cache="yes"/> <% String customerId=CookieUtil.getCookieValue(request,"customerid"); if (customerId==null) { // some unknown customer %> <jesi:include page="genericwelcome.jsp" /> <% } else { // a known customer; trying to retrieve recommended products from profiling String recommendedProductsDescPages[]= ProfileUtil.getRecommendedProductsDescURL(customerId); for (int i=0; i < recommendedProductsDescPages.length; i++) { %> <jesi:include page="<%=recommendedProductsDescPages[i]%>" /> <% } } %> 例 4: control/include この例は、要求パラメータと jesi:include 文の使用を示したものです。メイン・ページが次の URL でアクセ スされるものと仮定します。 http:// host:port/application1/main.jsp?p2=abc メイン・ページはパラメータ設定 p2=abc を取ります。ページは次のようになります。 <%@ taglib uri="/WEB-INF/jesitaglib.tld" prefix="jesi" %> <html> 第7章 Edge Side Includes の JESI タグ 99 <jesi:control cache="no" /> <jesi:include page="a.jsp?p1=v1" /> <h3>hello ...</h3> <jesi:include page="b.jsp" /> <h3>world ...</h3> <jesi:include page="c.jsp?p1=v2" copyparam="true" /> </html> a.jsp ページはパラメータ設定 p1=v1 を取ります。c.jsp ページは(copyparam 設定およびメイン・ページの URL の p2 設定の結果として)、設定 p1=v2 ならびに設定 p2=abc を取ります。 さらに、このページは cache="no"設定に従ってキャッシュ可能ではありません。実際、要求属性は要求ご とに変化するので、 キャッシュ可能ではないページでのみ copyparam 設定を使用するようにしてください。 また、cache="no"設定はインクルード・ページに影響を与えません。インクルード・ページはデフォルトに よりまだキャッシュ可能です。(つまり、なんらかの理由でページのいずれかに cache="no"を持つ jesi:control タグがない限りはキャッシュ可能です。) JESI template タグ jesi:template タグを使用して、template/fragment 使用方法モデルのページに対するキャッシング動作を指定 します。(「JESI 使用方法モデル」を参照。)対応する HTTP ヘッダーがエッジ・アーキテクチャ仕様に 従って設定されます。 jesi:template タグ内の開始タグと終了タグの間に jesi:fragment タグを 1 つ以上使用して、テンプレート内の 別個のキャッシュ可能フラグメントを指定します。jesi:template 開始タグは、可能なかぎりページの始めに 配置してください。このタグは、ページ内の他の JESI タグあるいはバッファ・フラッシュより前に表示さ れる必要があります。jesi:template 終了タグは、可能なかぎりページの最後に配置してください。このタグ は、ページ内の他の JESI タグより後に表示される必要があります。 集計コンテンツ(フラグメント外部)はキャッシュ可能オブジェクトであり、jesi:fragment タグと分けてお かれる各フラグメントは別個のキャッシュ可能オブジェクトです。集計コンテンツと各フラグメントに対 しては、必要に応じてキャッシング・パラメータを設定するか、あるいはデフォルト設定を使用できます。 jesi:template タグの設定は、フラグメントには影響を与えません。 jesi:template タグは常に jesi:fragment タグとともに使用されます。別個のフラグメントが必要ない場合は、 jesi:template タグのかわりに jesi:control タグを使用してください。 次の点に注意してください。 単一 JSP ページで複数の jesi:template タグを使用しないでください。例外が発生します。 同一ページで jesi:control タグおよび jesi:template タグを使用しないでください。例外が発生します。 jesi:template タグの設定は囲まれたフラグメントには影響しません。フラグメントはそれぞれの設定を 提供(あるいはデフォルトを使用)する必要があります。 jesi:template タグの属性および使用方法は、jesi:control タグと同じです。 構文 <jesi:template [expiration = "value"] [maxRemovalDelay = "value"] [cache = "yes | no | no-remote"] > ... page content, jesi:fragment tags, jesi:include tags... </jesi:template> 100 Oracle9i Application Server for Linux リリース・ノート 属性 属性の説明は、「JESI control タグ」を参照してください。 JESI fragment タグ template/fragment モデルで、jesi:template タグ内の開始タグと終了タグの間に jesi:fragment タグを 1 つ以上使 用してください。(8-8 ページ「JESI 使用方法モデルを参照」。)jesi:fragment タグは、キャッシング動作 に対する JSP コードの別個のフラグメントを必要に応じで定義します。各フラグメントは別個のキャッシ ュ可能オブジェクトです。 特定のフラグメントが ESI メカニズムによって要求されると、ESI プロセッサはそのフラグメントのみを抽 出します。 各 jesi:fragment タグは、ESI プロセッサに対するそれぞれ独自の指示を指定します。jesi:fragment タグに指 定されないキャッシュ・プロパティは、デフォルト値によって設定されます。(jesi:template タグの周囲は フラグメントに影響しません。)対応する HTTP ヘッダーがエッジ・アーキテクチャ仕様に従って設定さ れます。 jesi:fragment タグの属性および使用方法は、jesi:control タグおよび jesi:template タグと同じです。 構文 <jesi:fragment [expiration = "value"] [maxRemovalDelay = "value"] [cache = "yes | no | no-remote"] > ... JSP code fragment... </jesi:fragment> 属性 属性の説明は、「JESI control タグ」を参照してください。 例−template/fragment モデル 例− この項には、template/fragment モデルの JESI タグ使用例が含まれています。 例 1: template/fragment jesi:template タグおよび jesi:fragment タグの一般的な使用を示す例です。expiration 属性のみタグで指定され ていますので、他の設定はデフォルトに従います。 jesi:template タグでは、集計コンテンツ(フラグメント外部)の有効期限は 3,600 秒です。HTML ブロック はすべてフラグメント外部にあるので、この設定はすべての HTML ブロックに適用されます。JSP コード・ ブロック 1 は有効期限設定 60 でキャッシュされ、JSP コード・ブロック 2 はデフォルトの有効期限設定で キャッシュされます。また JSP コード・ブロック 3 は有効期限設定 600 でキャッシュされます。 <%@ taglib uri="/WEB-INF/jesitaglib.tld" prefix="jesi" %> <jesi:template expiration="3600"> ... HTML blcck #1... <jesi:fragment expiration="60"> ... JSP code block #1... </jesi:fragment> ... HTML block #2... 第7章 Edge Side Includes の JESI タグ 101 <jesi:fragment> ... JSP code block #2... </jesi:fragment> ... HTML block #3... <jesi:fragment expiration="600"> ... JSP code block #3... </jesi:fragment> ... HTML block #4... </jesi:template> 例 2: template/fragment この例は、フラグメント内部の jesi:include タグを使用します。次に、このページのキャッシュ可能オブジ ェクトを示します。 各インクルード・ページ それぞれのインクルード・ページ外部の各フラグメント すべてテンプレート・レベル(フラグメント外部)にある HTML ブロックの集計 <%@ taglib uri="/WEB-INF/jesitaglib.tld" prefix="jesi" %> <jesi:template expiration="3600"> ... HTML blcck #1... <jesi:fragment expiration="60"> ... JSP code block #1... <jesi:include page="stocks.jsp" /> </jesi:fragment> ... HTML block #2... <jesi:fragment> ... JSP code block #2... <jesi:include page="/weather.jsp" /> </jesi:fragment> ... HTML block #3... <jesi:fragment expiration="600"> ... JSP code block #3... <jesi:include page="../sales.jsp" /> </jesi:fragment> ... HTML block #4... </jesi:template> ページの失効化タグおよびサブタグの説明 jesi:invalidate タグおよび次のサブタグを適切に使用して、ESI プロセッサのキャッシュされたオブジェクト を明示的に失効化してください。 jesi:object jesi:cookie(jesi:object のサブタグ) jesi:header(jesi:object のサブタグ) 概要は、「ページの失効化」を参照してください。 102 Oracle9i Application Server for Linux リリース・ノート JESI invalidate タグ jesi:invalidate タグをその jesi:object サブタグと一緒に使用して、1 つ以上のキャッシュ・オブジェクトを明 示的に失効化できます。 サブタグは、次のように使用してください。 必須 jesi:object サブタグを使用して、URI または URI 接頭辞に従って失効化対象を指定します。 オプションで jesi:object の jesi:cookie サブタグまたは jesi:header サブタグを使用して、Cookie または HTTP ヘッダー情報に従ってさらに失効化の基準を指定します。 構文 <jesi:invalidate [url = "url_string" username = "username_string" password = "password_string"] [config = "configfilename_string"] [output = "browser"] > 必須サブタグ(「JESI object サブタグ」で説明): <jesi:object ... > jesi:object のオプション・サブタグ(「JESI cookie サブタグ」で説明): <jesi:cookie ... /> jesi:object のオプション・サブタグ(「JESI header サブタグ」で説明): <jesi:header ... /> </jesi:object> </jesi:invalidate> ユーザー、パスワードおよび URL を個別タグで指定するか、あるいはそれらすべてを config タグと呼ばれ る構成ファイルで指定します。 注意: 1 つの invalidate タグ内に複数の object タグを持つことが可能です。 属性 url−キャッシュ・サーバーの URL を指定します。この属性を省略した場合は、JESI 構成ファイルに URL を指定する必要があります。 username−キャッシュ・サーバーにログインするユーザー名を指定します。この属性を省略した場合 は、JESI 構成ファイルにユーザー名を指定する必要があります。 password−キャッシュ・サーバーにログインするパスワードを指定します。この属性を省略した場合 は、JESI 構成ファイルにパスワードを指定する必要があります。 config−JESI 構成ファイルを指定します。このファイルを使用して、対応するタグ属性を使用せずに キャッシュ・サーバーURL、ユーザー名およびパスワード情報を提供することができます。"/"で始ま るアプリケーション相対構文の位置を指定してください。(アプリケーション相対構文の一般的な情 報は、「JSP ページの間接要求」を参照してください。) output−キャッシュ・サーバーから失効化応答を受信する出力デバイスをオプションで設定します。 現在サポートされる唯一の設定は browser で、 ユーザーに Web ブラウザにメッセージが表示されます。 このパラメータを設定しない場合は、確認メッセージはまったく表示されません。 第7章 Edge Side Includes の JESI タグ 103 例: 構成ファイル url、username および password 属性のかわりに、構成ファイルを使用して URL およびログイン情報の設定 する例を示します。 <?xml version="1.0" ?> <ojsp-config> <web-cache> <url>http://yourhost.yourcompany.com:4001</url> <username>invalidator</username> <password>invpwd</password> </web-cache> </ojsp-config> JESI object サブタグ jesi:invalidate タグの必須 jesi:object サブタグを使用して、完全 URI または URI 接頭辞に従って失効化する キャッシュ・オブジェクトを指定します。このサブタグの jesi:cookie サブタグまたは jesi:header サブタグを オプションで使用して、Cookie または HTTP ヘッダー情報に基づいて失効化の基準をさらに指定します。 uri 属性設定で、完全 URI または URI 接頭辞のいずれかを指定します。このフィールドが完全 URI または 接頭辞のいずれとして解釈されるかは、prefix 属性の設定によって決まります。 構文 <jesi:object uri = "uri_or_uriprefix_string" maxRemovalDelay = "value" [prefix = "yes | no"] > オプション・サブタグ(「JESI cookie サブタグ」で説明): <jesi:cookie ... /> オプション・サブタグ(「JESI header サブタグ」で説明): <jesi:header ... /> </jesi:object> または(どちらのサブタグも使用しない場合): <jesi:object [uri = "uri_or_uriprefix_string"] [prefix = "yes | no"] [maxRemovalDelay = "value"] /> 注意: 1 つの invalidate タグ内に複数の object タグを持つことが可能です。 1 つの object タグ内に複数の cookie タグまたは header タグを持つことが可能です。 属性 uri−対応するキャッシュ・オブジェクトが失効化されるページの完全 URI(prefix="no"の場合)、ま たは場所によって失効化される複数ページのオブジェクトを指定する URI 接頭辞(prefix="yes"の場 合)のいずれかです。 接頭辞が指定されると、その場所にあるすべてのページのキャッシュ・オブジェクトが失効化されま す。たとえば、/abc/def の接頭辞設定では、対応するディレクトリおよびサブディレクトリにあるすべ てのページのキャッシュ・オブジェクトが失効化されます。 104 Oracle9i Application Server for Linux リリース・ノート prefix−uri 属性が URI 接頭辞としてのみ解釈される場合は yes に設定し、uri 属性が完全 URI として解 釈される場合は no に設定します。 maxRemovalDelay−キャッシュ・オブジェクトが失効化された後で、ESI プロセッサがそのオブジェク トを格納できる最長時間を秒単位で指定します。デフォルトは 0(ゼロ)で、すぐに削除されます。 JESI cookie サブタグ jesi:object タグ(jesi:invalidate のサブタグ)の jesi:cookie サブタグを使用して、失効化の基準として Cookie 情報を使用します。これは jesi:object タグの URI または URI 接頭辞設定の追加として、また jesi:header タ グの追加としても使用されます。 構文 <jesi:cookie name = "name_string" value = "value_string" /> 注意: 1 つの object タグ内に複数の cookie タグを持つことが可能です。 属性 name(必須)−Cookie の名前です。 value(必須)−Cookie の値です。 キャッシュ・オブジェクトを失効化するには、 この名前と値に一致する Cookie が存在する必要があります。 JESI header サブタグ jesi:object タグ(jesi:invalidate のサブタグ)の jesi:header サブタグを使用して、失効化の基準として HTTP/1.1 情報を使用します。これは jesi:object タグの URI または URI 接頭辞設定の追加として、また jesi:cookie タ グの追加としても使用されます。 構文 <jesi:header name = "name_string" value = "value_string" /> 注意: 1 つの object タグ内に複数の header タグを持つことが可能です。 属性 name(必須)−HTTP/1.1 ヘッダーの名前です。 value(必須)−HTTP/1.1 ヘッダーの値です。 キャッシュ・オブジェクトを失効化するには、この名前と値に一致するヘッダーが存在する必要がありま す。 例−ページの失効化 この項では、jesi:invalidate タグ、その jesi:object サブタグ、jesi:object タグの jesi:cookie サブタグを使用して、 ページを失効化する例を示します。 例 1: ページの失効化 この例では、完全 URI で指定された ESI プロセッサの単一オブジェクトを失効化します。(デフォルトで は、uri によって URI 接頭辞ではなく完全 URI が指定されます。)jesi:invalidate タグはキャッシュ・サーバ 第7章 Edge Side Includes の JESI タグ 105 ーの URL およびログイン用のユーザー名とパスワードも指定し、キャッシュ・サーバーからの失効化応答 がユーザーのブラウザで表示されることを指定します。 ... <jesi:invalidate url="http://yourhost.yourcompany.com:4001" username="invalidator" password="invpwd" output="browser"> <jesi:object uri="/images/logo.gif"/> </jesi:invalidate> ... 例 2: ページの失効化 「例 1: ページの失効化」と同じですが、キャッシュ・サーバーURL およびログイン情報の指定に構成フ ァイルを使用します。 ... <jesi:invalidate config="myconfig.xml" output="browser"> <jesi:object uri="/images/logo.gif"/> </jesi:invalidate> ... jesi:invalidate は構成ファイルの位置指定にページ相対構文を使用するので、myconfig.xml は JSP ページと同 じディレクトリにあると推定されます。例として、次のコンテンツがあると仮定してみます。 <?xml version="1.0" ?> <ojsp-config> <web-cache> <url>http://yourhost.yourcompany.com:4001</url> <username>invalidator</username> <password>invpwd</password> </web-cache> </ojsp-config> 例 3: ページの失効化 この例では、URI 接頭辞"/"に従って ESI プロセッサのすべてのオブジェクトが失効化されます。失効化確 認メッセージがブラウザで表示されるように指定されていないため、メッセージはまったく表示されませ ん。 ... <jesi:invalidate url="http://yourhost.yourcompany.com:4001" username="invalidator" password="invpwd"> <jesi:object uri="/" prefix="yes"/> </jesi:invalidate> ... 例 4: ページの失効化 この例では単一オブジェクトが失効化されますが、最高 30 分(1,800 秒)までこのオブジェクトの使用が 許可されます。 ... <jesi:invalidate url="http://yourhost.yourcompany.com:4001" 106 Oracle9i Application Server for Linux リリース・ノート username="invalidator" password="invpwd"> <jesi:object uri="/images/logo.gif" maxRemovalDelay="1800"/> </jesi:invalidate> ... 例 5: ページの失効化 この例では、「例 1: ページの失効化」と同じオブジェクトが失効化に指定されますが、Cookie user_type および値 customer がある場合にのみ失効化が指定されます。 ... <jesi:invalidate url="http://yourhost.yourcompany.com:4001" username="invalidator" password="invpwd">} <jesi:object uri="/images/logo.gif"> <jesi:cookie name="user_type" value="customer"/> </jesi:object> </jesi:invalidate> ... ページのパーソナライズ・タグの説明 動的ページのパーソナライズを行うには、ページの Cookie およびセッション情報によって ESI プロセッサ に依存性が通知されている必要があります。たとえば、Cookie 値置換は Web ブラウザではなく ESI プロセ ッサで行われます。 JESI personalize タグ jesi:personalize タグを使用して、Cookie およびセッション情報の依存性を ESI プロセッサに通知することで ページのパーソナライズを許可します。 構文 <jesi:personalize name = "name_string" [value = "default_value_string"] /> 属性 name(必須)−Cookie の名前を指定し、Cookie の値はページのパーソナライズ基礎として使用されま す。 value−Cookie が見つからない場合のオプション・デフォルト値です。ESI プロセッサは Cookie を検索 するために Web サーバーに戻る必要がなくなります。 例−ページのパーソナライズ jesi:personalize タグの使用例を次に示します。 <jesi:personalize name="user_id" value="guest" /> 生成される対応 ESI タグにより、ESI プロセッサは必要な情報を検索できます。このとき、プロセッサは user_id という Cookie とその値を検索してその値を抽出します。Cookie を検索できない場合は、デフォルト 値 guest が使用されます。この Cookie と値の置換を ESI プロセッサで処理することで、Web サーバーへの 要求の送信が回避されます。 第7章 Edge Side Includes の JESI タグ 107 JESI タグ処理および JESI から ESI への変換 OracleJSP JESI タグ・ライブラリの一部として提供される JESI タグ・ハンドラ・クラスは、JSP 機能から ESI 機能へのブリッジとなります。タグ・ハンドラでは、JESI タグの ESI タグへの変換、失効化に対する HTTP 要求の生成、HTTP 応答ヘッダーの設定などが行われます。(ただし、JESI タグと ESI タグの間また は JESI タグ属性と ESI タグ属性の間には、常に 1 対 1 のマッピングが存在するわけではないことに注意し てください。) 例として、この章で前述した例にある次の JSP コードを考えてみましょう。 ... <jesi:include page="stocks.jsp" flush="true" /> <p> <hr> <jesi:include page="/weather.jsp" flush="true" /> <p> <hr> <jesi:include page="../sales.jsp" flush="true" /> ... jesi:include タグ・ハンドラは、次のような ESI マークアップを生成します。 ... <esi:include src="http://host:port/application1/dir2/dir3/stocks.jsp" /> <p> <hr> <esi:include src="http://host:port/application1/weather.jsp" /> <p> <hr> <esi:include src="http://host:port/application1/dir2/sales.jsp" /> ... OracleJSP JESI タグ・ライブラリ記述ファイル この項では、OracleJSP JESI タグ・ライブラリの完全なタグ・ライブラリ記述ファイル(TLD)である jesitaglib.tld のリストを提示します。 <?xml version="1.0" encoding="ISO-8859-1" ?> <!DOCTYPE taglib PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN" "web-jsptaglib_1_1.dtd"> <!-- a tab library descriptor --> <taglib> <!-- after this the default space is "http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd" --> <tlibversion>1.0</tlibversion> <jspversion>1.1</jspversion> <shortname>simple</shortname> 108 Oracle9i Application Server for Linux リリース・ノート <info> A simple tab library for the jesi </info> <!-- Tags defining a connection/query/execute collection --> <!-- connection tag --> <tag> <name>invalidate</name> <tagclass>oracle.jsp.tags.jesi.InvalidationTag</tagclass> <bodycontent>JSP</bodycontent> <attribute> <name>url</name> <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute> <attribute> <name>username</name> <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute> <attribute> <name>password</name> <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute> <attribute> <name>config</name> <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute> <attribute> <name>output</name> <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute> </tag> <tag> <name>object</name> <tagclass>oracle.jsp.tags.jesi.ObjectTag</tagclass> <bodycontent>JSP</bodycontent> <attribute> <name>uri</name> <required>true</required> 第7章 Edge Side Includes の JESI タグ 109 <rtexprvalue>true</rtexprvalue> </attribute> <attribute> <name>maxRemovalDelay</name> <required>true</required> <rtexprvalue>true</rtexprvalue> </attribute> <attribute> <name>prefix</name> <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute> </tag> <tag> <name>cookie</name> <tagclass>oracle.jsp.tags.jesi.CookieTag</tagclass> <bodycontent>JSP</bodycontent> <attribute> <name>name</name> <required>true</required> <rtexprvalue>true</rtexprvalue> </attribute> <attribute> <name>value</name> <required>true</required> <rtexprvalue>true</rtexprvalue> </attribute> </tag> <tag> <name>header</name> <tagclass>oracle.jsp.tags.jesi.HeaderTag</tagclass> <bodycontent>JSP</bodycontent> <attribute> <name>name</name> <required>true</required> <rtexprvalue>true</rtexprvalue> </attribute> <attribute> <name>value</name> <required>true</required> <rtexprvalue>true</rtexprvalue> </attribute> </tag> 110 Oracle9i Application Server for Linux リリース・ノート <!-- connection tag --> <tag> <name>fragment</name> <tagclass>oracle.jsp.tags.jesi.FragmentTag</tagclass> <bodycontent>JSP</bodycontent> <attribute> <name>control</name> <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute> <attribute> <name>cache</name> <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute> <attribute> <name>expiration</name> <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute> <attribute> <name>maxRemovalDelay</name> <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute> </tag> <tag> <name>include</name> <tagclass>oracle.jsp.tags.jesi.IncludeTag</tagclass> <bodycontent>JSP</bodycontent> <attribute> <name>page</name> <required>true</required> <rtexprvalue>true</rtexprvalue> </attribute> <attribute> <name>ignoreError</name> <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute> <attribute> <name>alt</name> <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute> 第7章 Edge Side Includes の JESI タグ 111 <attribute> <name>copyparam</name> <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute> <attribute> <name>flush</name> <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute> </tag> <tag> <name>control</name> <tagclass>oracle.jsp.tags.jesi.ControlTag</tagclass> <bodycontent>JSP</bodycontent> <attribute> <name>control</name> <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute> <attribute> <name>cache</name> <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute> <attribute> <name>expiration</name> <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute> <attribute> <name>maxRemovalDelay</name> <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute> </tag> <tag> <name>template</name> <tagclass>oracle.jsp.tags.jesi.TemplateTag</tagclass> <bodycontent>JSP</bodycontent> <attribute> <name>control</name> <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute> <attribute> <name>cache</name> 112 Oracle9i Application Server for Linux リリース・ノート <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute> <attribute> <name>expiration</name> <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute> <attribute> <name>maxRemovalDelay</name> <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute> </tag> <tag> <name>personalize</name> <tagclass>oracle.jsp.tags.jesi.PersonalizeTag</tagclass> <bodycontent>JSP</bodycontent> <attribute> <name>name</name> <required>true</required> <rtexprvalue>true</rtexprvalue> </attribute> <attribute> <name>value</name> <required>false</required> <rtexprvalue>true</rtexprvalue> </attribute> </tag> </taglib> 第7章 Edge Side Includes の JESI タグ 113 第8章 Oracle9iAS Wireless はじめに この章の目的 この章では、Oracle9iAS Wireless をお使いになるにあたり、ドキュメントに記載された機能との相違点を説 明します。 この章では、次のトピックを取り扱います。 『Oracle9i Application Server for UNIX インストレーション・ガイド』の訂正 新機能 JDK/JRE 動作保証 Oracle9iAS Wireless クライアント・ツールのサポート OS Oracle9iAS Wireless クライアント・ツールの CPU 要件 JServ.conf への追加点 Oracle9iAS Wireless の再インストール Oracle9iAS Wireless サーバー・インストレーション Oracle9iAS Wireless クライアント・インストレーション システム Logger Oracle9iAS Wireless 用の複数の VM のセットアップ Oracle9iAS Wireless インスタンスのプロパティ設定について 既知の制限事項と制約事項 注意:以前のリリースでは、この製品およびコンポーネントは「Portal-to-Go」と呼ばれていました。ソフ 注意: トウェアによって生成されるメッセージの一部、また Configuration Assistant やクライアント・ツー ルの画面の一部では、以前の名前が使用されています。また、ここで使用されている「Oracle9iAS Wireless」はコンポーネント名称を指し、「Oracle9i Application Server Wireless Option」は、製品名称 を指します。また、特別な指定がない場合のコンポーネントのバージョンは 1.1.1.0.0、製品のバー ジョンは、リリース 1.0.2.2 のことを指します。 ライセンス Oracle9iAS Wireless をご利用いただくためには、Oracle Internet Application Server Enterprise Edition および Oracle Internet Application Server Wireless Option のライセンスが必要であることにご注意ください。 『Oracle9i Application Server for UNIX インストレーション・ガイド』の訂正 『Oracle9i Application Server for UNIX インストレーション・ガイド リリース 1.0.2.2』では、Oracle9i Application Server のインストール手順を説明しています。この項では、インストールを正しく実行するた めの追加情報を提供します。 114 Oracle9i Application Server for Linux リリース・ノート Oracle9iAS Wireless の設定の検証 『Oracle9i Application Server for UNIX インストレーション・ガイド リリース 1.0.2.2』の付録 F-8 ページの Oracle9iAS Wireless Personalization Portal の URL は正しくありません。Personalization Portal が正しく動作し ているかどうかをテストするには、次の URL にアクセスしてください。 http://<ias_host_name>.<domain>:<listener_port>/portal/Login.jsp jserv.conf ファイルの ApJServGroupMount エントリの例 『Oracle9i Application Server for UNIX インストレーション・ガイド リリース 1.0.2.2』の付録 F-4 ページお よび F-7 ページには、jserv.conf ファイルを編集して Oracle9iAS Wireless 固有のマウント・ポイントを追加 するという作業が含まれています。次の ApJServGroupMount のセクションの例は、『Oracle9i Application Server for UNIX インストレーション・ガイド リリース 1.0.2.2』に含まれていません。 # PTG Start ApJServGroupMount /ptg balance://group1/root # PTG End 新機能 Oracle9iAS Wireless の今回のリリースについての詳細は、『Oracle9i Application Server Wireless Edition イン プリメンテーション・ガイドリリース 1.0.2.1』を参照してください。 JDK/JRE の動作保証 オラクル社では、Oracle9iAS Wireless および Oracle9iAS Wireless Web Integration Server は JDK/JRE 1.3.1 上 でのみ動作を保証しています。ただし、Oracle9iAS Wireless Web Integration Developer に関しては、JDK/JRE 1.2.2 のみ保証しています。 Oracle9iAS Wireless クライアント・ツールのサポート OS Oracle9iAS Wireless Service Designer および Oracle9iAS Wireless Web Integration Developer は下記 OS での動 作をサポートします。 Windows NT4.0 Service Pack 5 以上 Windows 2000 Service Pack 1 以上 Oracle9iAS Wireless クライアント・ツールの クライアント・ツールの CPU 要件 Oracle9iAS Wireless Service Designer および Oracle9iAS Wireless Web Integration Developer は Pentium-4 プロセ ッサを搭載したコンピュータではサポートされません。 JServ.conf への追加点 Oracle9iAS Wireless の以前のリリースからアップグレードする場合、jserv.conf ファイルを次のように変更 する必要があります。このファイルは、次の場所に存在します。 $ORACLE_HOME/Apache/Jserv/etc/jserv.conf 1. ApJServMount /ptg /root をコメント化します。 2. 次の行を追加します。 # PTG 1.1.1 Begin ApJServGroupMount /ptg balance://group1/root # PTG 1.1.1 End 第8章 Oracle9iAS Wireless 115 Oracle9iAS Wireless を新規インストールする場合: 1. 次の行を追加します 。 # PTG 1.1.1 Begin ApJServGroupMount /ptg balance://group1/root # PTG 1.1.1 End Oracle9iAS Wireless の再インストール Oracle9iAS Wireless のインストール時に、Wireless リポジトリが作成されます。Oracle9iAS Wireless をアン インストールしても、データベース・スキーマは自動的に削除されません。そのため、Oracle9iAS Wireless をアンインストール後に再インストールする場合(前回のインストール時と同じデータベース・ユーザー 名を使用して)、手動でデータベース・スキーマを削除する必要があります。データベース・スキーマを 削除する前に、データベース・スキーマ内のデータのバックアップを作成します。データベース・スキー マを削除する方法の 1 つは、Wireless データベース・ユーザーを削除することです。たとえば、インストー ル時に Wireless リポジトリの所有者を panama と指定したとします。 1. System ユーザー(またはその他の DBA 権限をもつユーザー)として接続し、sqlplus を起動します。 2. 次のコマンドを発行します。 sqlplus>drop user panama cascade sqlplus>commit sqlplus>exit Oracle9i Application Server Wireless サーバー・インストレーション インストール・オプション インストール・オプションは Minimal Edition、Standard Edition、Enterprise Edition のいずれでも可能です。 ただし、Minimal Edition を利用してインストールされる場合には別途リポジトリ・データベースが作成さ れている必要があります。 非対話モードのインストールの非サポート 非対話モードのインストールの非サポート Oracle9iAS Wireless の非対話モードのインストールはサポートされていません。Oracle9iAS Wireless のイン ストールでは、Oracle9iAS Wireless 固有の情報の入力および設定ファイルの手動による編集が必要です。詳 細は、『Oracle9i Application Server Wireless Edition コンフィグレーション・ガイドリリース 1.0.2.2』を参 照してください 。 データベース接続 インストール時に作成されるデフォルトのデータベースは、ご使用の環境に合わせて正しくチューニング されていない可能性があります。「ORA-00020: maximum number of processes exceeded errors」というメッセ ージが表示される場合があります。このメッセージの表示を回避するには、ご使用のシステムで max_processes データベース・パラメータに十分に大きい値が設定されており、Oracle Net8 の使用不能プロ セスの検出が設定されていることを確認してください。データベースの設定とパフォーマンスの詳細は、 Oracle8i のドキュメントを参照してください。 接続可能な Oracle データベース Oracle9i Application Server リリース 1.0.2.2 において、Oracle9iAS Wireless では、Oracle 8.1.7 および 9.0.1 を サポートしています。リポジトリに利用するデータベースは、Standard Edition オプションでインストール されるデータベース・インスタンスをご利用ください。また、リポジトリとして使用するデータベースで サポートされるキャラクタ・セットは JA16SJIS、JA16EUC、UTF8 になります。コンテンツとして利用す 116 Oracle9i Application Server for Linux リリース・ノート るデータベースのサポートは、使用する JDBC ドライバのバージョンに依存します。また、この接続に関 するサポートはコンテンツになるデータベースのサポート契約に基づきます。 Oracle 9.0.1 に接続するための作業 コンテンツ・データベースとして、Oracle 9.0.1 を利用可能です。Oracle 9.0.1 に接続するためには、JDBC Thin ドライバのパッチを適用する必要があります。このパッチの適用については、第1章「CD Pack に同梱さ れるパッチの適用について」の「Oracle9i Database に JDBC Thin ドライバで接続する際の修正の適用」を 参照してください。 Oracle9i Application Server インストール後の設定 Oracle9i Application Server をインストールした後には下記の手順で Oracle9iAS Wireless サーバーおよび Oracle9iAS Wireless Web Integration Server を構成変更してください。 1. デフォルト・データベースのキャラクタ・セットの変更 Oracle9i Application Server リリース 1.0.2.2 for Linux では日本語環境でのインストールがサポートされ ていませんので、データベースのキャラクタ・セットを手動で変更する必要があります。Linux 版の 場合は、JA16EUC に設定してください。 2. 非同期通知機能(アラート)を使用する場合の init.ora への追加事項 非同期通知機能(アラート)を使用する場合は下記のパラメータをリポジトリ DB の init.ora に追加して ください。 aq_tm_processes = 2 修正を反映させるために、データベースを再起動してください。 3. upload.sh の修正 upload.sh を使用する場合は、下記の部分を事前に修正してください。 upload.sh は、ORACLE_HOME 内の panama/sample に存在します。 a. rt.jar 修正前:${JAVA_HOME}/lib/rt.jar 修正後:${JAVA_HOME}/jre/lib/rt.jar b. servlet.jar ../lib/servlet.jar をフルパスで servlet.jar の位置を指定してください。 4. リポジトリセットアップのマニュアル実行 Oracle9iAS Wireless のリポジトリ・ロードが実行されるタイミングでは、ORACLE EJE および Net8 リ スナは構成されていません。Oracle Universal Installer の実行が終了後、手動で Oracle9iAS Wireless リポ ジトリの構成を実行する必要があります。以下の二つのスクリプトを順に実行して下さい。 $ORACLE_HOME/panama/sql/create_aq.sh $ORACLE_HOME/panama/setupconf/pa_java_inst.sh 注意:pa_java_inst.sh 実行中、下記のようなエラーが発生し、正しく実行できない場合があります。 注意: oracle.panama.PanamaException:No such user "" その場合は下記の修正を pa_java_inst.sh に加えて下さい。 a. rt.jar 修正前:${JAVA_HOME}/lib/rt.jar 修正後:${JAVA_HOME}/jre/lib/rt.jar b. Administrator ユーザ ID の追加 第8章 Oracle9iAS Wireless 117 修正前:oracle.panama.core.util.LoadXml -c0 修正後:oracle.panama.core.util.LoadXml -l Administrator/manager -c0 5. リポジトリセットアップ後に必要な設定事項 Oracle9iAS Wireless のインストールでは、リポジトリが構成された後に Oracle9iAS Wireless 固有の情 報の入力および設定ファイルの手動による編集および設定変更が必要です。詳細は、『Oracle9i Application Server Wireless Edition コンフィギュレション・ガイド リリース 1.0.2.2』を参照してくださ い。 6. JDBC ドライバの変更 Oracle9iAS Wireless 1.1.1 では、JDBC Thin ドライバを利用することが可能です。ただし、JDBC Thin ドライバから JDBC OCI ドライバに変更することで接続時のパフォーマンスを向上することができま す。Oracle9iAS Wireless のインストール終了後、 $ORACLE_HOME/panama/server/classes/oracle/panama/core/admin/System.properties の下記部分を適切に修正して JDBC OCI ドライバを使用してください。 db.driver=V8 db.connect.string=%PANAMA_USERNAME%/%PANAMA_USER_PW%@(description=(address=(hos t=%PANAMA_HOST%)(protocol=tcp)(port=%PANAMA_PORT%))(connect_data=(sid=%PANAMA_S ID%))) ここで、%PANAMA_XXXX%はインストールした環境に合わせて書き換えてください。また、JDBC OCI ドライバを使用する場合はインストール後に Apache を構成する際に下記のパラメータを jserv.properties に追加してください。 wrapper.env=NLS_LANG=japanese_japan.utf8 7. Oracle9iAS Wireless Web Integration Server でマルチバイト・キャラクタ・セットをサポートするため の設定 Oracle9i Application Server リリース 1.0.2.2 では、1 つの Web Integration Server で同時に複数のロケール のデータソースを扱う事が可能です。これにより、Shift_JIS と EUC のサイトを同時にサポートするこ とが可能です。以下の二つの設定を行ってください。 Web Integration Server の起動ロケールを英語環境にします。 Web Integration Adapter の InputEncoding をデータソースに合わせます。 具体的には、次の設定変更をサーバー側で適用します。 1) $ORACLE_HOME/panama/WebIntegration/Server/bin/server.sh に WebIntegration Server 起動オプシ ョンとしてファイル・エンコーディング指定をしない。(デフォルト) 2) $ORACLE_HOME/panama /WebIntegration/Server/bin/server.sh 起動時にシェル環境変数 LANG を設定しない。 3) $IAS_HOME/Apache/jdk/jre/lib/font.properties を font.properties.ja で置き換える。 4) $ORACLE_HOME/Apache/Jserv/etc/jserv.properties に LANG の設定をしない。 5) HTTP Server 起動時にシェル環境変数 LANG を設定しない。 6) Oracle9iAS Wireless Service Designer でのサービスの作成時に Web Integration Adapter の InputEncoding の指定をアクセスする WEB サイトに合わせて指定します。 Shift_JIS の場合: Shift_JIS EUC の場合: EUC-JP 注意:地域を変更する際には、地域を変更したことによる、Oracle9iAS Wireless Web Integration Server 以外のアプリケーションへの影響の有無を事前に十分に検証した上で、システム管理者の責任 で変更を行ってください。 118 Oracle9i Application Server for Linux リリース・ノート 8. Oracle HTTP Server、Oracle9iAS Wireless Web Integration Server を再起動してください。 注意:Oracle9iAS Wireless Web Integration Server 管理ツール(http://HOST.DOMAIN:5555)でのサービス のテストについて 7.の設定を行わずに作成されたサービスのテストを行うとエラーとなった り、文字化けが発生します。問題が発生する場合は再度設定を見直してください。 Oracle9iAS Wireless クライアント・インストレーション Oracle9iAS Wireless クライアントのインストールには、『Oracle9i Application Server Administrative and Development Client CD-ROM』が必要です。これは CD-Pack に含まれます。また、このインストール手順の 詳細は、『Oracle9i Application Server for UNIX インストレーション・ガイド リリース 1.0.2.2』付録 B をご 参照ください。以下は、日本語 OS におけるインストレーションの補足事項やマルチバイト・キャラクタ・ セットのハンドリングの方法等を記述しています。 Oracle9iAS Wireless クライアントのセットアップの準備 クライアントのセットアップの準備 Oracle9iAS Wireless クライアント・ツールでマルチバイト・キャラクタ・セットをサポートするには、国際 化バージョンの Java 実行環境が必要です。 1. JavaSoft の Web サイトから、Java 実行時環境(JRE)の国際化(またはローカライズ)バージョン をダウンロードします。 2. JavaSoft の Java Runtime Environment(JRE)をインストールします。 3. Java Virtual Machine(JVM)の font.properties ファイルを font.properties.<locale>に置き換えます。ク ライアントの JVM のパスは次のとおりです。 %JREDIR%¥lib Oracle9iAS Wireless Service Designer のセットアップ Oracle9iAS Wireless Service Designer の起動用バッチファイル run.bat を書き換えます。ファイルパスは以下 のとおりです。 %ORACLE_HOME%¥panama¥ServiceDesigner¥run.bat 1. JAVA12_HOME に JRE をインストールしたパスをセットし、コメントアウト(REM)を外して有効に します。たとえば、次のようになります。 set JAVA12_HOME=D:¥jdk122¥jre 2. 起動する java コマンドのパスを JAVA12_HOME に変更します。 "%JAVA12_HOME%¥bin¥java" -version "%JAVA12_HOME%¥bin¥java" -classpath %PASD_CP% oracle.panama.pasm.PASM Oracle9iAS Wireless Web Integration Developer のセットアップ Oracle9iAS Wireless Web Integration Developer でマルチバイト・キャラクタ・セットをサポートするには、 インストール済みクライアントに次の設定変更を適用します。(Oracle9iAS Wireless Web Integration Developer 同梱の Java Virtual Machine(JVM)には i18n.jar および適切な font.properties ファイルが含まれて いないため、マルチバイト・キャラクタ・セットはサポートされていません。) 1. JDK1.2 使用時には developer.zip のクラス名解決に問題があるため、下記のように developer.zip を展 開します(これにより developer.zip に含まれる class が正しく検索されます)。developer.zip ファイ ルを解凍します。このファイルのパスは次のとおりです。 %ORACLE_HOME%¥panama¥WebIntegration¥Developer¥lib¥developer.zip ファイルを次の場所に解凍します 。 %ORACLE_HOME%¥panama¥WebIntegration¥Developer¥lib¥developer¥ 2. developer.bat ファイルを編集します。このファイルのパスは次のとおりです。 %ORACLE_HOME%¥panama¥WebIntegration¥Developer¥bin¥developer.bat 第8章 Oracle9iAS Wireless 119 a. 次の行をコメント化(REM)します。 SET JDKDIR=C:¥OraHome1¥panama¥WebIntegration¥Developer¥jvm b. JRE1.2 のインストール先の新しい JRE ディレクトリを指すように JDKDIR を設定します。たと えば、次のようになります。 REM SET JDKDIR=C:¥OraHome1¥panama¥WebIntegration¥Developer¥jvm SET JDKDIR=c:¥jre1.2 c. 次の行をコメント化(REM)します。 SET CLASSPATH="%JDKDIR%¥LIB¥RT.JAR;%DEVDIR%¥LIB¥DEVELOPER.ZIP; %DEVDIR%¥packages¥wmroot¥code¥classes" d. CLASSPATH を指定します。その際 DEVELOPER.ZIP を DEVELOPER に変更します。たとえ ば、次のようになります。 REM SET CLASSPATH="%JDKDIR%¥LIB¥RT.JAR;%DEVDIR%¥LIB¥DEVELOPER.ZIP;%DEVDIR%¥ packages¥wmroot¥code¥classes" SET CLASSPATH="%JDKDIR%¥LIB¥RT.JAR;%DEVDIR%¥LIB¥DEVELOPER;%DEVDIR%¥packages ¥wmroot¥code¥classes" e. 次の行をコメント化(REM)します。 "%JDKDIR%¥bin¥jre" -ms16M -mx32M -classpath %CLASSPATH% watt.app.watt.Main -config "%DEVDIR%¥config¥developer.cnf" -home "%DEVDIR%" %1 %2 %3 %4 %5 %6 %7 %8 %9 3. マルチバイト・キャラクタの対応 Oracle9iAS Wireless Web Integration Developer は同時に複数の文字コード形式をサポートできません (例:EUC_JP で記述されたソースを正しく扱うには EUC_JP 対応で起動された Oracle9iAS Wireless Web Integration Developer が必要になります)。起動バッチファイルを切り替えて、Shift_JIS と EUC_JP を 別々の Web Integration Developer で扱うことができます。Oracle9iAS Wireless Web Integration Developer を使用して WEB サイトへアクセスする際、アクセスする WEB サイトが Shift_JIS で作成されている か EUC で作成されているかによって、以下の設定を行ってください。 %ORACLE_HOME%¥panama¥WebIntegration¥Developer¥bin¥developer.bat に Oracle9iAS Wireless Web Integration Developer 起動オプションとして java コマンドラインにアクセスする WEB サイト に合わせたファイル・エンコーディング指定を追加します。 -Dfile.encoding=<encoding> たとえば、Shift_JIS 用の設定は developer.bat の最後に次の行を追加します 。 "%JDKDIR%¥bin¥java" -Dfile.encoding=SJIS -ms16M -mx32M -classpath %CLASSPATH% watt.app.watt.Main -config "%DEVDIR%¥config¥developer.cnf" -home "%DEVDIR%" %1 %2 %3 %4 %5 %6 %7 %8 %9 EUC 用の設定は developer.bat の最後に次の行を追加します 。 "%JDKDIR%¥bin¥java" -Dfile.encoding=EUC_JP -ms16M -mx32M -classpath %CLASSPATH% watt.app.watt.Main -config "%DEVDIR%¥config¥developer.cnf" -home "%DEVDIR%" %1 %2 %3 %4 %5 %6 %7 %8 %9 Oracle9iAS Wireless Web Integration Developer 起動時の OS の地域指定をアクセスする WEB サイ トに合わせて選択します。 Shift_JIS の場合: 日本語 EUC の場合: 英語 120 Oracle9i Application Server for Linux リリース・ノート EUC_JP で起動する際の注意: Windows NT の JDK1.2 では、file.encoding パラメータを有効にするためにはコントロールパネル の地域を US に変更する必要があります。オペレーティング・システムの地域に"日本"が選択さ れている場合は、EUC_JP を file.encoding に指定しても、その指定が無視され、結果的に Shift_JIS の形式のソースしか扱うことができません。なお、地域を変更する際には、地域を変更したこと による、Oracle9iAS Wireless クライアント以外のアプリケーションへの影響の有無を事前に十分 に検証した上で、システム管理者の責任で変更を行ってください。 Windows 2000 の JDK1.2 では上記のような地域の変更を行った場合の動作サポートはしていませ ん。Windows 2000 では地域変更を行わなずに Shift_JIS で起動された Oracle9iAS Wireless Web Integration Developer のみサポートします。 Oracle9iAS Wireless WebIntegration Server 管理ツール(http://HOST.DOMAIN:5555)でのサービスのテストに ついて 上記 3.の設定を行わずに作成されたサービスのテストを行うとエラーとなったり、文字化けが発生 したりします。 問題が発生する場合は再度設定を見直してください。 Oracle9iAS Wireless クライアント・ツールのプログラム・フォルダの位置 すでに Oracle9i Application Server などをインストールしているマシンに「Oracle9i Application Server Administrative and Development Client CD-ROM」から Oracle9iAS Wireless Service Designer と Oracle9iAS Wireless Web Integration Developer をインストールすると、Windows のスタート→プログラム→Oracle for Windows NT →Oracle9i Application Server Wireless Edition の下に起動用アイコンが配置されます。 システム Logger これまでは、サービス・リクエストおよびセッションのロギング情報は、イベントが発生するたびにリ ポジトリに記録されていましたが、負荷の大きい本番環境では、パフォーマンスが低下していました。今 回のリリースでは、システム Logger のインプリメンテーションが改善されました。ログ情報のキューおよ びデータベースへのログの記録によって発生していたパフォーマンスの問題を回避するため、データベー スへのロギングを遅延するよう変更が加えられました。まず、データがファイルに記録され、別のプロセ スによってファイルからの読み込みおよびデータベースへのログの記録が実行されます。Logger により、 次のディレクトリが作成されます。 log - ファイル Logger がファイルを書き込むディレクトリ。 process - データベース Logger が作成時のタイムスタンプに基づいて記録を読み込むディレクトリ。 archive - 処理済みのファイルは、後の使用のためにすべてこのディレクトリに移動されます。 status - 処理済みファイルに関する情報、およびデータベースにログされた記録は、このディレクトリ に記録されます(各 panama インスタンスごとに 1 ファイル)。 注意: ログ・ファイルの読み込みおよびデータベースのロギングは、panama サーブレットのパフォーマン スを低下させずに、別々の JVM で実行可能です。デフォルトの設定では、データベース Logger は、 サーブレットとともに起動されます(System.properties ファイルでこの設定を変更可能です)。 追加設定の必要性 現在のリリースでは、次のパラメータを設定する必要があります。設定可能な新しいパラメータのほとん どには、デフォルト値が存在します。ローカルの要件に合わせて、これらの値を管理者がリセットする必 要があります。 SystemLog.loggerOutputDirectory=xxx (デフォルトは、log.directory プロパティの設定値と同じ値 ) 第8章 Oracle9iAS Wireless 121 ログ、プロセスおよびアーカイブ・ディレクトリのルート・パス。これらは、このルート・ディレクトリ の下に作成されます。デフォルトでは、システム Logger は、log.directory プロパティで指定されたディレ クトリを使用します。このデフォルトは/tmp です。このパラメータは、空白のままでもかまいません。 SystemLog.maxLogFileSize=xxx ログ・ディレクトリ内のファイルの最大サイズ。ログ・ファイルがこのファイル・サイズに達すると、ロ ギング・プロセスはこのファイルを閉じ、ファイルを process ディレクトリに移動します。 SystemLog.logFileNamePrefix=xxx (デフォルト: ias_ ) ユーザー定義のログ・ファイル名の接頭辞。デフォルトの接頭辞は iaswe です。一般的なファイル名は、 <SystemLog.logFileNamePrefix>_<ptginstancename>_<creationtimestamp>.log のようになります。 SystemLog.field.delimiter=xxx (デフォルト: #%=%# ) ログに記録された名前と値のペアのデリミタ。システム Logger により、デフォルト値が使用されます。 SystemLog.record.delimiter=xxx (デフォルト: ~#$ ) ログ内の記録のデリミタ。システム Logger により、デフォルト値が使用されます。 SystemLog.maxLogFileSize=xxx 各ログ・ファイル当たりのバイトの最大数。これには、適度に大きな数値を設定する必要があります 。 SystemLog.start.dbLogger=[true/false] (デフォルト: true ) データベースへのロギングを使用するかどうかの指定。false の場合、ログの記録はファイルにのみ保存さ れます。true の場合、記録がファイルから取得され、データベースに記録されます(つまり、DB Logger スレッドが開始されます)。値は True または False です。 SystemLog.logger.wakeupFrequency=xxx (デフォルトは 1 分) DB Logger スレッドが再開されてから process ディレクトリ内の新しいログ・ファイルの有無を調べるまで の時間(分)。 SystemLog.logger.maxSize=xxx (デフォルト: 15 ) データベース・ロギングのバッチ・サイズ SystemLog.driver=xxx (ユーザーが Logger 用に別のドライバの使用を指定しないかぎり、デフォルト値には、db.driver プロパテ ィの値が使用されます。) データベースの JDBC ドライバ。<String> は、"THIN" 、"V7" 、"V8" 、"INTERNAL"または"CUSTOM" のいずれか 。 SystemLog.driver.class=xxx (デフォルトは Oracle のドライバを使用 ) カスタマイズされた JDBC ドライバの<class_name>を使用して接続。バージョン 1 ではインプリメントされ ていません。SystemLog.driver=CUSTOM の場合、設定する必要があります。 122 Oracle9i Application Server for Linux リリース・ノート 次に、oracle/panama/core/admin/System.properties ファイルの既存の設定パラメータのうち、保持されるもの の一部を示します 。 SystemLog.enableServiceLogging=[true/ false] サービスのロギングを使用可能にするかどうかを指定します。 SystemLog.enableSessionLogging=[true/ false] セッションのロギングを使用可能にするかどうかを指定します。データベースに最後に記録されたログの 状態が、ステータス・ログ・ファイルに格納されます。ステータス・ログ・ファイルは、クラッシュ・リ カバリの際に、最後に処理されたファイルとその記録を管理者が調べ、データベース Logger によって重複 するログが記録されないようにするために使用します。 データベース Logger の開始手順 デフォルトの設定では、DBLogger スレッドが panama サーブレットの起動時に開始されます。ただし、 SystemLog.start.dbLogger プロパティを false に設定することにより、これをオフに指定できます。データベ ース Logger は、次のようにして、別のプロセスとして起動可能です。 prompt> java -classpath <needed panama classes> oracle.panama.core.admin.DbLogger すべてのソフトウェアが d:¥内にインストールされている場合、起動コマンドは次のようになります。 java -classpath d:¥panama¥lib¥panama.zip;d:¥panama¥lib¥panama_core.zip;D:¥jsdk2.0¥li b¥jsdk.jar;D:¥panama¥lib¥classes12.zip;d:¥panama¥lib¥jndi.jar;D:¥pan ama¥lib¥xmlparserv2.jar oracle.panama.core.admin.DbLogger Oracle9iAS Wireless 用の複数の VM のセットアップ 新しいグループ・ベースのロード・バランシング機能を活用するには、jserv.conf ファイルを次のように変 更する必要があります。 1. 新しい機能のディレクティブを有効にするには、ApJServManual が auto(on または off ではなく) に設定されている必要があります。 2. 新しいロード・バランシング・アーキテクチャでは、複数のインスタンスをグループ化することが 可能です。グループとは、トラフィックのロード・バランシング先のインスタンスのセットのこと です。グループのメンバーには、1 つ以上のマシンに存在するインスタンスを使用可能です。グル ープは、次のディレクティブで定義されます。 ApJServGroup groupname nprocs weight propfile 詳細は、次のとおりです 。 groupname : グループ名 nprocs : ローカル・マシンでこのグループ用に起動するプロセスの数 weight : ホスト上のこのグループに割り当てられたトラフィック配分比率 propfile : jserv.properties ファイルのパス 例: ApJServGroup group1 2 1 /private/ORACLE/10210PWE/Apache/Jserv/etc/jserv.properties ApJServGroup group1 1 1 /private/ORACLE/10210PWE/Apache/Jserv/etc/jserv.properties ApJServGroup group2 1 1 /private/ORACLE/10210PWE/Apache/Jserv/etc/jservSoap.properties 第8章 Oracle9iAS Wireless 123 3. グループを使用可能にするために、ApJServMount のかわりに次のディレクティブを使用する必要が あります 。 ApJServGroupMount /mountpoint balance://groupname/zone 詳細は、次のとおりです 。 mountpoint : jserv-url をマウントする URI パスの名 前 groupname : ApJServGroup ディレクティブで定義されているグループの 1 つ zone : このサーブレットが関連付けられているゾー ン 例: ApJServGroupMount /ptg balance://group1/root ApJServGroupMount /ptg balance://group1/root ApJServGroupMount /ptg balance://group1/root Oracle9iAS Wireless インスタンスのプロパティ設定について Oracle9iAS Wireless の JServ インスタンスは処理の高速化のためにリポジトリオブジェクトを自身でキャッ シュします。マスター・インスタンスは、この Wireless の各 JServ インスタンスのキャッシュ・オブジェク トの同期を取るために実行される java プログラムです。各 JServ インスタンスは、マスター・インスタン スとの RMI 通信を介して、他の JServ インスタンスにオブジェクトの更新情報を伝達します。Wireless の 複数インスタンスのプロパティファイルの設定例を以下にまとめます。 1) 各 JServ インスタンス用にクラスパスのコピーを作成します。 % cd $ORACLE_HOME/panama/server % cp -r classes classes_X X の部分を、1..N の番号を使用するなどして、各インスタンス毎に変更します。 2) 各 JServ インスタンスについて System.properties を修正します。 instance.identifier 各インスタンスの識別子 participateInCacheSyncronization true masterInstance.url マスター・インスタンスのホスト、ポートを指定 管理上、ログファイル名(log.file.name)等も変更することを推奨します。 3) 各 JServ インスタンスについて、プロパティを変更し、ポートの競合を解消します。 core/admin/AsyncNotification.properties core/admin/AsyncRequest.properties core/adimn/Ftp.properties core/adimn/Notification.properties core/adimn/Rmi.properties core/probe/www-server.properties magent/config/MAgent.properties 4) マスター・インスタンスのためにクラスパスのコピーを作成します。 % cd $ORACLE_HOME/panama/server % cp -r classes classes_m 124 Oracle9i Application Server for Linux リリース・ノート 5) マスター・インスタンスの Master.propterties を修正します。 % cd $ORACLE_HOME/panama/server/classes_m/oracle/pamana/master % vi Master.properties rmi.registry.port マスター・インスタンスの RMI ポート db.connect.string リポジトリ DB の接続文字列 db.driver=V8 リポジトリ DB に接続するドライバのタイプ ptgInstances.length ptgInstanceX.rmi.host 同期に参加する JServ インスタンスの数 各 JServ インスタンスが稼動するホスト ptgInstanceX.rmi.port=2001 各 JServ インスタンスの RMI ポート ptgInstanceX.rmi.objectName CacheSyncClient(固定) (X には、1 から ptgInstances.length まで、数値で繰り返します) 設定上の注意 − (3)で設定する JServ インスタンスの各ポート、および(5)で設定するマスター・インスタンスの RMI ポートには競合が発生しない様に注意して下さい。 − 各インスタンスの(2)で設定する masterInstance.url は、(5)の rmi.registory.port のポート番号の設定と一 致させてください。 − (5)の ptgInstanceX.rmi.port には、(3)で設定する各 JServ インスタンスの Rmi.properties のポート番号と 一致させてください。 起動スクリプト JServ インスタンスの起動スクリプトは『Oracle9i Application Server Wireless Edition コンフィグレーショ ン・ガイドリリース 1.0.2.2』の 4.6.3 を参考にしてください。この例は起動スクリプトのパラメタで、以下 を切り替えている点にご留意ください。 − クラスパスの server/classes_X にあたる個所が各 JServ インスタンス毎に異なる − jserv.properties の指定が各 JServ インスタンス毎に異なる − コンソールログファイルの指定が各 JServ インスタンス毎に異なる ---------------------------------------------------------------------------------------#!/bin/sh JAVA12_HOME=${ORACLE_HOME}/Apache/jdk if [ -z "$JAVA12_HOME" ]; then test -x /usr/local/java/bin/java && JAVA12_HOME=/usr/local/java test -x /usr/java1.1/bin/java && JAVA12_HOME=/usr/java1.1 test -x /usr/java1.2/bin/java && JAVA12_HOME=/usr/java1.2 test -x /usr/java/bin/java && JAVA12_HOME=/usr/java else 第8章 Oracle9iAS Wireless 125 echo "JAVA12_HOME already set." >&2 fi test -z "${JAVA12_HOME}" && echo "Please set JAVA12_HOME first" && exit 1 echo "Running with JAVA12_HOME=¥"${JAVA12_HOME}¥"." >&2 LOGDIR=${ORACLE_HOME}/panama/logs WELIBDIR=${ORACLE_HOME}/panama/lib SYSLIB=${JAVA12_HOME}/lib/tools.jar SYSLIB=${SYSLIB}:${JAVA12_HOME}/../Jserv/libexec/ApacheJServ.jar SYSLIB=${SYSLIB}:${JAVA12_HOME}/../Jserv/libexec/dms2Server.jar SYSLIB=${SYSLIB}:${JAVA12_HOME}/../jsdk/lib/jsdk.jar WELIB=${WELIBDIR}/panama_core.zip WELIB=${WELIB}:${WELIBDIR}/panama.zip WELIB=${WELIB}:${WELIBDIR}/panama_papz.zip WELIB=${WELIB}:${WELIBDIR}/panama_portal.zip WELIB=${WELIB}:${WELIBDIR}/client.zip WELIB=${WELIB}:${WELIBDIR}/server.zip WELIB=${WELIB}:${WELIBDIR}/caboshare-opt.zip WELIB=${WELIB}:${WELIBDIR}/marlin-opt.zip WELIB=${WELIB}:${WELIBDIR}/ocelot-opt.zip WELIB=${WELIB}:${WELIBDIR}/share-opt-1_1_7.zip WELIB=${WELIB}:${WELIBDIR}/tecate-opt.zip WELIB=${WELIB}:${WELIBDIR}/regexp.jar WELIB=${WELIB}:${WELIBDIR}/sax2.jar WELIB=${WELIB}:${WELIBDIR}/activation.jar WELIB=${WELIB}:${WELIBDIR}/mail.jar WELIB=${WELIB}:${WELIBDIR}/ldap.jar WELIB=${WELIB}:${WELIBDIR}/ldapbp.jar WELIB=${WELIB}:${WELIBDIR}/providerutil.jar WELIB=${WELIB}:${WELIBDIR}/sdoapi101.jar WELIB=${WELIB}:${WELIBDIR}/sdovis.jar WELIB=${WELIB}:${WELIBDIR}/jai_core.jar WELIB=${WELIB}:${WELIBDIR}/jpeg_codec.jar WELIB=${WELIB}:${WELIBDIR}/ordimimg.jar WELIB=${WELIB}:${WELIBDIR}/jservlet.jar WELIB=${WELIB}:${WELIBDIR}/MapQuestX.jar WELIB=${WELIB}:${WELIBDIR}/pop3.jar WELIB=${WELIB}:${WELIBDIR}/RoutingJServerClient.jar WELIB=${WELIB}:${WELIBDIR}/swingall.jar 126 Oracle9i Application Server for Linux リリース・ノート WELIB=${WELIB}:${WELIBDIR}/jewt-opt-4_0_14.zip WELIB=${WELIB}:${WELIBDIR}/jndi.jar WELIB=${WELIB}:${ORACLE_HOME}/jdbc/lib/classes12.zip WELIB=${WELIB}:${ORACLE_HOME}/jsp/lib/ojsp.jar WELIB=${WELIB}:${ORACLE_HOME}/lib/xmlparserv2.jar NLS_LANG=japanese_japan.utf8 export NLS_LANG ${JAVA12_HOME}/bin/java -classpath .:${SYSLIB}:${ORACLE_HOME}/panama/server/classes$1:${WELIB} org.apache.jserv.JServ ${ORACLE_HOME}/Apache/Jserv/etc/jserv$1.properties > $LOGDIR/instance$1.log ---------------------------------------------------------------------------------------- マスター・インスタンスの起動スクリプトは、$ORACLE_HOME/panama/sample/rumMasterserver.sh を参考 にして下さい。ただし起動する Java クラス名は以下の様に修正してください。 誤 oracle.panama.MasterServer 正 oracle.panama.master.MasterServer ---------------------------------------------------------------------------------------#!/bin/sh JAVA12_HOME=${ORACLE_HOME}/Apache/jdk if [ -z "$JAVA12_HOME" ]; then test -x /usr/local/java/bin/java && JAVA12_HOME=/usr/local/java test -x /usr/java1.1/bin/java && JAVA12_HOME=/usr/java1.1 test -x /usr/java1.2/bin/java && JAVA12_HOME=/usr/java1.2 test -x /usr/java/bin/java && JAVA12_HOME=/usr/java else echo "JAVA12_HOME already set." >&2 fi test -z "${JAVA12_HOME}" && echo "Please set JAVA12_HOME first" && exit 1 echo "Running with JAVA12_HOME=¥"${JAVA12_HOME}¥"." >&2 WELIBDIR=${ORACLE_HOME}/panama/lib SYSLIB=${JAVA12_HOME}/lib/tools.jar:${JAVA12_HOME}/jre/lib/rt.jar WELIB=${WELIBDIR}/panama_core.zip WELIB=${WELIB}:${WELIBDIR}/panama.zip 第8章 Oracle9iAS Wireless 127 WELIB=${WELIB}:${WELIBDIR}/xmlparserv2.jar WELIB=${WELIB}:${ORACLE_HOME}/lib/servlet.jar WELIB=${WELIB}:${ORACLE_HOME}/Apache/BC4J/lib/jndi.jar WELIB=${WELIB}:${ORACLE_HOME}/jdbc/lib/classes12.zip NLS_LANG=japanese_japan.utf8 export NLS_LANG ${JAVA12_HOME}/bin/java -classpath .:${ORACLE_HOME}/panama/server/classes_m:${SYSLIB}:${WELIB} oracle.panama.master.MasterServer ---------------------------------------------------------------------------------------- 既知の制限事項と制約事項 JDBC ドライバ Oracle9iAS Wireless の今回のリリースでは、classes12.zip の JDBC ドライバのみサポートしています。 classes11.zip は、現在はサポートしていません。 ブートストラップ・リポジトリの ブートストラップ・リポジトリの Provisioning Service ブートストラップ・リポジトリの Provisioning Service を使用するには、まず、マスター・サービスの入力 パラメータで「User Customizable」をチェックする必要があります。 位置情報サービス 本バージョンでは、位置情報サービスの機能は、サポートしていません。位置情報サービスに関係するア ダプタは以下のものがあります。 ジオコーディング・アダプタ ルーティング・アダプタ イエロー・ページ・アダプタ ロケーション・ベース・サービス・アダプタ また、Region Modeling Tool もサポートされません。 メール・アダプタ メール・アダプタについては、以下の機能は使用できません。 マルチバイト・キャラクタを含んだメールの送信 マルチパート・メッセージの読み込み Web Integration アダプタの文字コード設定 Web Integration アダプタのサービスで使用するソースの文字コードに合わせて Input Encoding に文字コード を入力してください。詳細は「Oracle9iAS Wireless Web Integration Server でマルチバイト・キャラクタ・セ ットをサポートするための設定」を参照してください。 128 Oracle9i Application Server for Linux リリース・ノート SQL アダプタ・マスター・サービス マスター・サービスの PL/SQL コードでは、数字の入力パラメータ名は使用できません。また、ユーザー 名およびパスワードを指定する JDBC 接続文字列は使用できません。たとえば、次のように指定すること はできません。 jdbc:oracle:thin:user/password@hostname:port:sid 接続文字列情報は、次の形式にする必要があります 。 jdbc:oracle:thin:@hostname:port:sid ユーザー名およびパスワードは、Service Designer の「User Name」および「Password」フィールドで指定す る必要があります。 SQL アダプタを使用した半角カナデータの取得について SQL アダプタを使用してデータベースから半角カナのデータを取り出す場合に正常にデータが取り出せな いことがあります。これは JDBC ドライバの制限によるものです。 SQL アダプタの出力結果のキャプション SQL アダプタの Output parameters の caption の変更が SQL アダプタのサービス実行結果に反映されません。 SQL アダプタの実行結果で列の名前に caption を設定する場合には、下記のように元となる SQL 文の列に 対して別名を設定してください。 例:select sysdate 日付 from dual URL アダプタの文字コード設定について URL アダプタで言語エンコーディングに関する問題に対処するために、Input_Encoding パラメータが追加 され、リモートの XML ページのキャラクタ・セットを指定可能になりました。これにより、Shift_JIS お よび EUC の文字コードを判別可能です。 ストリッパ・アダプタにおける文字コード設定 ストリッパ・アダプタで言語エンコーディングに関する問題に対処するために、Input_Encoding パラメータ が追加され、リモートの HTML ページのキャラクタ・セットを指定可能になりました。これにより、Shift_JIS および EUC の文字コードを判別可能です。 ストリッパ・アダプタの外部サイトへのアクセス 本バージョンではプロキシサーバを使用してアクセスした外部サイトへのストリッパ・アダプタの使用は サポートされません。プロキシサーバを使用しないでアクセス可能なサイトのみストリッパ・アダプタの 使用をサポートします。 LDAP アダプタのログオンについて 本バージョンでは LDAP アダプタを使用して LDAP サーバーにログオンできるのはユーザー名、パスワー ドを必要としない Anonymous ユーザーのみとなります。ユーザー名、パスワードが必要とされるユーザー が LDAP アダプタを通じて LDAP サーバーにログオンすることはサポートされません。 LDAP アダプタの日本語使用について 下記の部分では日本語使用はサポートされません。 LDAP アダプタサービスのエイリアス名、フォルダ名 問い合わせ文字列での「問い合わせ名」(例: "EmployeeQuery[Filter=(cn.Name=?);SearchBase=;SearchScope=SUBTREE;ResultList=cn.CommonName]" 第8章 Oracle9iAS Wireless 129 という問い合わせ文字列の場合、"EmployeeQuery"の部分を日本語にして使用することはできません。 ここで"Name","CommonName"には日本語を使用できます。) Servlet アダプタの未サポートについて 本バージョンでは Servlet アダプタの使用はサポートされません。URL から目的の Servlet が実行できるよ うに HTTP Server の構成を変更するなどして、Servlet アダプタを使用する代わりに URL アダプタを使用し てください。 トランスフォーマ HDML 、TINY_HTML および WML1.1 トランスフォーマは変更されました。デフォルトでは、これらの変 更後のトランスフォーマはリポジトリにロードされません。トランスフォーマをご自分で変更していない 場合、up11-111.xml をアップロードします。 1. LoadXML ユーティリティ(up11-111.xml とともに、upload.sh を使用可能)を使用して新しいトラン スフォーマをアップロードします。upload.sh スクリプト・ファイルは、ORACLE_HOME 内の panama/sample に存在します。$ORACLE_HOME/panama/sample ディレクトリに移動し、次を実行し ます。 prompt> upload.sh up11-111.xml これらのトランスフォーマに変更を加えた場合、次の作業を実行します。 1. 相違点をマージします。 2. LoadXML ユーティリティ(up11-111.xml とともに、upload.sh を使用可能)を使用して新しいトラン スフォーマをアップロードします。upload.sh スクリプト・ファイルは、ORACLE_HOME 内の panama/sample に存在します。$ORACLE_HOME/panama/sample ディレクトリに移動し、次を実行し ます。 prompt> upload.sh up11-111.xml LoadXML ユーティリティの詳細は、『Oracle9i Application Server Wireless Edition コンフィギュレーショ ン・ガイド リリース 1.0.2.2』を参照してください。 Compact HTML トランスフォーマのサポートについて 標準で提供している Compact HTML トランスフォーマには、以下のような制限があります。 標準で提供している Compact HTML トランスフォーマの現在の仕様では、アクセスキーはサポートし ていません。対応する場合は、カスタマイズが必要です。 Panasonic 製の端末の場合、うまく表示できない問題が確認されています。対応する場合は、カスタマ イズが必要です。 なお、Compact HTML トランスフォーマは、i モード対応携帯電話およびドット i 対応 PHS が対象となりま す。 HDML トランスフォーマのサポートについて 標準で提供している HDML トランスフォーマには、以下のような制限があります。 標準で提供している MML トランスフォーマの現在の仕様では、mailto を利用したメール送信機能は サポートされていません。対応する場合は、カスタマイズが必要です。 インストール直後の Encoding 指定は、UTF-8 になっています。日本で使用する際には、このパラメー タの指定を Shift_JIS に変更する必要があります。設定変更方法は、「KDDI au/Tu-Ka EZweb 用ロジカ ル・デバイスの設定事項」を参照してください。 なお、HDML トランスフォーマは、EZweb 対応携帯電話を対象としています。 130 Oracle9i Application Server for Linux リリース・ノート KDDI au/Tu-Ka EZweb 用ロジカル・デバイスの設定事項 KDDI au/Tu-Ka EZweb 用ロジカル・デバイスの設定事項は、次のとおりです。 1. Oracle9iAS Wireless Service Designer を起動し、リポジトリ・データベースに接続します。 2. 使用するロジカル・デバイスを HDML に指定してください。 3. Oracle9iAS Wireless サーバーの $ORACLE_HOME/panama/server/classes/oracle/panama/core/Xform/Useragent.properties を編集します。 4. Oracle9iAS Wireless Service Designer で、指定したロジカル・デバイスにある Encodeing パラメータを Shift_JIS に設定してください。 SMS への対応 日本仕様の SMS(ショート・メッセージ・サービス)には対応していません。 プッシュ型通知機能(アラート プッシュ型通知機能 アラート) アラート 本機能を使用するにあたり、その注意事項を以下に記述します。 インターネットメール・サーバー(SMTP サーバーもしくはデーモン)が必要です。 Oracle9iAS Wireless のプッシュ型通知機能(AQ Daemon プロセス)を使用する場合、あるジョブでエ ラーが発生して停止されると、そのジョブはジョブ・キューから削除されます。ジョブを継続して使 用するには、エラーを修正し、ジョブをスケジュールしなおしてください。 エンド・ユーザーが Personalization Portal からメールアドレスを設定する場合、指定するメールアド レスを"<",">"で囲む必要がある場合があります。これは使用する SMTP サーバーによるものです。 アラート機能でメールの件名に日本語文字列を使用する場合は、JIS でエンコードした文字列をさらに MIME64 フォーマットでエンコードしてから、Notification.properties の mail.subject に下記のように記 述してください。 mail.subject="=?ISO-2022-JP?B?<String>?=" ここで<String>はエンコードした文字列に置き換えてください。 プッシュ型通知機能(アラート プッシュ型通知機能 アラート)の作成について アラート の作成について デバイス(ptg/rm)からのアラート作成は、デバイス(ptg/rm)->PAPZ->アラートを作成するサービス->Create Alert でアラートのエントリを作成して、デバイス(ptg/rm)->PAPZ->作成したアラート ->Schedule->Frequency/Time to Run で頻度と開始時間を設定することでアラートの作成が完了します。ただ し、Frequency、Time to Run ともに再度設定画面を表示しても現在の設定値は表示されませんので確認す る事はできません。 また、デバイスから作成したアラートを変更する場合、エントリのみが作成されているアラートを portal/Login.jsp から編集をしようとすると以下のようなエラーとなります。 Error Message the following error while loading the page: An unexpected error happened, please contact the administrator. There might be some setup problems. ptg/rm からのアラートアドレスの変更が正常に行われない (ptg/rm->)PAPZ->サービス->アラート->Address->アドレス一覧からアドレスの選択もしくは Create New Address を選択する方法はサポートされていません。実行すると以下のようなエラーとなります。 Not implemented yet アドレスの変更や新規アドレスの作成をしたい場合は、(ptg/rm->)PAPZ->User Profile->Alert Address->アド レス選択もしくは Add を選択して行ってください。 第8章 Oracle9iAS Wireless 131 詳細は、『Oracle9i Application ServerWireless Edition を参照してください。 インプリメンテーション・ガイド リリース 1.0.2.1』 )からのアラートアドレス作成で EMAIL を選択しても、 デバイス(ブラウザ、DoCoMo) 再度ページを表示すると SMS になってしまう アラートアドレス作成時に EMAIL を選択してもアラートアドレスのページを開くと SMS が選択されてい るような状態で表示されてしまいます。 portal/Login.jsp から確認すると正しく EMAIL が選択されています。 デバイス(UP.SDK、 、J-PHONE)からのアラートアドレス割り当てで )からのアラートアドレス割り当てで EMAIL を選択し デバイス( ても、再度ページを表示すると空になってしまう アラートアドレス作成時に EMAIL を選択してもアラートアドレスのページを開くと何も選択されていな い状態で表示されてしまいます。portal/Login.jsp から確認すると正しく EMAIL が選択されています。 アラートメールのヘッダ情報に日本標準時間以外が設定されている場合がある アラートメールのヘッダ情報の Date フィールドに以下のような書式で日付が設定されていますが、日本標 準時間以外が設定されている場合があります。 Thu, 16 Aug 2001 02:26:29 -0700 (PDT) この例の場合 PDT(Pacific Daylight Time)が設定されてますので日本標準時間との時差 16 時間を加算して読 んでください。PST(Pacific Standard Time)の場合は日本標準時間との時差 17 時間を加算して読んでくださ い。 デバッグ サービスの Input parameter に PAdebug パラメータとその value を"1"で指定してもブラウザやデバイスなど からサービスを実行した場合にデバッグ・モードで出力されません。デバッグの機能を有効にするために は、サービス実行時に URL の末尾に&PAdebug=1 を追加してください。 また、デバッグを有効にするためには、現在のセッションのログイン・ユーザーは、Designer 権限または Administrator 権限をもつ必要があります。Designer 権限または Administrator 権限の付与については、 『Oracle9i Application ServerWireless Edition インプリメンテーション・ガイド リリース 1.0.2.1』を参照し てください 。 Oracle9iAS Wireless Web Integration Developer:起動時の :起動時の Java エラー JDK1.2.2 を使用して Oracle9iAS Wireless Web Integration Developer を起動するとコマンドプロンプト上に下 記のエラーが発生します。 Error loading L&F: java.lang.ClassCastException: com.sun.java.swing.plaf.windows.WindowsLookAndFeel これは JDK1.1.x と 1.2.x の仕様の違いにより起こるエラーです。 Oracle9iAS Wireless Web Integration Developer の外観が JDK1.1.x を使用した場合と異なる場合があります。 Oracle9iAS Wireless Web Integration Developer:文字入力時の注意 :文字入力時の注意 設定を反映させるためには、[Enter]キーを押下して入力する必要があります。[Enter]キーを押下しない場合、 その内容は確定しません。 Oracle9iAS Wireless Web Integration Developer: :WIDL 作成時における日本語使用 WIDL 生成時、またはサービスのテスト時に入力が要求される値に日本語が含まれる場合、検索処理など が正常に行われません。 132 Oracle9i Application Server for Linux リリース・ノート Oracle9iAS Wireless Web Integration Developer:日本語変数名の使用について :日本語変数名の使用について Oracle9iAS Wireless WebIntegration Developer で使用するローカル変数名に日本語を使用することはできま せん。Oracle9iAS Wireless Service Designer でサービスを作成する際に内部変数のキャプションに日本語を 使用できますが、Oracle9iAS Wireless WebIntegration Developer でローカル変数を作成する時に、キャプショ ンに変換されるのを見越してあらかじめ日本語で変数名をつけると Oracle9iAS Wireless Web Integration Developer 上では問題ありませんが Oracle9iAS Wireless Service Designer に取り込んだ時に文字化けします。 Oracle9iAS Wireless Web Integration Developer:正規表現の未サポートについて :正規表現の未サポートについて Oracle9iAS Wireless Web Integration Developer を使用して、正規表現を用いたサービスを作成することはサ ポートされません。 Oracle9iAS Wireless Web Integration Server:正規表現の未サポートについて :正規表現の未サポートについて Oracle9iAS Wireless Web Integration Server に正規表現を使用した WIDL を登録し、動作させることはサポー トされません。 Oracle9iAS Wireless Service Designer:文字コード設定 :文字コード設定 Oracle9iAS Wireless Service Designer では各ロジカル・デバイスの文字コードが設定できます。また、アダ プタによっては Input Parameter に文字コード設定ができるものがあります。これらの文字コード名を指定 する際には Encoding.properties に記述されている IANA 対応の文字コード名を指定してください。 例:Shift_JIS に設定する場合は Shift_JIS と指定します(JAVA の文字コード名である SJIS ではありません)。 Oracle9iAS Wireless Service Designer: :EMAIL ロジカル・デバイスの文字コード 日本語環境で使用する場合は、EMAIL ロジカル・デバイスの文字コードを iso-2022-jp にすることを推奨し ます。 Oracle9iAS Wireless Service Designer:テスト・ウィザード :テスト・ウィザード Oracle9iAS Wireless Service Designer 内のテスト・ウィザードを使用するには、Designer ロールが存在する 必要があります。存在しない場合、サービスのテスト時に、デバイスの結果のみ表示されます。 Oracle9iAS Wireless Service Designer: :Transformer Testing Tool Windows NT で Service Pack 6 を使用している場合、Transformer Testing Tool の実行時に、次のエラーが発生 する可能性があります。 java.net.SocketException: JVM_SetSockOpt() TCP_NODELAY (code=10055) この問題を解決するには、マイクロソフト社の Web サイトから Service Pack 6a を入手して適用します。 Service Pack 6a をインストールしてもこの問題が解決されない場合、Service Pack 6a を再インストールしま す。これでも問題が解決されない場合、現在の Windows NT ユーザーを「Administrators」グループに追加 してください。 Oracle9iAS Wireless Service Designer: :Transformer Testing Tool でのエラー Transformer Testing Tool ではサービスのテスト時にエラーが発生する場合があります。この場合は Oracle9iAS Wireless Service Designer を再起動してください。 第8章 Oracle9iAS Wireless 133 Oracle9iAS Wireless Service Designer: :Transformer Testing Tool における実行 URI Transformer Testing Tool ではサービス実行時に Oracle9iAS Wireless サーバーへの接続情報を入力するダイア ログが表示されます。ここで Server URI に正しいポート番号、アクセスポイントが指定されていないと、 下記のようなエラーが発生します。 java.net.ConnectException: Connection refused: no further information このエラーが発生した場合は Server URI を入力した後に再度サービスを実行してください。 Oracle9iAS Wireless Service Designer: :Transformer Testing Tool でのサービスの テストで文字化けが発生する Transformer Testing Tool での実行結果に日本語が含まれている場合、文字化けが発生します。 Oracle9iAS Wireless Service Designer:フォルダ内容の表示 :フォルダ内容の表示 Oracle9i Application Server リリース 1.0.2.2 では、Oracle9iAS Wireless Service Designer のナビゲーション・ツ リーに表示されるオブジェクト数を制限することが可能です。この機能を使用するには、ptgsd.properties ファイルを編集し、表示するオブジェクト数を設定します。 Oracle9iAS Wireless Service Designer:エイリアス作成ウィザード :エイリアス作成ウィザード Oracle9iAS Wireless Service Designer でエイリアス作成時に 2 枚目のダイアログで Input parameters が空白に なっています。エイリアスの Input parameters は、エイリアスを一旦作成してから設定するようにしてくだ さい。 Oracle9iAS Wireless Service Designer: :XSLT エディタでの日本語入力 Oracle9iAS Wireless Service Designer で、トランスフォーマを編集する XSL エディタでは日本語が正しく入 力されません。日本語を入力し変更を適用すると「???」という文字列になります。XSL エディタでは日本 語を使用しないでください。 Oracle9iAS Wireless Service Designer:追加された新規の検索 :追加された新規の検索/ソート機能 :追加された新規の検索 ソート機能 「Master Services」ノードまたはフォルダ・ノードで右クリックすると、「Search/Sort」コマンドが表示さ れます。サービス名(大・小文字の区別あり)の検索が可能で、ワイルド・カード('%' など)も使用可能 です。検索結果は、名前、最終更新日付または順序番号によってソート可能です。多数のサービスをロー ドする場合、この新しい検索機能が効果的です。検索結果は、フォルダの新しい子ノードとして表示され、 自動的にノードが展開されます。フォルダを縮小表示してから再び展開すると、デフォルトで、すべての 子がロードされます。いずれの場合も、結果セットが大きすぎ、ptgsd.properties の上限サイズを超えた場合、 警告が表示され、結果セットの一部のみロードされます。この結果、必要なサービスが表示されなかった 場合、検索条件を絞り込んで検索を再実行する必要があります。 Oracle9iAS Wireless Service Designer: :Disp.Name に半角かなを使用しているユー ザ名が登録されているとユーザー検索で全くヒットしない Oracle9iAS Wireless Service Designer 上でユーザーの検索を行う場合、ユーザーの表示名称(Disp.Name)に半 角かなが含まれているものが登録されていると表示名称(Disp.Name)での検索が正常に行なわれません。 Oracle9iAS Wireless Service Designer:大きな :大きな XML ファイルのロード・エラー 一部の XML スタイルシート(特に大きなファイルの場合)が Oracle9iAS Wireless Service Designer からロ ードされる場合に破損するという問題が明らかになっています。これは、XML パーサーによるものです。 この問題はロードするファイルを分割することで回避することができます。 134 Oracle9i Application Server for Linux リリース・ノート Oracle9iAS Wireless Service Designer: :Master Service Creation Wizard : Name フ ィールドに1文字の文字列が使用できない Master Service Creation Wizard でサービスを作成する際のサービス名の入力で 1 文字のみのサービス名を指 定する場合、「Next」ボタンが有効にならない場合があります。たとえば「Create New Service Folder」を 実行した場合、「Creating Folder」画面の「Select a parent folder」セクションで親フォルダを選択して「Next」 ボタンをクリックする際、Name フィールドに入力する文字列が1文字の場合次ページへ遷移するための 「Next」ボタンが有効になりません。この問題を回避するためには、2文字以上の文字列を設定するか、 1文字のみのサービス名を指定する場合は2文字以上入力しバックスペースキーを使用して 1 文字にして ください。 例) 'a'というサービス名にしたい場合、'aa[BS]'と入力し'a'としてください。 'あ'というサービス名にしたい場合、'ああ[BS]'と入力し'あ'としてください。 なお、上記の例の操作は、『Oracle9i Application Server Wireless Edition インプリメンテーション・ガイド リ リース 1.0.2.1 』「9.3.1 作業 1:Master Service Creation Wizard の使用」の項番 3. a の操作にあたります。 Personalization Portal: :PAPZ ベースの Personalization Portal のサポート Oracle9iAS Wireless 1.1 より前にリリースされた PAPZ ベースの Personalization Portal は、 Oracle9i Application Server リリース 1.0.2.2 では正式に推奨から外され、 次期リリースでは、 完全にサポート対象外となります。 ポータル・ベースの Personalization Portal の使用を推奨します。次期リリースでは、これが唯一のサポート 対象の Personalization Portal となります。 Personalization Portal:ログイン後の画面で ログイン後の画面で HELP を参照できない Personalization Portal にログイン後の画面で HELP を参照することができません。参照するためには以下の 手順で設定を変更してください。 1. httpd.conf の Alias を ptgdoc から ptg-doc へ変更します。 2. $ORACLE_HOME/panama/doc/javadoc/index.html のファイル名を index.htm へ変更します。 Personalization Portal:ブックマーク :ブックマーク Personalization Portal でブックマークを作成する際、URL に http://という接頭辞を含める必要があります。 たとえば、次のようになります。 http://domain_name.com Personalization Portal:イメージの表示 :イメージの表示 Personalization Portal でイメージを正しく表示するには、jserv.properties ファイルの DISPLAY 環境変数を正 しく設定し、サーバーが稼動するホストへのアクセスを設定する必要があります。X サーバーが Oracle9iAS Wireless サーバーと同じマシンで稼動している場合、jserv.properties ファイルの DISPLAY 環境変数はイン ストール時に次のように設定されます。 wrapper.env=DISPLAY=localhost:0.0 X サーバーのホスト・マシン(次の例では x_server_host_name )から、次のコマンドを実行します。 prompt>xhost + <x_server_host_name> X サーバーが Oracle9iAS Wireless サーバーとは異なるマシンで稼動している場合(次の例では x_server_host_name)、jserv.properties ファイルの DISPLAY 環境変数を次のように設定します。 wrapper.env=DISPLAY=<x_server_host_name>:0.0 X サーバーのホスト・マシンから、Oracle9iAS Wireless のホスト(次の例では wireless_edition_host_name) を使用して、次のコマンドを実行します。 prompt>xhost + <wireless_edition_host_name> 第8章 Oracle9iAS Wireless 135 どちらの場合も、xhost コマンドの実行中は、コンソールにログインしたままにします。ログオフすると、 xhost コマンドによって設定されたプロパティが失われ、イメージが Personalization Portal で正しく表示され ない可能性があります。 Personalization Portal:アラート・アドレスの一意制約違反 :アラート・アドレスの一意制約違反 アラート・アドレスのアドレス(E-mail アドレスなど)はリポジトリ内で一意である必要があります。つ まり、他のユーザーと同じアドレスでは作成できません。作成しようとすると下記のようなエラーが発生 します。 java.sql.SQLException: ORA-00001: (PANAMA.AGENT_ADDRESS) Personalization Portal:マスター・サービスでのアラート :マスター・サービスでのアラート マスター・サービスに対してアラートは作成できません。アラートはサービスのエイリアスに対してのみ 作成できます。 Personalization Portal:サービス実行時の権限 :サービス実行時の権限 Administrator 権限を持つユーザーが所有するサービスを実行するユーザーは Administrator 権限を持つ必要 があります。サービスを実行するユーザーが適切な権限を持っていない場合、サービスが正しく実行され ません(例えば実行時に画面に「submit」のみが表示されます)。 Personalization Portal: :LocalStrings.properties の翻訳後のイメージ表示 $ORACLE_HOME/panama/server/classes/oracle/panama/webui/LocalString.properties に記述されている文字列 を日本語に翻訳した場合、ブラウザから表示される Personalization Portal でボタンやタブのイメージが正し く表示されません。この場合、ボタンやタブに当たる文字列には英語を使用するようにしてください。 LocalStrings.properties の翻訳 メール・アダプタや Personalization Portal など、いくつかのインターフェースは、ResourceBundle を使用し て LocalString.properties ファイルを読み込んでいます。これらを翻訳する場合には、以下の手順で行ってく ださい。 1. ユーザーのロケールに応じて、適切なファイル名にコピーする。 例) 日本語のユーザー用:LocalStrings_ja.properties 2. コピーした LocalString_XX_XX.properties を翻訳する。 3. JDK1.2.2 のコマンドの native2ascii などを利用して文字列を必ず UNICODE 形式に変換する。 各 LocalString.properties ファイルのパスは、『Oracle9i Application Server Wireless Edition コンフィギュレー ション・ガイド リリース 1.0.2.2』の 6 章を参照してください。 SystemLog.enableServiceLogging パラメータについて System.properties ファイルのパラメータ SystemLog.enableServiceLogging または SystemLog.enableSessionLogging をコメントアウトや削除した場合は Oracle9iAS Wireless の機能が正しく動 作しません。値の省略はサポートされていません。必ず TRUE または FALSE を設定してください。 136 Oracle9i Application Server for Linux リリース・ノート
© Copyright 2024 ExpyDoc