从Java发送信息到Javascript?

时间:2012-03-03 12:52:15

标签: java javascript netbeans applet

我一直在尝试使用JSObject将信息从Java发送到Java脚本,但我一直收到java.lang.ClassNotFoundException:com.sun.deploy.appcontext.AppContext异常我正在使用netbeans 7.1。

这是完整的堆栈跟踪

java.lang.NoClassDefFoundError: com/sun/deploy/appcontext/AppContext
    at MapTest.MapApplet.init(MapApplet.java:23)
    at sun.applet.AppletPanel.run(AppletPanel.java:434)
    at java.lang.Thread.run(Thread.java:722)
Caused by: java.lang.ClassNotFoundException: com.sun.deploy.appcontext.AppContext
   at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
   at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
   at java.security.AccessController.doPrivileged(Native Method)
   at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
   at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
   at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
   ... 3 more

指的是这行代码

    win = JSObject.getWindow(this);

这些都是我的导入

import netscape.javascript.JSObject;
import java.lang.*;
import java.applet.*;
import java.awt.Graphics;

我真的需要帮助,这似乎无法在任何地方找到解决方案。

感谢。

1 个答案:

答案 0 :(得分:0)

我遇到了类似的错误,并且能够通过将本地Java安装中找到的deploy.jar添加到项目构建路径来解决它。不确定如何在netbeans中执行此操作,但对于使用maven的其他人,您可以尝试添加以下依赖项:

<dependency>
    <groupId>sun</groupId>
    <artifactId>deploy</artifactId>
    <version>7.0</version>
    <scope>system</scope>
    <systemPath>${java.home}/lib/deploy.jar</systemPath>
</dependency>