- PR -

webサーバ上のjarファイルからJavaAppletの読み込みについて

1
投稿者投稿内容
wine
会議室デビュー日: 2005/08/16
投稿数: 12
投稿日時: 2005-08-16 15:25
初めて書き込みさせていただきます。
よろしくお願いします。

現在、Appletの動作検証を行なっておりますが、webサーバ上のjarファイルを
クライアントにロードできず、次のスタックがJAVAコンソール上に出力されます。

Caused by: java.io.IOException: open HTTP connection failed.
at sun.applet.AppletClassLoader.getBytes(Unknown Source)
at sun.applet.AppletClassLoader.access$100(Unknown Source)
at sun.applet.AppletClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
... 10 more

どなたか、同じ現象を解決隅の方、もしくは解決方法などご存知の方、
ご教授願えれば幸いです。

構成や、設定など次の通りです。

サーバ構成:
  Linux8
   Apache2.0 + Tomcat4.1.31 by jk_connector

JDKバージョン:
  1.4.2_08 (サーバ、クライアントとも)

アプリケーション構成:
  sample_app / WEB_INF
            /applet/ SampleApplet1.jar
                /SampleApplet2.jar
           / :

クラスパス:
CLASSPATH=$CLASSPATH:$CATALINA_HOME/webapps/sample_app/apllet/SampleApplet1.jar
CLASSPATH=$CLASSPATH:$CATALINA_HOME/webapps/sample_app/apllet/SampleApplet2.jar

クライアント:
 Windows2000 IE6

JSP:

----アプレットロード部------
<OBJECT classid = "clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
WIDTH="1130" HEIGHT="25" NAME ="Sample"
codebase = "http://java.sun.com/update/1.4.2/jinstall-1_4-windows-i586.cab#Version=1,4,0,0">
<PARAM NAME = CODE VALUE = "sample.SampleApplet.class" >
<PARAM NAME = CODEBASE VALUE = "/sample_app/applet" >
<PARAM NAME = ARCHIVE VALUE = "SampleApplet1.jar" >
<PARAM NAME = "type" VALUE = "application/x-java-applet;version=1.4">
</OBJECT>

以上、よろしくお願いします。
wine
会議室デビュー日: 2005/08/16
投稿数: 12
投稿日時: 2005-08-17 11:11
自己解決いたしました。

codebaseの意味をよく理解しておらず、無駄な書き込みを
行なってしまいました。申し訳ありません。

参考までに、
アプレットの読み込みは次のように行なわれているようです。

1.クライアントにJSPが送信される。
2.送信されたJSPにてクライアント(ブラウザ)からオブジェクト
  の読み込みが行なわれる。
3.オブジェクトの読み込みは、codeに指定されたクラスを、
  クライアントのクラスパスから検索する。
4.3.で見つからない場合、codebaseをたどってクラスを検索する。

このため、リモートホスト上のクラスを読み込むには、アクセス許可のある
ネットワークパスを指定する必要がるようです。
(ネットワーク共有がかかったディレクトリ、匿名FTPでアクセスできるディレクトリ、HTTP経由でのアクセスなど)

解決したcodebase
 https://<ホスト名(アドレス)>/sample_app/applet

ネットワークに関して知識が乏しいもので、上記の説明で正確であるとは
言い切れませんので、あくまで参考までに。
また、誤りなどある場合、より的確な解説をいただけると助かります。

[ メッセージ編集済み 編集者: wine 編集日時 2005-08-17 11:12 ]
1

スキルアップ/キャリアアップ(JOB@IT)