3

我正在使用现有的 Java 代码库,虽然可以使用 <APPLET> 标记从 HTML 页面调用它,但它实际上并不子类化 Applet 类。相同的 jars 也用于非浏览器上下文,因此它们没有子类化 Applet。

现在我需要将一些值从 Java 传回调用页面的 Javascript。通常人们会使用 JSObject 来做到这一点,但就我而言,必须使用仅适用于 Applet 子类的 JSObject.getWindow。

是否有:

  • 一种从不是 Applet 子类的东西中使用 JSObject 的方法?
  • 与调用页面的 Javascript 进行通信的其他机制?
4

3 回答 3

3

在小程序中调用JSObject.getWindow(this)。然后以通常的方式将其传递JSObject到需要它的代码中。

于 2008-11-13T18:46:17.367 回答
2

我认为您实际上需要在 jar 文件中实现一个小程序来处理代码与浏览器本身之间的通信。也许只是将非applet jar 用作类库,并使applet jar 成为一个简单的包装器,代理您在浏览器和Java 代码之间的调用。

于 2008-11-13T22:56:36.940 回答
1

返回值有什么问题?

从 Javascript 您可以使用 getElementById("id-of-embed-tag") 访问 Java 对象。然后,您可以调用该对象上的任何公共方法。该方法返回的 Java 对象将可用于您的 Javascript 代码。

于 2008-11-14T05:06:43.310 回答