2014-07-13 39 views
0

我試圖嵌入一個我寫入JSP的applet,但由於某種原因,無論我嘗試什麼,我都會得到一個ClassNotFoundException在JSP中嵌入Applet ClassNotFoundException

這裏是我的小程序:

import javax.swing.*; 
import java.awt.*; 

public class HelloWorld extends JApplet { 
    public void init() {   
     final MyDataAccessObject dao = new MyDataAccessObject(); 
     try { 
      SwingUtilities.invokeAndWait(new Runnable() { 
       public void run() { 
        JLabel lbl = new JLabel("Hello World"); 
        Container content = getContentPane();     
        content.add(AnotherGui.getGUI());//add rootNode to JFRame 
        dao.connectToDB(); 
       } 
      }); 
     } catch (Exception e) { 
      System.err.println("createGUI didn't complete successfully"); 
     } 
    } 
} 

我的JSP是沒有什麼太複雜。現在我只是試圖將Applet放入它並在瀏覽器中運行它。 以下是我已經嘗試的方式,但沒有工作

<applet code="HelloWorld.java" name="HelloWorld" archive="HelloWorld.jar"> </applet> 

<applet code="HelloWorld.class" width="350" height="350">.</applet> 

<applet codebase="dist/" archive="HelloWorld.jar" code="src.HelloWorld"> </applet> 

我在這裏做什麼運行的想法!

其他信息:

  • 我使用的IntelliJ IDEA作爲我的IDE
  • 我正在運行的GlassFish
  • 我的項目結構如下:

enter image description here

回答

0

嘗試省略.java 因此提供您HelloWorld類沒有包聲明嘗試:

<applet code="HelloWorld" name="HelloWorld" archive="HelloWorld.jar"> </applet> 
+0

現在我得到「ClassNotFoundException的」 HelloWorld的 –

+0

我覺得這裏的問題是,所有生活在你的'src'目錄已編譯的類會轉換並移至'WEB -INF/classes' dir。但是這個目錄對於web上的公共訪問是隱藏的(當在WEB-INF下訪問任何東西時你會得到404)。 我會建議使用它的jsp插件 - http://www.javatpoint.com/displaying-applet-in-jsp –