2012-02-03 107 views
-1

我遇到了與run applet in web application中所述完全相同的問題。它爲我的小應用程序拋出了一個ClassNotFoundException。我從那裏嘗試瞭解決方案,但仍然沒有運氣。如何在web應用程序中運行小程序

這是我在HTML中嵌入applet代碼:

<body> 
<applet codebase="/DaaS/applet" archive="/DaaS/applet/firstApplet.jar" code="FirstApplet.class" width="300" height ="300"> </applet> 

我已經包含firstApplet.jar和我index.htmlDaas/Webcontent一個文件夾DaaS/applet

回答

1

codebase(和archive)屬性中的URL與當前請求URL(瀏覽器地址欄中顯示的URL)相關,而不是服務器端的磁盤文件系統。試想一下,你已經在index.html頁面中一些子文件夾,如下所示:

http://localhost:8080/somecontext/index.html

如您在codebase(和archive)屬性有這使得它相對領先的斜線/開頭的網址到域根目錄而不是當前文件夾。因此,網頁瀏覽器將尋找檔案,並在以下網址

http://localhost:8080/DaaS/applet/firstApplet.jar

這可能是不正確的本身的JAR。您需要確保codebase(和archive)網址指向相對於當前請求網址的正確網址。基於迄今爲止提供的信息,該/DaaS文件夾基本上是相同的父index.html,所以這應該這樣做:

<applet codebase="DaaS/applet" archive="firstApplet.jar" ... /> 

(注意,我簡化了archive屬性,將相對於codebase反正解決)

這樣的瀏覽器將加載從JAR:

http://localhost:8080/somecontext/DaaS/applet/firstApplet.jar

+0

'<小程序的基本代碼= 「的DaaS /小程序」 歸檔= 「firstApplet.jar」 \t代碼= 「FirstApplet.class」 WIDTH = 「300」 HEIGHT = 「300」> '嘗試,但仍然沒有運氣。 .. – Hasan 2012-02-03 15:53:18