• 検索結果がありません。

applets.book

N/A
N/A
Protected

Academic year: 2021

シェア "applets.book"

Copied!
22
0
0

読み込み中.... (全文を見る)

全文

(1)

BEA

WebLogic

Server

WebLogic Server

プ レ ッ ト

ユーザーズ

(2)

著作権

Copyright © 2002 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 Commerce Server、 BEA WebLogic Enterprise、 BEA WebLogic Enterprise Platform、 BEA WebLogic Express、 BEA WebLogic Integration、 BEA WebLogic Personalization Server、 BEA WebLogic Platform、 BEA WebLogic Portal、 BEA WebLogic Server、 BEA WebLogic Workshop、 および How Business Becomes E-Business は、 BEA Systems, Inc の商標です。

その他の商標はすべて、 関係各社がその権利を有し ます。

WebLogic Server アプレ ッ ト ユーザーズ ガ イ ド

(3)

目次

このマニュアルの内容

対象読者... v e-docs Web サイト ... v このマニュアルの印刷方法 ... v サポート情報 ...vi 表記規則...vii

1.

WebLogic Server

でのアプレットの使用

はじめに...1-1 アプレットの動作と仕組み ...1-1 どのような状況で使用するのか...1-2

WebLogic Server の Web プレゼンテーション — ベスト プラクティス1-3

アプレットの使用に関する確認済みの制限 ...1-4 アプレットを使用するデメリット ...1-4 アプレットからの EJB へのアクセス ...1-4 ClassNotFoundException ...1-5 ClassCastException ...1-5 Java Plug-in の使い方...1-6 CODEBASE 属性...1-8 CODE 属性 ...1-9 トラブルシューティングとパフォーマンス ...1-9 アプレットのトラブルシューティング ...1-9 アプレットがブラウザで動作しない ...1-9 ClassFormatError ...1-10 ローカル環境でのテスト...1-11 ローカル開発環境からの移動 ...1-12 アーカイブによるアプレットの高速化 ...1-12

(4)
(5)

このマニュ アルの内容

こ のマニ ュ アルでは、 WebLogic Server におけ る アプレ ッ ト の使い方について説 明し ます。 こ のマニ ュ アルの構成は次の と お り です。  第 1 章 「WebLogic Server でのアプレ ッ ト の使用」

対象読者

こ のマニ ュ アルは、 Web アプ リ ケーシ ョ ンの構築に関心のあ る アプ リ ケーシ ョ ン開発者を対象 と し ています。 アプレ ッ ト および Java プ ロ グ ラ ミ ングに読者が 精通し てい る こ と を前提 と し て書かれています。

e-docs Web

サイ ト

BEA 製品の ド キ ュ メ ン ト は、 BEA の Web サ イ ト で入手で き ます。 BEA のホー

