2012-03-15 70 views
4

據我可以看到從文檔中,<applet>已被棄用,<object>標記是現在啓動一個小程序的首選方法。但是我找不到像樣的文檔,甚至沒有關於如何使用object標籤來啓動applet的教程。啓動Java小應用程序

我沒有看到以下問題展示瞭如何在JavaScript,但我更願意用一個標籤 launch applet from web page

我需要知道如何指定Java引擎,如何指定一個jar文件,在那裏的存儲,以及如何指定執行的類。

這裏就是我目前所面對的(但不工作)

<object 
    classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" 
    width="800" height="600" data="pi.jar"> 
    <param name="code" value="PiLauncher.class"/> 
</object> 

的要求是在Oracle 1.5文檔,這CLASSID指定「當前的Java引擎」,但是這是完全不透明的給我。他們也有要求特定版本的示例。

即使這是真的,我該怎麼辦:

  1. 指定的jar文件
  2. 指定類(高於這個正確的)
  3. 指定目錄中的代碼是(是代碼庫仍?有效)
+0

* 「但我更願意用一個標籤」 *爲什麼呢?獲取正確的字符串以嵌入applet(在特定OS上的特定版本的特定瀏覽器中)是PITA。最好委託給JS。 – 2012-03-15 14:49:38

+0

我站好了。看了下面的答案之後,我徹底厭惡了。這是應該標準化的東西。我可以理解微軟在做不同的事情,但其他人都應該能夠同意。對於這個問題,應該是Oracle/Sun/java財團聲明一個「官方」的方式來做到這一點。啊! – Dov 2012-03-15 18:00:05

+0

*「應該是Oracle/Sun/java聯盟聲明一個」官方「的方式來做到這一點。」*我的一個關於applet的祕密就是,Sun從來沒有費心去定義在那裏應該發生什麼*在頁面中的小應用程序(HTML鏈接是否獲得焦點或小應用程序文本字段?),也沒有實現小應用程序接受焦點到自身的方式,然後正常地放棄它回到下一個HTML元素。這使得小程序在沒有鼠標的情況下幾乎不可能使用,並且對基於鍵盤的導航成爲嚴重的損害。 :( – 2012-03-15 18:05:55

回答

4

首先,語法是不是Firefox和IE一樣:

Firefo X:

<object classid="clsid:CAFEEFAC-0017-0000-0000-ABCDEFFEDCBA" id="appletId" name="appletName" width="400" height="300"> 
    <param name="code" value="com.myPackage.Applet" /> 
    <param name="codebase" value="../resources/applet/"/> 
    <param name="ARCHIVE" value="myApplet.jar" /> 
    <param name="cache_archive" value="myApplet.jar" /> 
    <param name="type" value="application/x-java-applet" /> 
    <param name="cache_option" value="plugin" /> 
    <param name="mayscript" value="true" /> 
    // you can set optional parameters here 
</object> 

IE:

<object width="400" height="300" classid="java:com.myPackage.Applet.class" codebase="../resources/applet/" name="appletName" id="appletId"> 
    <param name="archive" value="myApplet.jar" /> 
    <param name="type" value="application/x-java-applet" /> 
    <param name="cache_option" value="plugin" /> 
    <param name="mayscript" value="true" /> 
    // you can set optional parameters here   
</object> 

這裏是一個很好的鏈接:http://docs.oracle.com/javase/1.5.0/docs/guide/plugin/developer_guide/using_tags.html#object

+0

*「語法是不一樣的Firefox和IE:」 *或Safari,..或Opera或Chrome,或..您的基本點是正確的,但當開發人員假設用戶在任何領域使用其中一個「大2」應用程序時,它會讓我失望(無論如何+1)。 – 2012-03-15 14:53:09

+1

我應該完成了:'但我不知道它如何適用於其他瀏覽器',但它也是相對的......我唯一一次使用它是爲了在大學工作,所以我不必擔心用戶。當然,如果他正在做一些公開或商業活動,你是完全正確的。:) – user1242756 2012-03-15 15:03:40

+0

哇,這真的很糟糕。我覺得像檢查答案,因爲我討厭它.... – Dov 2012-03-15 18:00:30