- ベストアンサー
ServletでAppletの表示
お世話になります。 現在、Eclipse、Tomcat、Firefoxの環境下でServlet及びAppletを勉強しています。 そこでServletでAppletを表示しようとした所、エラーが出ました。 どうやらAppletクラスを探せないでいるみたいなのですが、場所を移動させたりしてもダメでした。 以下エラーのコンソールとServletから抜粋した表示部分のソースです。 オブジェクト指向設計は初めて日が浅いので、他に必要な情報あればご指摘願います。 それでは、よろしくお願いします。 ※エラーコンソール Java Plug-in 1.6.0_17 使用中の JRE のバージョン 1.6.0_17-b04 Java HotSpot(TM) Client VM ユーザのホームディレクトリ = C:\Users\Feng Lu ---------------------------------------------------- c: コンソールウィンドウをクリア f: ファイナライズキューのオブジェクトをファイナライズ g: ガベージコレクト h: このヘルプメッセージを表示 l: クラスローダリストをダンプ m: メモリ使用率を表示 o: トリガログ q: コンソールを非表示 r: ポリシー設定を再ロード s: システムプロパティと配備プロパティをダンプ t: スレッドリストをダンプ v: スレッドスタックをダンプ x: クラスローダキャッシュをクリア 0-5: トレースレベルを <n> に設定 ---------------------------------------------------- load: クラス AppletTest が見つかりません。 java.lang.ClassNotFoundException: AppletTest at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.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) Caused by: java.io.IOException: open HTTP connection failed:http://localhost:8080/Applet/AppletTest.class at sun.plugin2.applet.Applet2ClassLoader.getBytes(Unknown Source) at sun.plugin2.applet.Applet2ClassLoader.access$000(Unknown Source) at sun.plugin2.applet.Applet2ClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) ... 7 more 例外: java.lang.ClassNotFoundException: AppletTest Error reading latest JRE version. java.net.SocketTimeoutException: Read timed out load: クラス AppletTest が見つかりません。 java.lang.ClassNotFoundException: AppletTest at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.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) Caused by: java.io.IOException: open HTTP connection failed:http://localhost:8080/Applet/AppletTest.class at sun.plugin2.applet.Applet2ClassLoader.getBytes(Unknown Source) at sun.plugin2.applet.Applet2ClassLoader.access$000(Unknown Source) at sun.plugin2.applet.Applet2ClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) ... 7 more 例外: java.lang.ClassNotFoundException: AppletTest ※ソース(抜粋) protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=Shift_JIS"); PrintWriter out = response.getWriter(); out.println("<html><head><title>ServletTest</title></head><body>"); out.println("<applet codebase=\"http://localhost:8080/Applet/\" code=\"AppletTest\" width=800 Height=600></applet>"); out.println("</body></html>"); }
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
「Caused by: java.io.IOException: open HTTP connection failed:http://localhost:8080/Applet/AppletTest.class」とありますので、作成したアプレットがhttp://localhost:8080/Applet//Applet/AppletTest.classから 開けない(読めない)ということだと思います。
その他の回答 (1)
- askaaska
- ベストアンサー率35% (1455/4149)
まずは単なるHTMLでAppletを表示成功させなさい。 それができなければServletでもできないわよ。 HTMLでApplet表示を成功させたらあとは そのHTMLをServletが出力するだけ。
お礼
お返事遅くなってしまいすいません。 HTMLでは表示出来ていたのですが、ファイルの位置を気にして Servletの方だけ参照アドレスを変更していました。 HTMLと同じ様にしたら出来ました。ありがとうございます。
お礼
お返事おそくなってしまいすいません。 なるほど。そのままでしたね・・・ありがとうございます。