BEA WebLogic Server WebLogic Server アプレット ユーザーズ ガイド BEA WebLogic Server 6.1 マニュアルの 日 付 : 2001 年 12 月 19 日
著 作 権 Copyright 2001 BEA Systems, Inc. All Rights Reserved. 限 定 的 権 利 条 項 本 ソフトウェアおよびマニュアルは BEA Systems, Inc. 又 は 日 本 ビー イー エー システム ズ 株 式 会 社 ( 以 下 BEA といいます)の 使 用 許 諾 契 約 に 基 づいて 提 供 され その 内 容 に 同 意 する 場 合 にのみ 使 用 することができ 同 契 約 の 条 項 通 りにのみ 使 用 またはコピーすることがで きます 同 契 約 で 明 示 的 に 許 可 されている 以 外 の 方 法 で 同 ソフトウェアをコピーすることは 法 律 に 違 反 します このマニュアルの 一 部 または 全 部 を BEA からの 書 面 による 事 前 の 同 意 なし に 複 写 複 製 翻 訳 あるいはいかなる 電 子 媒 体 または 機 械 可 読 形 式 への 変 換 も 行 うことは できません 米 国 政 府 による 使 用 複 製 もしくは 開 示 は BEA の 使 用 許 諾 契 約 および FAR 52.227-19 の Commercial Computer Software-Restricted Rights 条 項 のサブパラグラフ (c)(1) DFARS 252.227-7013 の Rights in Technical Data and Computer Software 条 項 のサブパラグラフ (c)(1)(ii) NASA FAR 補 遺 16-52.227-86 の Commercial Computer Software--Licensing 条 項 の サブパラグラフ (d) もしくはそれらと 同 等 の 条 項 で 定 める 制 限 の 対 象 となります このマニュアルに 記 載 されている 内 容 は 予 告 なく 変 更 されることがあり また BEA による 責 務 を 意 味 するものではありません 本 ソフトウェアおよびマニュアルは 現 状 のまま 提 供 され 商 品 性 や 特 定 用 途 への 適 合 性 を 始 めとする(ただし これらには 限 定 されない)いかなる 種 類 の 保 証 も 与 えません さらに BEA は 正 当 性 正 確 さ 信 頼 性 などについて 本 ソフトウェ アまたはマニュアルの 使 用 もしくは 使 用 結 果 に 関 していかなる 確 約 保 証 あるいは 表 明 も 行 いません 商 標 または 登 録 商 標 BEA Jolt Tuxedo および WebLogic は BEA Systems, Inc. の 登 録 商 標 です BEA Builder BEA Campaign Manager for WebLogic BEA elink BEA Manager BEA WebLogic Collaborate BEA WebLogic Commerce Server BEA WebLogic E-Business Platform BEA WebLogic Enterprise BEA WebLogic Integration BEA WebLogic Personalization Server BEA WebLogic Process Integrator BEA WebLogic Server E-Business Control Center How Business Becomes E-Business Liquid Data Operating System for the Internet および Portal FrameWork は BEA Systems, Inc. の 商 標 です その 他 の 商 標 はすべて 関 係 各 社 がその 権 利 を 有 します WebLogic Server アプレット ユーザーズ ガイド パート 番 号 マニュアルの 日 付 ソフトウェアのバージョン なし 2001 年 12 月 19 日 WebLogic Server バージョン 6.1
目 次 このマニュアルの 内 容 対 象 読 者... v e-docs Web サイト... v このマニュアルの 印 刷 方 法... vi サポート 情 報...vi 表 記 規 則...vii 1. WebLogic Server でのアプレットの 使 用 はじめに...1-1 アプレットの 動 作 と 仕 組 み...1-1 アプレットをいつ 使 用 するか...1-2 WebLogic Server の Web プレゼンテーション - ベスト プラクティス. 1-3 アプレットの 使 用 確 認 済 みの 制 限...1-4 アプレット 使 用 のデメリット...1-4 ClassNotFoundException...1-4 ClassCastException...1-5 Java Plug-in の 使 い 方...1-5 CODEBASE 属 性...1-7 CODE 属 性...1-8 トラブルシューティングとパフォーマンス...1-8 アプレットのトラブルシューティング...1-9 アプレットがブラウザで 動 作 しない...1-9 ClassFormatError...1-9 ローカル 環 境 でのテスト...1-10 ローカル 開 発 環 境 からの 移 動...1-11 アーカイブによるアプレットの 高 速 化...1-11 WebLogic Server アプレット ユーザーズ ガイド iii
iv WebLogic Server アプレット ユーザーズ ガイド
このマニュアルの 内 容 このマニュアルでは WebLogic Server におけるアプレットの 使 い 方 について 説 明 します 内 容 は 以 下 のとおりです 第 1 章 WebLogic Server でのアプレットの 使 用 対 象 読 者 このマニュアルは Web アプリケーションの 構 築 に 関 心 のあるアプリケーショ ン 開 発 者 を 対 象 としています アプレットおよび Java プログラミングに 読 者 が 精 通 していることを 前 提 として 書 かれています e-docs Web サイト BEA 製 品 のドキュメントは BEA の Web サイトで 入 手 できます BEA ホーム ページの [ 製 品 のドキュメント ] をクリックするか WebLogic Server 製 品 ド キュメント ページ(http://edocs.beasys.co.jp/e-docs/wls61)を 直 接 表 示 してくだ さい WebLogic Server アプレット ユーザーズ ガイド v
このマニュアルの 印 刷 方 法 サポート 情 報 Web ブラウザの [ ファイル 印 刷 ] オプションを 使 用 すると Web ブラウザから このマニュアルを 一 度 に 1 章 ずつ 印 刷 できます このマニュアルの PDF 版 は Web サイトで 入 手 できます WebLogic ServerPDF を Adobe Acrobat Reader で 開 くと マニュアルの 全 体 (または 一 部 分 )を 書 籍 の 形 式 で 印 刷 できます PDF を 表 示 するには WebLogic Server ドキュメントの ホーム ページを 開 き [ ドキュメントのダウンロード ] をクリックして 印 刷 す るマニュアルを 選 択 します Adobe Acrobat Reader は Adobe の Web サイト(http://www.adobe.co.jp)で 無 料 で 入 手 できます BEA のドキュメントに 関 するユーザからのフィードバックは 弊 社 にとって 非 常 に 重 要 です 質 問 や 意 見 などがあれば 電 子 メールで docsupport-jp@beasys.com までお 送 りください 寄 せられた 意 見 については ドキュメントを 作 成 および 改 訂 する BEA の 専 門 の 担 当 者 が 直 に 目 を 通 します 電 子 メールのメッセージには ご 使 用 のソフトウェアの 名 前 とバージョン およ びドキュメントのタイトルと 日 付 をお 書 き 添 えください 本 バージョンの BEA WebLogic Server について 不 明 な 点 がある 場 合 または BEA WebLogic Server の インストールおよび 動 作 に 問 題 がある 場 合 は BEA WebSUPPORT (www.beasys.com)を 通 じて BEA カスタマ サポートまでお 問 い 合 わせくださ い カスタマ サポートへの 連 絡 方 法 については 製 品 パッケージに 同 梱 されて いるカスタマ サポート カードにも 記 載 されています カスタマ サポートでは 以 下 の 情 報 をお 尋 ねしますので お 問 い 合 わせの 際 はあ らかじめご 用 意 ください お 名 前 電 子 メール アドレス 電 話 番 号 ファクス 番 号 会 社 の 名 前 と 住 所 お 使 いの 機 種 とコード 番 号 vi WebLogic Server アプレット ユーザーズ ガイド
製 品 の 名 前 とバージョン 問 題 の 状 況 と 表 示 されるエラー メッセージの 内 容 表 記 規 則 このマニュアルでは 全 体 を 通 して 以 下 の 表 記 規 則 が 使 用 されています 表 記 法 Ctrl + Tab 適 用 複 数 のキーを 同 時 に 押 すことを 示 す 斜 体 強 調 または 書 籍 のタイトルを 示 す 等 幅 テキスト コード サンプル コマンドとそのオプション データ 構 造 体 とそ のメンバー データ 型 ディレクトリ およびファイル 名 とその 拡 張 子 を 示 す 等 幅 テキストはキーボードから 入 力 するテキスト も 示 す 例 : import java.util.enumeration; chmod u+w * config/examples/applications.java config.xml float 斜 体 の 等 幅 テ キスト すべて 大 文 字 のテキス ト コード 内 の 変 数 を 示 す 例 : String CustomerName; デバイス 名 環 境 変 数 および 論 理 演 算 子 を 示 す 例 : LPT1 BEA_HOME OR WebLogic Server アプレット ユーザーズ ガイド vii
表 記 法 適 用 { } 構 文 の 中 で 複 数 の 選 択 肢 を 示 す [ ] 構 文 の 中 で 任 意 指 定 の 項 目 を 示 す 例 : java utils.multicasttest -n name -a address [-p portnumber] [-t timeout] [-s send] 構 文 の 中 で 相 互 に 排 他 的 な 選 択 肢 を 区 切 る 例 : java weblogic.deploy [list deploy undeploy update] password {application} {source}... コマンドラインで 以 下 のいずれかを 示 す 引 数 を 複 数 回 繰 り 返 すことができる 任 意 指 定 の 引 数 が 省 略 されている パラメータや 値 などの 情 報 を 追 加 入 力 できる... コード サンプルまたは 構 文 で 項 目 が 省 略 されていることを 示 す viii WebLogic Server アプレット ユーザーズ ガイド
1 WebLogic Server でのアプレット の 使 用 はじめに BEA は 限 られたケースでのみアプレットの 使 用 をサポートしています この マニュアルでは アプレットの 使 用 を 検 討 する 上 で 役 立 つその 他 のオプションも 示 します また BEA が 推 奨 するベスト プラクティス 以 外 の 方 法 で WebLogic Server とアプレットを 使 用 するユーザのために Sun のサイトへのリンクを 示 し てあります 1-1 ページの アプレットの 動 作 と 仕 組 み 1-2 ページの アプレットをいつ 使 用 するか 1-5 ページの Java Plug-in の 使 い 方 1-8 ページの トラブルシューティングとパフォーマンス アプレットの 動 作 と 仕 組 み この 節 では アプレットの 機 能 について 簡 単 に 説 明 します 詳 細 については Sun の Java Web サイトの Applets を 参 照 してください アプレットは 次 のように <APPLET> タグを 使 用 して HTML ページに 埋 め 込 ま れます <APPLET CODE="HelloWorld.class" CODEBASE="/bea_wls_internal/classes/" WIDTH=150 HEIGHT=25> </APPLET> WebLogic Server アプレット ユーザーズ ガイド 1-1
1 WebLogic Server でのアプレットの 使 用 Web ブラウザは <APPLET> タグを 含 む HTML ページを 要 求 する 場 合 CODE 属 性 によって 指 定 されているメイン アプレット クラスの 検 索 を 試 みます Web ブ ラウザは CODEBASE 属 性 によって 指 定 された URL からそのクラスを 要 求 します アプレットが 使 用 する 他 のクラスは CODEBASE によって 指 定 された URL から 要 求 されます アプレットをテストするときには Web ブラウザのクラスパスにアプレット ク ラスが 指 定 されていないことに 注 意 する 必 要 があります ブラウザが 要 求 したク ラスを HTTP サーバから 取 得 できない 場 合 そのローカル パスを 検 索 します このため アプレットのデプロイメントを 適 切 にコンフィグレーションしたかの ように 感 じられます これは アプレットがローカル ホスト マシン 上 で 動 作 す るからです しかし 要 求 したアプレット クラスを Web サーバにすべてデプロ イしていない 場 合 誰 かがリモート クライアントからアプレットを 使 おうとし ても そのアプレットは 実 行 できません アプレットをいつ 使 用 するか BEA は J2EE プラットフォームの 一 部 としてサーバサイド アプリケーションを HTTP サーブレットと JavaServer Pages (JSP) と 一 緒 に 使 用 することをサポートし ています 新 しいアプリケーションを 開 発 する 前 に サーブレットまたは JSP を 使 用 することをお 勧 めします 一 般 に サーブレットと JSP を 使 用 する 一 連 の 対 話 型 Web ページを 適 切 に 作 成 すると Web サイトの 速 度 と 信 頼 性 が 向 上 しま す 現 在 アプレットを 使 用 している 場 合 Java Web Start を 使 用 してそのほとん どを Java アプリケーションに 変 換 し 引 き 続 き WebLogic Server を 使 用 できま す 詳 細 については Sun の Java Web Start サイトを 参 照 してください アプレットは WebLogic で 実 行 されている 分 散 アプリケーションの 一 部 とし て Web ブラウザのクライアントサイド インタフェースの 対 話 性 を 高 めるため に 使 用 できます グラフィックの 情 報 を 時 間 の 経 過 と 共 に 更 新 する 必 要 がある 場 合 アプレットは 最 良 の 方 法 です アプレットには ソフトウェアを 配 布 するこ となく 安 全 なクライアントサイド コードを 実 行 できるというメリットがありま す アプレットを 使 用 して ナビゲーション バーやコンソールなどのステートレス な クリック / レスポンス 型 のアプリケーションや 株 価 表 示 などのポーリング アプリケーションで ページの 機 能 を 拡 張 してもよいでしょう 1-2 WebLogic Server アプレット ユーザーズ ガイド
アプレットをいつ 使 用 するか WebLogic Server の Web プレゼンテーション - ベスト プラクティス 次 の 表 に WebLogic Server を 使 用 するときに 推 奨 される Web プレゼンテー ションの BEA ベスト プラクティスを 示 します 目 的 とする 作 業 ある 期 間 にわたっ てデータを 表 示 データベースへの 接 続 スレッドの 管 理 GUI の 強 化 アプレットのメリット / デメ リット グラフ 表 およびチャートを 更 新 して 現 在 の 情 報 を 表 示 でき る Web ページのフレームを 更 新 す る たとえば Administration Console の 階 層 情 報 が 含 まれる 左 フレームなど Web ブラウザ JVM によって 課 せられる 制 限 および 互 換 性 を 保 持 するためのコスト スレッド ContextClassloader の 制 限 が アプレット 内 で 例 外 となる ことがある アプレットは GUI 強 化 の 最 適 オプションであるが ブラウザ によってアプレットの 処 理 が 異 なるので 注 意 が 必 要 推 奨 される 方 法 アプレット サーブレットと JSP サーブレットと JSP アプリケーションと Java WebStart アプレットおよび WebLogic Server でテストされたブラウザとプラグインの 詳 細 については プラットフォーム サポート ページの WebLogic Server でのアプ レットのブラウザ サポート を 参 照 してください WebLogic Server アプレット ユーザーズ ガイド 1-3
1 WebLogic Server でのアプレットの 使 用 アプレットの 使 用 確 認 済 みの 制 限 この 節 では アプレットを 使 用 する 場 合 のデメリットと アプレットを 使 用 する 場 合 の 確 認 済 みの 制 限 2 点 について 説 明 します アプレット 使 用 のデメリット アプレットを 使 用 する 場 合 のデメリットを 挙 げると 以 下 のようになります 1 つのアプレットでは 大 規 模 なアプリケーションの 機 能 を 扱 えない アプレットは 一 般 にキャッシュすることができないので アプレットを 実 行 するたびにクラスを 毎 回 ダウンロードするということになる Java Plug-in を 使 用 して 有 効 になるキャッシングはバージョン 管 理 を 行 わな いので アプレットに 対 する 更 新 があっても 無 視 される ブラウザとブラウザのバージョンによって さまざまに 実 装 されるため ア プレットのパフォーマンスは 良 くない 2 つのウィンドウを 開 いてその 両 方 でアプレットを 実 行 し しかもどちらも 同 じページ 上 にあると パフォーマンスは 良 くない ClassNotFoundException イベント 処 理 スレッドの ContextClassloaders は ライフサイクル メソッドを 実 行 しているスレッドの ContextClassloader とは 異 なります ライフサイクル メ ソッドを 実 行 しているスレッドの ContextClassloader にのみ コードベースから ロードするクラスに 関 する 情 報 があります アプレット ライフサイクル メソッド (init start stop destroy) を 実 行 す るスレッド 以 外 のスレッドで initialcontext を 取 得 しようとすると 以 下 の ような 状 況 下 で ClassNotFoundException が 送 出 されることがあります (ActionListener を 実 装 する)アプレットの actionperformed() メソッド 内 で initialcontext を 取 得 しようとした 場 合 アプレット 内 に getinitialcontext メソッドがあり このメソッドが document.appletname.getinitialcontext() などの JSP から 呼 び 出 され ている 場 合 1-4 WebLogic Server アプレット ユーザーズ ガイド
Java Plug-in の 使 い 方 ClassCastException アプレット 内 の Weblogic Server クライアントがクラスローダからなんらかのリ ソース 情 報 を 取 得 しようとして キャッシュ タグと codebase=/bea_wls_internal/classes タグを 併 用 すると ClassCastException が 送 出 されることがあります 次 のようにして この 問 題 を 回 避 します コードベースとしてクラスパス サーブレットを 使 用 している 間 は cache_option や cache_archive などのキャッシュ オプションは 使 用 しな い キャッシュ オプションの 使 用 中 は コードベースとして /classes (ClasspathServlet) のままにしない これを 行 うには アーカイバ ユー ティリティを 使 って クライアント サイドの JAR ファイルを 初 めにパッ ケージ 化 する この 制 限 の 詳 細 については http://developer.java.sun.com/developer/bugparade/bugs/4648591.html を 参 照 して ください Java Plug-in の 使 い 方 BEA は 常 にアプレット 用 の Java Plug-in を 使 用 することをお 勧 めします Sun は アプレットがブラウザのデフォルト 仮 想 マシンではなく 標 準 Java 実 行 時 環 境 内 で 動 作 するためのブラウザ プラグインを 提 供 しています このため プラグインをサポートするブラウザで 一 貫 性 が 保 証 されます つまり アプレッ トの 互 換 性 と 信 頼 性 が 保 証 されます また プラグインを 使 用 すると クライア ント マシンでどの JRE が 使 用 されているのかを 簡 単 に 調 べることができます Java Plug-in は WebLogic Server と 通 信 する 必 要 があるアプレットに 不 可 欠 の 互 換 性 を 実 現 します ほとんどの 場 合 クライアントの Java 仮 想 マシン(JVM) のバージョンはサーバの JVM と 一 致 する 必 要 があります このため サーバで Java 1.3 が 実 行 されている 場 合 Java 1.3 Plug-in を 使 用 する 必 要 があります WebLogic Server アプレット ユーザーズ ガイド 1-5
1 WebLogic Server でのアプレットの 使 用 詳 細 については Sun の Java Plug-in ホームページを 参 照 してください Java Plug-in は Internet Explorer または Netscape ブラウザのネイティブ プラグイン です プラグインを 必 要 とするページに 最 初 にアクセスすると メッセージが 表 示 されて Sun の Web サイトに 移 動 し そこからプラグインがダウンロードされ ます プラグインは 一 度 ダウンロードするだけで 済 みます プラグインは Sun の 特 定 の JRE の 安 定 したリリース 上 でアプレットを 実 行 しますが それでもア プレットは 通 常 のアプレットのようにブラウザ 内 で 実 行 できます このプラグインを HTML ページに 埋 め 込 むのは 複 雑 な 作 業 です Internet Explorer と Netscape は 異 なる 構 文 を 使 用 するからです Sun の Web サイトには 両 方 の 構 文 フォーマットを 同 じ HTML ファイルに 変 換 する 方 法 が 公 開 されてい ます また 既 存 の <APPLET> タグを 自 動 的 に 変 換 する HTML コンバータをダ ウンロードできます この 解 決 策 は 非 常 に 巧 妙 ですが 不 自 然 で 管 理 が 困 難 で す このため より 優 れた 解 決 策 として JavaServer Pages の 使 用 を 検 討 すること をお 勧 めします JSP では <jsp:plugin> タグを 使 用 して JSP によって 生 成 された Web ページ にアプレットを 組 み 込 みます 生 成 されたサーブレットは クライアントの Web ブラウザのタイプを 検 出 し 適 切 なプラグイン タグを 応 答 として 送 信 しま す 詳 細 については WebLogic JSP プログラマーズ ガイド を 参 照 してくだ さい アプレット JVM の 要 件 は スタンドアロンのクライアント JVM の 要 件 と 同 じで す WebLogic 6.1 サーバに 対 して 1.3 JVM 上 でスタンドアロンのクライアント を 実 行 する 必 要 がある 場 合 は アプレット クライアントも 1.3 プラグイン 上 で 実 行 する 必 要 があります プラグイン 対 応 に 変 換 した 後 のアプレットは 次 のようになります <HTML> <HEAD><TITLE>Title of Applet page</title></head> <BODY> <OBJECT CLASSID="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" WIDTH = 600 HEIGHT = 350 CODEBASE="http://java.sun.com/products/plugin/1.3/jinstall-13-win 32.cab#Version=1,3,0,0"> <PARAM NAME = CODE VALUE = "Applet1.class"> <PARAM NAME = CODEBASE VALUE = "/bea_wls_internal/classes/defaultwebapp@defaultwebapp/"> <PARAM NAME = ARCHIVE VALUE = "weblogic.jar"> <PARAM NAME="type" VALUE="application/x-java-applet;version=1.3"> <PARAM NAME="scriptable" VALUE="false"> <COMMENT> <EMBED type="application/x-java-applet;version=1.3" 1-6 WebLogic Server アプレット ユーザーズ ガイド
Java Plug-in の 使 い 方 CODE = "Applet1.class" CODEBASE = "/bea_wls_internal/classes/defaultwebapp@defaultwebapp/" ARCHIVE = "weblogic.jar" WIDTH = 600 HEIGHT = 350 scriptable=false pluginspage="http://java.sun.com/products/plugin/1.3/plugin-insta ll.html";> <NOEMBED> </COMMENT> alt="your browser understands the <APPLET> tag but isn't running the applet, for some reason." Your browser is completely ignoring the <APPLET> tag! </NOEMBED> </EMBED> </OBJECT> </BODY> </HTML> CODEBASE 属 性 <APPLET> タグで CODEBASE 属 性 を 使 用 すると アプレットの Java クラス ファイ ルの 検 索 先 となる URL を 指 定 できます CODEBASE タグがない 場 合 Web ブラ ウザは <APPLET> タグが 埋 め 込 まれている HTML ファイルと 同 じディレクトリ 内 で 必 要 なクラスを 検 索 します CODEBASE を 使 用 すると サイトの HTML コン テンツとは 別 個 に 1 つのディレクトリを 作 成 し そのディレクトリにクラス ファイルを 格 納 できるようになります 注 意 : コードベースは WebLogic Server 6.1 SP3 の 場 合 /classes/ ではなく /bea_wls_internal/classes/ でなければなりません 多 くの 場 合 WebLogic Server と 一 緒 に 動 作 するアプレットでは WebLogic クラ スが 必 要 となります このため CODEBASE 属 性 を 使 用 して ブラウザが WebLogic から 必 要 なクラスをロードできるようにすると 便 利 です WebLogic は /classes にマップされる 特 別 なサーブレットを 自 動 的 に 提 供 します この サーブレットは WebLogic Server のクラスパスからクラスを 提 供 します この サーブレットは 仮 想 サーブレット 名 classes としてデフォルトで 登 録 されて います CODEBASE を 以 下 のような URL に 設 定 したとします CODEBASE="http://www.weblogic.com/bea_wls_internal/classes/" または CODEBASE="/bea_wls_internal/classes/" WebLogic Server アプレット ユーザーズ ガイド 1-7
1 WebLogic Server でのアプレットの 使 用 CODE 属 性 この 場 合 WebLogic Server はサーブレットを 起 動 します このサーブレット は WebLogic Server のクラスパスから 必 要 なクラスを 検 索 します ClassPath Servlet を 使 って CLASSPATH からリソースを 提 供 する 方 法 について は Web アプリケーションのアセンブルとコンフィグレーション の Web ア プリケーション コンポーネントのコンフィグレーション を 参 照 してください CODEBASE=/bea_wls_internal/classes/ の 場 合 には アプレットで 必 要 なク ラスは システム クラスパス 内 に 存 在 していなければなりません CODEBASE=/bea_wls_internal/classes/DefaultWebApp@DefaultWebApp の 場 合 には アプレットで 必 要 なクラスは applications/defaultwebapp/web-inf/classes ディレクトリまたはシステ ム クラスパスに 存 在 していなければなりません <APPLET> タグには メイン アプレット クラス ファイルの 完 全 なパッケージ 名 を 指 定 する CODE 属 性 が 含 まれていなければなりません CODE の 最 後 の 拡 張 子.class は 省 略 可 能 です たとえば GraphApplet を 使 用 する 場 合 <APPLET> タ グは 次 のようになります <APPLET CODE="GraphApplet" CODEBASE="/bea_wls_internal/classes/appName@componentName" > ここで appname はアプリケーションの 名 前 componentname は Web アプリ ケーションの 名 前 です <APPLET> タグと CODEBASE の 詳 細 については JavaSoft の Java チュートリ アルの Overview of Applets を 参 照 してください トラブルシューティングとパフォーマンス 以 下 のトピックでは トラブルシューティングとパフォーマンスの 問 題 について 説 明 します 1-8 WebLogic Server アプレット ユーザーズ ガイド
アプレットのトラブルシューティング トラブルシューティングとパフォーマンス ここでは アプレットを 使 用 するときに 直 面 するいくつかのシナリオを 示 しま す アプレットがブラウザで 動 作 しない WebLogic JDBC をアプレットで 使 用 して DBMS からデータを 取 得 していま す ローカル マシンで Sun Appletviewer を 使 用 してクラスを 実 行 する 場 合 は 何 の 問 題 もありません しかし Netscape ブラウザでアプレットを 実 行 しよう とすると アプレットに 接 続 できません アプレットが Appletviewer で 動 作 するのにブラウザでは 動 作 しない 場 合 Netscape セキュリティ 制 限 に 違 反 している 可 能 性 があります このような 場 合 アプレットはそのロード 元 以 外 のマシンに 対 するソケットを 開 くことができませ ん この 問 題 を 解 決 するには DBMS のホストとなるマシンからアプレット コードが 提 供 されるようにする 必 要 があります 注 意 : アプレットの CODEBASE で 使 用 する IP 名 フォーマット と WebLogic Server に 接 続 するために 使 用 する URL は 正 確 に 一 致 する 必 要 がありま す 一 方 でドット 表 記 を 使 用 し 他 方 でドメイン 名 を 使 用 することはで きません ClassFormatError ClassFormatError を 取 得 した 場 合 HTTP サーバのコンフィグレーションに 問 題 がある 場 合 があります WebLogic またはアプレット クラスを HTTP サーバの 適 切 なディレクトリに 配 置 していないか または APPLET タグ 内 の CODEBASE または CODE を 間 違 って 指 定 している 可 能 性 があります 次 に 例 を 2 つ 示 しま す アプレットが Web アプリケーション MyWar に 格 納 されている 可 能 性 がありま す この Web アプリケーションがアプリケーション MyEar の 一 部 である 場 合 CODEBASE は 次 のいずれかでなければなりません CODEBASE=http://host:port/bea_wls_internal/classes/MyEar@MyWar/ または WebLogic Server アプレット ユーザーズ ガイド 1-9
1 WebLogic Server でのアプレットの 使 用 CODEBASE=/bea_wls_internal/classes/MyEar@MyWar/ これにより MyWar Web アプリケーションからすべてのクラス ファイルとリ ソース ファイルがダウンロードされます すべてのリソース ファイル(JPG ファイルや JAR ファイルなど)を 特 定 の Web アプリケーションの WebApplicationRoot(この 場 合 は MyWar のルート ディレクトリ)に 保 持 する 必 要 があります CODE=com.myapp.MyApplet であるアプレットで CODEBASE をテストする 場 合 は http://server:host/codebasevalue/com/myapp/myapplet.class のような URL を 指 定 して ブラウザ ウィンドウからアクセスしてみます このクラスに 対 するダウンロード ウィンドウが 表 示 されるはずです 表 示 されない 場 合 は サーバで Web アプリケーションのコンフィグレーションを 修 正 する 必 要 があり ます 詳 細 については WebLogic HTTP サーブレット プログラマーズ ガイド を 参 照 してください ローカル 環 境 でのテスト WebLogic Server と Netscape Communicator 4.x を 同 じホスト 上 で 実 行 する 場 合 Communicator を 実 行 するシェルの 環 境 から CLASSPATH を 削 除 する 必 要 があり ます セキュリティ 上 の 理 由 により Netscape Communicator は 標 準 クラスの 悪 意 ある 変 更 を 避 けるためにローカル CLASSPATH からクラスをロードしません ブラウザの 実 行 時 にローカル CLASSPATH を 削 除 すると Netscape は WebLogic Server の CLASSPATH からクラスをロードします その 場 合 でも WebLogic を 起 動 するシェルに CLASSPATH を 設 定 する 必 要 が あります WebLogic では 使 用 する 環 境 に CLASSPATH を 設 定 せず WebLogic を 実 行 するシェルに CLASSPATH を 適 切 に 設 定 することをお 勧 めし ます アプリケーション 全 体 を 開 発 する 前 に アプレット 上 のプロトタイプのアプリ ケーションをテストすることをお 勧 めします WebLogic Server 側 では 解 決 でき ない 問 題 点 は アプレットのプラグインへの 依 存 性 に 起 因 するものなので その ような 問 題 についてテストすることをお 勧 めします このテストは 次 のような 場 合 にお 勧 めします アプレット 内 部 でなんらかのセキュア プロトコルの 使 用 を 必 要 とするアプリ ケーション 1-10 WebLogic Server アプレット ユーザーズ ガイド
トラブルシューティングとパフォーマンス RMI コールバック オブジェクトを 使 用 する 特 別 な 設 計 のアプレット 内 部 で JMS を 使 用 するアプレット ローカル 開 発 環 境 からの 移 動 アプレットをローカル 環 境 から 移 動 する 場 合 WebLogic クラスとアプレット ク ラスを Web サーバ 上 の 適 切 な 場 所 にインストールしたかどうかを 確 認 する 必 要 があります WebLogic 配 布 キットをインストールしたマシン 上 でアプレットを 実 行 する 場 合 これによって CODEBASE に 関 する 問 題 が 隠 されてしまう 場 合 があります ア プレットは 最 初 にローカル CLASSPATH の WebLogic クラスを 検 索 します ク ラスを 適 切 にインストールしなかったため HTTP サーバからアプレットが 提 供 されない 場 合 でも アプレットはデフォルトでローカル CLASSPATH を 検 索 して 動 作 するので この 問 題 は 表 面 化 しません HTTP コンフィグレーションを 適 切 にテストするには ローカル CLASSPATH の WebLogic クラス 名 を 一 時 的 に 変 更 するか アプレットを 別 のマシンからロードするようにします アーカイブによるアプレットの 高 速 化 WebLogic には HTML サーバ ログをスキャンし アプレットのクラスの zip ファイルを 作 成 してファイルのダウンロードを 高 速 化 するためのユーティリティ が 用 意 されています さらに 高 速 な 手 段 は 可 能 な 限 りアプレットで JDBC を 使 用 せず DBMS データをサーブレットから HTML 形 式 で 取 得 することです サーブレットは アプレットに 代 わってクエリを 実 行 し ワークスペースから データを 取 得 して HTML として 提 供 します このデータを 非 同 期 に 維 持 する WebLogic プロセスと 連 携 することにより アプリケーションのパフォーマンス が 向 上 します アプレットが 実 行 前 に 数 多 くのファイルをダウンロードしなければならない 場 合 HTML ページの APPLET タグの 中 で ARCHIVE パラメータを 使 用 することで これを 高 速 化 できます 複 数 のアプレットに 関 する 典 型 的 な 問 題 は ブラウザが アプレット 内 で 使 用 されているファイルごとに 別 個 の HTTP 接 続 を 確 立 しなけ ればならないことです 接 続 を 確 立 するのに 数 秒 かかる 場 合 もあり ファイル 自 体 のダウンロード 時 間 より 長 くなることもあります ARCHIVE パラメータを 使 用 WebLogic Server アプレット ユーザーズ ガイド 1-11
1 WebLogic Server でのアプレットの 使 用 すると これらのクラスを 1 個 の.jar ファイル(Microsoft Internet Explorer の 場 合 は.cab ファイル)にまとめることができます このファイルは 単 一 の HTTP 接 続 でダウンロードできます JAR ファイルは 圧 縮 可 能 なので(CAB ファイル は 常 に 圧 縮 される) ダウンロード 時 間 がさらに 短 縮 します 注 意 : Appletviewer Netscape Navigator(3.0 以 降 のみ) および HotJava ブラ ウザを 使 用 するときの 手 順 は Microsoft Internet Explorer(4.0 以 降 のみ) で 使 用 する 手 順 とは 異 なります 完 全 な 互 換 性 を 実 現 するために 両 方 の 方 法 を 組 み 合 わせることができます 1-12 WebLogic Server アプレット ユーザーズ ガイド