.cab
ファイルとしてパッケージされたアプレットを実行すると、java.lang.ClassNotFoundException
がスローされる
症状アプレットを Sun JRE を使用したブラウザで実行している場合、
ClassNotFoundException
がClassLoader
でスローされます。同じアプレットが Microsoft VM では実行できます。原因
.cab
ファイルとしてパッケージされたアプレットが原因です。.cab
ファイルは Microsoft Windows 専用のアーカイブ形式であり、Sun JRE ではサポートしていません。解決方法
アプレットクラスとリソースを
.cab
ファイルから抽出し、JDK のjar
ツールを使用して.jar
ファイルとして再パッケージします。
jar cvf <jar_file> <input_files>
また、この
.jar
ファイルを指定するように、HTML ページの<APPLET>
タグのarchive
属性を変更する必要もあります。次に例を示します。
<APPLET code="MyApplet" width=100 height=100>
<PARAM name="cabbase" value="package1.cab, package2.cab">
</APPLET>次のように変更します。
<
APPLET code="MyApplet" archive="package1.jar, package2.jar" width=100 height=100>
</APPLET>詳細情報
詳細は、「JAR tool documentation」を参照してください。