ム ページで [ 製品の ド キ ュ メ ン ト ] を ク リ ッ クする か、 ま たは WebLogic Server 製品 ド キ ュ メ ン ト ページ (http://edocs.beasys.co.jp/e-docs/index.html) を直接表 示し て く だ さ い。

このマニ ュ アルの印刷方法

Web ブ ラ ウ ザの [ フ ァ イル|印刷 ] オプシ ョ ンを使用する と 、 Web ブ ラ ウ ザか ら こ のマニ ュ アルを一度に 1 章ずつ印刷でき ます。

(6)

こ のマニ ュ アルの PDF 版は、 WebLogic Server の Web サ イ ト で入手でき ます。

PDF を Adobe Acrobat Reader で開 く と 、 マニ ュ アルの全体 (ま たは一部分) を

書籍の形式で印刷で き ます。 PDF を表示するには、 WebLogic Server ド キ ュ メ ン ト のホーム ページを開き、 [ ド キ ュ メ ン ト のダ ウ ン ロー ド ] を ク リ ッ ク し て、 印 刷するマニ ュ アルを選択し ます。

Adobe Acrobat Reader は Adobe の Web サ イ ト (http://www.adobe.co.jp) で無料

で入手で き ます。

サポー ト 情報

BEA の ド キ ュ メ ン ト に関するユーザか ら のフ ィ ー ド バ ッ ク は弊社に と って非常 に重要です。 質問や意見な どがあれば、 電子 メ ールで [email protected] までお送 り く だ さ い。 寄せられた意見については、 WebLogic Server の ド キ ュ メ ン ト を作成および改訂する BEA の専門の担当者が直に目を通し ます。 電子 メ ールの メ ッ セージには、 ご使用の ソ フ ト ウ ェ アの名前 と バージ ョ ン、 およ び ド キ ュ メ ン ト の タ イ ト ル と 日付をお書き添え く だ さ い。 本バージ ョ ンの BEA

WebLogic Server について不明な点があ る場合、 ま たは BEA WebLogic Server の

イ ン ス ト ールおよび動作に問題があ る場合は、 BEA WebSupport (www.bea.com) を通じ て BEA カ ス タ マ サポー ト までお問い合わせ く だ さ い。 カ ス タマ サポー ト への連絡方法については、 製品パ ッ ケージに同梱さ れてい る カ ス タマ サポー ト カー ド に も記載 さ れています。 カ ス タマ サポー ト では以下の情報をお尋ねし ますので、 お問い合わせの際はあ ら か じ めご用意 く だ さ い。  お名前、 電子 メ ール ア ド レ ス、 電話番号、 フ ァ ク ス番号  会社の名前 と 住所  お使いの機種 と コー ド 番号  製品の名前 と バージ ョ ン  問題の状況 と 表示 さ れる エ ラー メ ッ セージの内容

(7)

表記規則

こ のマニ ュ アルでは、 全体を通し て以下の表記規則が使用 さ れています。 表記法 適用 〔Ctrl〕 + 〔Tab〕 複数のキーを同時に押す こ と を示す。 斜体 強調ま たは書籍の タ イ ト ルを示す。 等幅テキスト コー ド サンプル、 コ マ ン ド と そのオプシ ョ ン、 データ 構造体 と そ の メ ン バー、 デー タ型、 デ ィ レ ク ト リ 、 およ びフ ァ イル名 と その 拡張子を示す。 等幅テ キ ス ト はキーボー ド か ら 入力す る テ キ ス ト も 示す。 例 : import java.util.Enumeration; chmod u+w * config/examples/applications .java config.xml float 斜体の等幅テ キスト コー ド 内の変数を示す。 : String CustomerName; すべて大文 字のテ キ ス ト デバ イ ス名、 環境変数、 お よび論理演算子を示す。 例 : LPT1 BEA_HOME OR { } 構文の中で複数の選択肢を示す。

(8)

[ ] 構文の中で任意指定の項目を示す。

例 :

java utils.MulticastTest -n name -a address [-p portnumber] [-t timeout] [-s send]

| 構文の中で相互に排他的な選択肢を区切る 。

例 :

java weblogic.deploy [list|deploy|undeploy|update] password {application} {source}

... コ マ ンド ラ イ ンで以下のいずれか を示す。  引数を複数回繰 り 返す こ と がで き る。  任意指定の引数が省略 さ れてい る 。  パ ラ メ ータや値な ど の情報を追加入力で き る。 . . . コ ー ド サンプルま たは構文で項目が省略 さ れてい る こ と を示す。 表記法 適用

(9)

1

WebLogic Server

でのアプレ ッ ト

の使用

はじめに

BEA は、 限 られたケース でのみアプレ ッ ト の使用をサポー ト し ています。 こ の マニ ュアルでは、 アプレ ッ ト の使用を検討する上で役立つその他のオプシ ョ ン も 示し ます。 ま た、 BEA が推奨するベス ト プ ラ ク テ ィ ス以外の方法で WebLogic Server と アプレ ッ ト を使用する ユーザのために、 Sun のサ イ ト への リ ン ク を示し てあ り ます。  1-1 ページの 「アプレ ッ ト の動作 と 仕組み」  1-2 ページの 「どの よ う な状況で使用するのか」  1-6 ページの 「Java Plug-in の使い方」  1-9 ページの 「 ト ラ ブルシ ューテ ィ ン グ と パフ ォーマン ス」

アプレ ッ ト の動作と仕組み

こ の節では、 アプレ ッ ト の機能について簡単に説明し ます。 詳細については、

Sun の Java Web サ イ ト のAppletsを参照し て く だ さ い。

アプレ ッ ト は、 次の よ う に、<APPLET>タ グ を使用し て HTML ページに埋め込ま れます。

<APPLET CODE="HelloWorld.class"

(10)

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 ブ ラ ウザの ク ラ イ アン ト サ イ ド イ ン タ フ ェースの対話性を高め る ため に使用で き ます。 グ ラ フ ィ ッ ク の情報を時間の経過 と 共に更新する必要があ る場 合、 アプレッ ト は最良の方法です。 アプレッ ト には、 ソ フ ト ウ ェ ア を配布する こ と な く 安全な ク ラ イ アン ト サ イ ド コー ド を実行で き る と い う メ リ ッ ト があ り ま す。

(11)

どの よ う な状況で使用す るのか

アプレ ッ ト は、 ページ機能の拡張に使用で き ます。 た と えば、 ス テー ト レ ス な ク リ ッ ク / 応答型のアプ リケーシ ョ ン (ナビゲーシ ョ ン バー、 コ ン ソールなど)、 あ る いはポー リング アプ リケーシ ョ ン (株価表示な ど) で使用可能です。

WebLogic Server

Web

プ レゼンテーシ ョ ン

ス ト

プ ラ ク テ ィ ス

次の表に、 WebLogic Server を使用する と き に推奨さ れる、 Web プレ ゼンテー シ ョ ンの BEA ベス ト プ ラ ク テ ィ ス を示し ます。 アプレ ッ ト および WebLogic Server でテ ス ト さ れたブ ラ ウ ザ と プ ラ グ イ ンの詳細 については、 「動作確認状況」 ページの 「WebLogic Server でのアプレ ッ ト のブ ラ ウ ザ サポー ト」 を参照し て く だ さ い。 表1-1 目的とする作業 . . アプレ ッ ト のメ リ ッ ト /デ メ リ ッ ト 推奨される方法 . . あ る期間にわた って データ を表示 グ ラ フ、 表、 およ びチ ャー ト を更新 して現在の情報を表示で き る 。 Web ページの フ レーム を更新す る。 た と えば、Administration Console の階層 情報が含ま れ る左フ レーム な ど。 アプ レ ッ ト データ ベースへの接 続 Web 制限、 お よび互換性を保持する ためのブ ラ ウザ JVM に よ っ て課せ ら れ る コ ス ト 。 サーブ レ ッ ト と JSP ス レ ッ ド の管理 ス レ ッ ド のContextClassloaderの制 限に よ っ て、 アプ レ ッ ト で例外が発生 する 可能性があ る 。 サーブ レ ッ ト と JSP GUI の強化 GUI の強化についてはアプ レ ッ ト が最 適であ る が、 ブ ラ ウザに よ って アプ レ ッ ト の処理が異な る ので注意が必要。 アプ リ ケーシ ョ ン と Java WebStart

(12)

1 WebLogic Server でのアプ レ ッ ト の使用

アプレ ッ ト の使用に関する確認済みの制限

こ の節では、 アプレ ッ ト を使用するデ メ リ ッ ト 、 およびアプレ ッ ト の使用に関す る 2 つの確認済みの制限について説明し ます。

アプレ ッ ト を使用するデ メ リ ッ ト

アプレ ッ ト を使用するデ メ リ ッ ト は次の と お り です。  アプレ ッ ト は大型のアプ リ ケーシ ョ ンの機能を処理でき ない。  アプレ ッ ト では通常、 キ ャ ッ シング を実行できず、 アプレ ッ ト が実行さ れ る たびに ク ラ スがダ ウ ン ロー ド さ れる。  Java Plug-in で可能 と な る キ ャ ッ シ ングはバージ ョ ン管理を行わないため、 アプレ ッ ト に対する更新はすべて無視さ れ る。  ブ ラ ウ ザ間およびバージ ョ ンの異な るブ ラ ウ ザ間で実装が異な る と 、 アプ レ ッ ト のパフ ォーマン スが低下する。  アプレ ッ ト を実行し ている 2 つの ウ ィ ン ド ウ を開き、 両方が同じページ上に あ る場合、 パフ ォーマン スが低下する。

アプレ ッ ト からの

EJB

へのアクセス

別のアプ リ ケーシ ョ ンでデプ ロ イ さ れた EJB にア ク セ スする アプレ ッ ト を Web アプ リ ケーシ ョ ンで使用する場合には、 Web アプ リ ケーシ ョ ンの一部 と し て EJB ス タブを含める必要があ り ます。 そのためには、ejbcで -disableHotCodeGen オプシ ョ ンを使用し て ス タ ブを生成し、 Web アプ リ ケー シ ョ ンの一部 と し て EJB ス タ ブをパ ッ ケージ化し ます。 ス タ ブが Web アプ リ ケーシ ョ ンの一部 と し て含まれてい ない 場合、 アプレ ッ ト が EJB にア ク セ ス し よ う と する と ClassNotFoundExceptionが生成さ れます。

(13)

どの よ う な状況で使用す るのか

ClassNotFoundException

イベン ト 処理ス レ ッ ド の ContextClassloader は、 ラ イ フサ イ ク ル メ ソ ッ ド を実行 する ス レ ッ ド の ContextClassloader と は異な り ます。 CODEBASE か ら ロー ド し た ク ラ スに関する情報を保持する のは、 ラ イ フサ イ ク ル メ ソ ッ ド を実行する ContextClassloader だけです。

アプレ ッ ト の ラ イ フサ イ ク ル メ ソ ッ ド (init、start、stop、destroy) を実行 する ス レ ッ ド以外の ス レ ッ ド で initialContextを取得し よ う と する と 、 以下 の状況で ClassNotFoundExceptionが送出 さ れる可能性があ り ます。

 ActionListener を実装する アプレ ッ ト の actionPerformed() メ ソ ッ ド で initialContextを取得し よ う と し ている場合。

 アプレ ッ ト に getInitialContext メ ソ ッ ド があ り 、 その メ ソ ッ ド が document.AppletName.getInitialContext()などの JSP から呼び出さ れ る 場合。

ClassCastException

アプレ ッ ト で WebLogic Server ク ラ イ アン ト が ク ラ ス ローダか ら一部の リ ソース 情報を取得し よ う と する と きに cache タ グ と codebase=/bea_wls_internal/classes タ グが一緒に使用 さ れる と 、 ClassCastExceptionが送出さ れ る可能性があ り ます。 こ の問題を避け るには、 次の こ と に注意し ます。

 ClasspathServlet を CODEBASE と し て使用し てい る間は、cache_option、 cache_archiveな どのキ ャ ッ シ ュ オプシ ョ ン を使用し ない。  キ ャ ッ シ ュ オプシ ョ ン を使用し てい る間は、/classes (ClasspathServlet) を CODEBASE と し ない。 そのためには、 最初に ク ラ イ アン ト サ イ ド JAR フ ァ イ ルを archiver ユーテ ィ リ テ ィ を使用し てパ ッ ケージ化し ます。 こ の制限の詳細については、 http://developer.java.sun.com/developer/bugParade/bugs/4648591.html を参照し て く だ さ い。

(14)

1 WebLogic Server でのアプ レ ッ ト の使用

Java Plug-in

の使い方

BEA は、 常にアプレ ッ ト 用の Java Plug-in を使用する こ と をお勧め し ます。 Sun は、 アプレ ッ ト がブ ラ ウザのデフ ォル ト 仮想マシ ンではな く 標準 Java 実行 時環境 (JRE) 内で動作する ためのブ ラ ウザ プ ラ グ イ ン を提供し ています。 こ の ため、 プ ラ グ イ ン をサポー ト するブ ラ ウ ザで一貫性が保証さ れます。 つま り 、 ア プレ ッ ト の互換性 と 信頼性が保証 さ れます。 ま た、 プ ラ グ イ ン を使用する と 、 ク ラ イ アン ト マシンでどの JRE が使用 さ れている のかを簡単に調べる こ と ができ ます。

Java Plug-in は、 WebLogic Server と 通信する必要があ る アプレ ッ ト に不可欠の互

換性を実現し ます。 ほ と んどの場合、 ク ラ イ アン ト の Java 仮想マシン (JVM) のバージ ョ ンはサーバの JVM と 一致する必要があ り ます。 こ のため、 サーバで

Java 1.3 が実行さ れてい る場合、 Java Plug-in 1.3 を使用する必要があ り ます。

詳細については、 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 ブ ラ ウザの タ イ プを検出し、 適切なプ ラ グ イ ン タ グ を応答 と し て送信し ま

(15)

Java Plug-in の使い方 アプレ ッ ト の 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" 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 &lt;APPLET&gt; tag but isn't running the applet, for some reason."

Your browser is completely ignoring the &lt;APPLET&gt; tag! </NOEMBED>

</EMBED> </OBJECT> </BODY> </HTML>

(16)

1 WebLogic Server でのアプ レ ッ ト の使用

CODEBASE

属性

<APPLET> タ グで CODEBASE属性を使用する と 、アプレ ッ ト の Java ク ラ ス フ ァ イ ルの検索先 と な る URL を指定でき ます。CODEBASE タ グがない場合、 Web ブ ラ ウ ザは <APPLET>タ グが埋め込まれている HTML フ ァ イ ル と 同じデ ィ レ ク ト リ 内で必要な ク ラ ス を検索し ます。CODEBASEを使用する と 、 サ イ ト の HTML コ ン テ ンツ と は別個に 1 つのデ ィ レ ク ト リ を作成し、 そのデ ィ レ ク ト リ に ク ラ ス フ ァ イルを格納でき る よ う にな り ます。

多 く の場合、 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 はサーブレ ッ ト を起動し ます。 こ のサーブレ ッ ト は、 WebLogic Server の ク ラ スパスか ら必要な ク ラ ス を検索し ま す。

ClasspathServlet に よ る CLASSPATH か ら の リ ソースの提供については、 『Web

アプ リ ケーシ ョ ンのアセンブル と コ ン フ ィ グ レーシ ョ ン』 の 「Web アプ リ ケー シ ョ ン コ ンポーネン ト のコ ン フ ィ グ レーシ ョ ン」 を参照し て く だ さ い。 CODEBASE=/bea_wls_internal/classes/の場合、 アプレ ッ ト に必要な ク ラ ス はシ ス テム ク ラ スパス になければな り ま せん。 CODEBASE=/bea_wls_internal/classes/DefaultWebApp@DefaultWebAppの 場合、 アプレ ッ ト に必要な ク ラ スは applications/DefaultWebApp/WEB-INF/classesデ ィ レ ク ト リ 、 ま たはシ ス テ ム ク ラ スパスになければな り ません。

(17)

ト ラ ブルシ ュ ーテ ィ ン グ と パ フ ォ ーマ ン ス

CODE

属性

<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」 を参照し て く だ さ い。

ト ラ ブルシ ューテ ィ ング とパフ ォーマンス

以下の ト ピ ッ ク では、 ト ラ ブルシ ューテ ィ ング と パフ ォーマン スの問題について 説明し ます。

アプレ ッ ト の ト ラ ブルシ ューテ ィ ング

こ こ では、 アプレ ッ ト を使用する と き に直面する い く つかのシナ リ オを示し ま す。

アプレ ッ ト がブ ラウザで動作し ない

WebLogic JDBC を アプレ ッ ト で使用し て、 DBMS か らデータ を取得し ています。 ローカル マシンで Sun Appletviewer を使用し て ク ラ ス を実行する場合は、 何の 問題 も あ り ません。 し か し、 Netscape ブ ラ ウザでアプレ ッ ト を実行し よ う と す る と 、 アプレ ッ ト に接続で き ません。

(18)

1 WebLogic Server でのアプ レ ッ ト の使用 アプレ ッ ト が 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/ ま たは CODEBASE=/bea_wls_internal/classes/MyEar@MyWar/ こ の CODEBASE に よ っ て、 すべての ク ラ スおよび リ ソース フ ァ イ ルが Web ア プ リ ケーシ ョ ン MyWar か ら ダ ウ ン ロー ド さ れます。 JPG フ ァ イル、 JAR フ ァ イ ルな どのすべての リ ソ ース フ ァ イ ルを、 特定の Web アプ リ ケーシ ョ ンの WebApplicationRoot (こ の場合は MyWar のルー ト デ ィ レ ク ト リ ) にま と めて おき ます。 CODE=com.myapp.MyAppletと い う 属性を含むアプレ ッ ト の CODEBASE を テ ス ト する場合は、 http://server:host/CODEBASEvalue/com/myapp/MyApplet.classな どの URL を指定し て、 ブ ラ ウ ザ ウ ィ ン ド ウ か ら ア ク セス し てみます。 こ の ク ラ スの

(19)

ト ラ ブルシ ュ ーテ ィ ン グ と パ フ ォ ーマ ン ス ダウ ン ロー ド ウ ィ ン ド ウ が表示さ れ るはずです。 表示さ れない場合は、 サーバ の 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 サ イ ド では解決で き ない問題点をテ ス ト し ます。 こ れ ら の問題はアプレ ッ ト プ ラ グ イ ンへの依存に 起因する も のだか ら です。 こ のテ ス ト は以下の よ う な対象について行 う こ と をお 勧め し ます。  アプレ ッ ト 内でセキ ュ ア プロ ト コルを使用する必要があ る アプ リ ケーシ ョ ン。  RMI コールバ ッ ク オブジ ェ ク ト を保持する 特殊な設計のアプレ ッ ト 。  内部で JMS を使用する アプレ ッ ト 。

(20)

1 WebLogic Server でのアプ レ ッ ト の使用

ローカル開発環境からの移動

アプレ ッ ト を ローカル環境か ら移動する場合、 WebLogic ク ラ ス と アプレ ッ ト ク ラ ス を Web サーバ上の適切な場所に イ ンス ト ールし たかど う かを確認する必要 があ り ます。 WebLogic 配布キ ッ ト を イ ンス ト ール し たマシ ン上でアプレ ッ ト を実行する場 合、 こ れによ って CODEBASEに関する問題が隠さ れて し ま う 場合があ り ます。 ア プレ ッ ト は、 最初に ローカル CLASSPATHの WebLogic ク ラ ス を検索し ます。 ク ラ ス を適切に イ ンス ト ール し なかっ たため、 HTTP サーバか ら アプレ ッ ト が提供 さ れない場合で も、 アプレ ッ ト はデフ ォル ト で ローカル CLASSPATHを検索し て 動作する ので、 こ の問題は表面化し ません。 HTTP コ ン フ ィ グ レーシ ョ ン を正確 にテ ス ト する には、 ローカル CLASSPATHで一時的に WebLogic ク ラ スの名前を 変更する か、 別のマシ ンか ら アプレ ッ ト を試す必要があ り ます。

アーカ イ ブによるアプレ ッ ト の高速化

WebLogic には、 HTML サーバ ロ グ を ス キ ャ ン し、 アプレ ッ ト の ク ラ スの zip フ ァ イルを作成し て フ ァ イ ルのダ ウ ンロー ド を高速化する ためのユーテ ィ リ テ ィ が用意 さ れています。 さ ら に高速な手段は、 可能な限 り アプレ ッ ト で JDBC を使 用せず、 DBMS データ をサーブレ ッ ト か ら HTML 形式で取得する こ と です。 サーブレ ッ ト は、 アプレ ッ ト に代わって ク エ リ を実行し、 ワー ク スペースか ら データ を取得し て HTML と し て提供し ます。 こ のデータ を非同期に維持する WebLogic プロ セ ス と 連携する こ と に よ り 、 アプ リ ケーシ ョ ンのパフ ォーマンス が向上し ます。 アプレ ッ ト が実行前に数多 く のフ ァ イ ルをダ ウ ンロー ド し なければな ら ない場 合、HTML ページの APPLETタ グの中で ARCHIVEパ ラ メ ータ を使用する こ と で、 こ れを高速化でき ます。 複数のアプレ ッ ト に関する 典型的な問題は、 ブ ラ ウザが アプレ ッ ト 内で使用さ れてい る フ ァ イ ルご と に別個の HTTP 接続を確立し なけ ればな ら ない こ と です。 接続を確立する のに数秒かかる場合 も あ り 、 フ ァ イ ル自 体のダ ウ ン ロー ド 時間よ り 長 く な る こ と も あ り ます。ARCHIVEパ ラ メ ータ を使用 する と 、 こ れら の ク ラ ス を 1 個の .jar フ ァ イル (Microsoft Internet Explorer の場 合は .cab フ ァ イル) にま と める こ と ができ ます。 こ のフ ァ イ ルは、 単一の HTTP 接続でダ ウ ン ロー ド でき ます。 .jar フ ァ イルは圧縮可能なので (.cab フ ァ イルは

(21)

ト ラ ブルシ ュ ーテ ィ ン グ と パ フ ォ ーマ ン ス

注意: Appletviewer、 Netscape Navigator (3.0 以降のみ)、 および HotJava ブ ラ

ウザを使用する と きの手順は、 Microsoft Internet Explorer (4.0 以降のみ) で使用する手順 と は異な り ます。 完全な互換性を実現する ために、 両方 の方法を組み合わせる こ と ができ ます。

(22)

参照

関連したドキュメント

分類 3.社会的価値評価 評価点 60. 細分類

法令遵守等の該当項目一覧表

これらの先行研究はアイデアスケッチを実施 する際の思考について着目しており,アイデア

ホーム &gt; マニュアル &gt; ユーザーマニュアル &gt; 事前知識&gt; 「サイボウズ デヂエ」の画面構成..

研究計画書(様式 2)の項目 27~29 の内容に沿って、個人情報や提供されたデータの「①利用 目的」

この項目の内容と「4環境の把 握」、「6コミュニケーション」等 の区分に示されている項目の

[r]

地球温暖化対策報告書制度 における 再エネ利用評価