Tomcat 6 サーブレットから提供される HTML ページにアプレットがあります。アプレット要素は次のとおりです。
<applet code="com.iteloffice.cuba4remedy.cubaapplet.class" name="cubaapplet"
codebase="http://localhost:8080/cuba4remedy/classes" width="400" height="400" MAYSCRIPT>
<param name="populatefunction" value="populatedropdown">
alt="Your browser understands the <APPLET> tag but isn't running the applet, for some reason."
Your browser is completely ignoring the <APPLET> tag!
</applet>
私の開発マシンでは、アプレットは正常にダウンロードされます。しかし、まったく同じバージョンの Java と tomcat を搭載したターゲット マシンでは、以下の IE9 のようなアプレット エラーが発生します。
Java Plug-in 1.6.0_26
Using JRE version 1.6.0_26-b03 Java HotSpot(TM) Client VM
User home directory = C:\Users\Administrator
load: class com.iteloffice.cuba4remedy.cubaapplet.class not found.
java.lang.ClassNotFoundException: com.iteloffice.cuba4remedy.cubaapplet.class
at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source)
at sun.plugin2.applet.Plugin2Manager.createApplet(Unknown Source)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Exception: java.lang.ClassNotFoundException: com.iteloffice.cuba4remedy.cubaapplet.class
クラスパスへのパスを確認するにはどうすればよいですか?
EGトムキャットがオンになっていますhttp://192.168.0.6:8080
webapps
フォルダはcuba4remedy
Web ブラウザでこのパスを入力できるようにする必要がありますか?
http://192.168.0.6:8080/cubaremedy/com/iteloffice/cuba4remedy/cubaapplet.class
アプレットの package ステートメントは次のとおりです。
package com.iteloffice.cuba4remedy;
tomcat のフォルダー構造は次のようになります。
tomcat_root/webapps/cuba4remedy
内部cuba4remedy
クラスファイルは次の場所にあります。
WEB-INF/classes/com/iteloffice/cuba4remedy
編集:
これを修正するために、アプレット タグを次のように変更し、アプレット クラス ファイルを webapps ルート フォルダに配置しました。
<applet code="cubaapplet.class" name="cubaapplet"
codebase="/cuba4remedy" width="400" height="400" MAYSCRIPT>
<param name="populatefunction" value="populatedropdown">
alt="Your browser understands the <APPLET> tag but isn't running the applet, for some reason."
Your browser is completely ignoring the <APPLET> tag!
</applet>
サーブレットが非常に単純化してアクセスできるのと同じパスにアクセスできないという別の投稿を見ました。
コードベースを / に変更すると、より柔軟になります。