2010-11-16 76 views
4

我試圖部署新的Java JNLP規範一個Applet,但我總是收到由Java插件控制檯以下錯誤:部署的Applet與JNLP

BadFieldException[ Il campo <jnlp><applet-desc>width presenta un valore non valido: 0,0] 

這是我的HTML代碼:

 <script> 
     var attributes = { id:'signingApplet', code:'it.insielmercato.web.signing.SigningApplet' ,width:0, height:0 } ; 
     var parameters = {jnlp_href: 'signing-applet.jnlp'} ; 
     deployJava.runApplet(attributes, parameters, '1.6'); 
     function setClipboardText(text){ 
      signingApplet.setClipboardContent(text); 
     } 
    </script> 

這是我的JNLP代碼:

<?xml version="1.0" encoding="UTF-8"?> 
<jnlp spec="1.5+" codebase="" href=""> 
<information> 
    <title>SigningApplet</title> 
    <vendor>Insielmercato S.P.A.</vendor> 
</information> 
<resources> 
    <!-- Application Resources --> 
    <j2se version="1.6+" 
      href="http://java.sun.com/products/autodl/j2se"/> 
    <jar href="signing-1.0.jar" main="true" /> 
</resources> 
<applet-desc name="Signing Applet" main-class="it.insielmercato.web.signing.SigningApplet" width="0" height="0"> 
</applet-desc> 
<update check="background"/> 
</jnlp> 

和我的applet代碼:

package it.insielmercato.web.signing; 

import java.applet.Applet; 
import java.awt.Toolkit; 
import java.awt.datatransfer.Clipboard; 
import java.awt.datatransfer.ClipboardOwner; 
import java.awt.datatransfer.DataFlavor; 
import java.awt.datatransfer.StringSelection; 
import java.awt.datatransfer.Transferable; 
import java.awt.datatransfer.UnsupportedFlavorException; 
import java.io.IOException; 

public class SigningApplet extends Applet implements ClipboardOwner { 

/** 
* 
*/ 
private static final long serialVersionUID = 5272223219287676996L; 

private void loadAppletParameters(){ 

} 

public void init(){ 
    loadAppletParameters(); 
} 

public void setClipboardContent(String text){ 
    StringSelection ss = new StringSelection(text); 
    Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard(); 
    clipboard.setContents(ss, this); 
} 

public void lostOwnership(Clipboard clipboard, Transferable contents) { 

} 

public String getClipBoardContent(){ 
    String content = null; 
    Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard(); 
    Transferable contents = clipboard.getContents(null); 
    boolean hasTransferableText = (contents != null) && contents.isDataFlavorSupported(DataFlavor.stringFlavor); 
    if(hasTransferableText) 
     try { 
      content = (String)contents.getTransferData(DataFlavor.stringFlavor); 
     } catch (UnsupportedFlavorException e) { 
      e.printStackTrace(); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 

    return content; 
} 

} 

我哪裏錯了?

回答

1

最後我解決了。有兩個問題:

首先,尺寸似乎應該是至少1

其次,要看到我的小程序我必須從控制檯清除Java高速緩存的修改。

5

由於「presenta聯合國valore非VALIDO」顯然轉化爲「呈現了非有效值」嘗試改變從0寬度和高度爲20

使用CSS(層疊樣式表),使小程序隱藏或無形。

+0

我解決了。有兩個問題,首先維度應該至少爲1,其次,要查看我的小程序上的修改,我必須從控制檯清除Java緩存。 – Griso 2010-11-17 09:05:30