如何从javascript调用applet中声明的方法

我正在尝试创建一个基本的Java Applet,以便在客户端的计算机上为它们打开文件。 我想通过javascript在下面的java applet中调用openFile函数。

import java.awt.Desktop; import java.io.File; import java.io.IOException; import javax.swing.JApplet; public class Test extends JApplet { public void openFile(String filePath) { File f = new File(filePath); try { Desktop.getDesktop().open(f); } catch (IOException e) { e.printStackTrace(); } } } 

在我的网页的身体标签之间,我有以下内容:

   document.applets[0].openFile("C:\\test.log");  

当我加载页面时,我收到错误:

TypeError:Object#没有方法’openFile’

有谁知道我需要做些什么来修复这个错误并让applet工作?

   

参考: 从JavaScript调用Applet方法

更新

允许Javascript直接调用Applet的公共方法或公共变量。 Javascript将嵌入式Applet视为对象。 通过为Applet提供ID,Javascript可以访问它

  document.Applet_ID.Applet_Method() 

你可以用这个,

MyApplet.html启动

    Testing  

Javascript acess Applet method

JavaScriptToJava.java

 import java.applet.Applet; import java.awt.FlowLayout; import java.awt.TextArea; public class JavaScriptToJava extends Applet{ TextArea textBox; public void init(){ setLayout(new FlowLayout()); textBox = new TextArea(5,40); add(textBox); } public void appendText(String text){ textBox.append(text); } }