2012-08-17 20 views
1

我想從javascript訪問符號小程序方法;因此,我創建了一個HTML文件,如:如何從javascript訪問符號小程序方法

HTML文件:

<script type="text/javascript"> 
function uploadFileApp(){ 
    document.applets[0].FileCooserApp(); 
    document.uploadAppletFile.FileCooserApp();  
} 
</script> 
<html> 
<h1>Applet Demo</h1> 
<body> 
<applet name="uploadAppletFile" code="TestApplet.class" archive="FileUpload.jar" width="400" height="300"></applet> 
<input type="button" name="button" onclick="uploadFileApp();" value="Button"/> 
</body> 
</html> 

Applet類:

public class TestApplet extends JApplet{ 
    public TestApplet() { 
    } 
    public String FileCooserApp(){ 
     JFileChooser chooser = new JFileChooser(); 
     chooser.showOpenDialog(null); 
     File file = chooser.getSelectedFile(); 
     String path = file.getAbsolutePath(); 
     return path; 
    } 
} 

在我的HTML文件中顯示我我使用這兩種方式來訪問小程序方法,但當我點擊按鈕沒有什麼行動去執行。和控制檯什麼都沒顯示

+0

從Javascript到Java方法的訪問是不可能的。兩種語言都使用自己的工作空間。 (Java需要一個單獨的插件) – reporter 2012-08-17 11:45:47

+0

@reporter不,它可能從JavaScript訪問applet方法,我能夠訪問該方法,但我不知道這裏出了什麼問題,我無法訪問該方法。 – Balasaheb 2012-08-17 11:55:49

+0

我在網上查了一下,顯然你是對的。 – reporter 2012-08-17 12:17:11

回答

0

所有HTML

<object id="uploadAppletFile" 
    classid="java:com/company/package/TestApplet.class" 
    type="application/x-java-applet" 
    archive="FileUpload.jar" 
    height="0" width="0"> 
    <param name="code" value="com/company/package/TestApplet.class" /> 
    <param name="archive" value="FileUpload.jar" /> 
</object> 




<script type="text/javascript"> 
function uploadFileApp(){ 
    uploadAppletFile.FileCooserApp(); 
} 
</script> 
+0

@answered我寫了一個代碼,你已經給了,當我運行一個程序小程序加載成功和filechooser函數從init()調用,但是當我試圖從JavaScript調用相同的方法它拋出錯誤 java.security.AccessControlException:訪問被拒絕(java.util.PropertyPermission user.dir) \t at java.security.AccessControlContext.checkPermission(Unknown Source) at javax.swing.JFileChooser.getIcon(Unknown Source) 那我該怎麼做? – Balasaheb 2012-08-23 13:46:32

+0

我需要完整的堆棧跟蹤... – Ilya 2012-08-23 19:18:18

相關問題