簡體   English   中英

將Java Applet嵌入網頁中

[英]Embedding Java Applet in web page

我已經構建了一個Java小程序,並試圖將其嵌入到服務器上的HTML文件中。 當我訪問該頁面時,該applet嘗試加載,但隨后在.applet.BookingApplet.class上發生ClassNotFoundException崩潰(這是applet的名稱,其中applet是該applet所在的包的名稱。)

   <body>
    <script src ="http://java.com/js/deployJava.js"></script>
    <script>
        var attributes = {
        codebase: '/webapp/HelpSessions.jar', 

       code: '/webapp/HelpSessions.jar/applet/BookingApplet.class',
       archive: '/lib/javax.persistence.jar, /lib/javax.validation-1.0.0.GA.jar, /lib/joda-time-2.1.jar, /lib/mail.jar, /lib/mysql-connector-java-5.1.23-bin.jar',
       width: 800, 
       height: 600        
        };
        var version = "1.6"
        deployJava.runApplet(attributes, version);
        </script>
</body>

這是我第一次嘗試做這樣的事情,所以我確定這只是我在HTML中引用類文件的方式上的語法錯誤。 如果需要,我可以發布任何其他代碼,但是我認為它無關緊要,因為applet在AppletViewer中運行良好。

直到我讓這個東西運行起來,我今晚才睡覺。

編輯:為簡化起見,我嘗試將所有內容移動到一個文件夾中,因此我不必處理代碼庫。 這是現在的樣子:

<html>
<head>
    <title>Schedule a Help Session</title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
    <script src ="http://java.com/js/deployJava.js"></script>
    <script>
        var attributes = {

       code: '/applet/BookingApplet.class',
       archive: '/lib/javax.persistence.jar, /lib/javax.validation-1.0.0.GA.jar, /lib/joda-time-2.1.jar, /lib/mail.jar, /lib/mysql-connector-java-5.1.23-bin.jar',
       width: 800, 
       height: 600        
        };
        var version = "1.6"
        deployJava.runApplet(attributes, version);
        </script>
</body>

和我得到相同的ClassNotFoundException。 另外,我可以在Java控制台的詳細信息中看到InterruptedException,但是它沒有告訴我在代碼中的什么地方(如果有的話)引起了異常。

code屬性更改為“ applet / BookingApplet.class”。 當前,您正在使用“ /applet/BookingApplet.class”。

Java讀取URL時,會將任何'/':s轉換為'。':s。 這將使URL“ /applet/BookingApplet.class”“ .applet.BookingApplet.class”。 “ applet / BookingApplet.class”將變為“ applet.BookingApplet.class”,這是正確的。

只要記住將codebase設置為指向“ applet”目錄所在的目錄即可。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM