我需要创建一个可以加载com方法的Applet,为此,我使用了jacob桥(jacob)处理com dll,我的环境设置如下:
我把jacob.dll放在C:\Windows\System32 32下,jacob.jar放在WEB\lib下面
当我运行这个项目时,它在Eclipse中运行得很好。但是,当部署到web上时,会出现以下错误消息:
java.lang.NoClassDefFoundError: com/jacob/activeX/ActiveXComponent
at Fmain.Ikeycheck(Fmain.java:180)
at Fmain.init(Fmain.java:73)
at sun.applet.AppletPanel.run(AppletPanel.java:435)
at java.lang.Thread.run(Thread.java:724)
Caused by:
java.lang.ClassNotFoundException: com.jacob.activeX.ActiveXComponent
at sun.applet.AppletClassLoader.findClass(AppletClassLoader.java:219)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.applet.AppletClassLoader.loadClass(AppletClassLoader.java:152)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)...看起来这条消息是在说它找不到com/jacob/activeX/ActiveXComponent.class,但我不明白怎么回事。
我已经搜索了许多解决方案,并试图解决它,但它仍然显示这个错误消息,我使用叹息jar,确保类路径是正确的,甚至尝试更改策略file...etc。但它还是不起作用!
发布于 2013-12-05 04:16:47
您已经将dll和jacob.jar安装到您的Java容器中;不幸的是,这不是用户的Web浏览器(例如Applet容器)。您需要将dll和jacob.jar文件添加到applet中。您可能还应该阅读这。同样重要的是要指出,如果用户安装了64位的jdk,或者没有运行Windows,那么Applet就无法工作。
发布于 2013-12-06 07:20:23
查看雅各布提供的示例
例如jacob-1.17_src.zip\jacob-1.17\samples\com\jacob\samples\applet
这是一个很好的例子,它是如何工作的-它甚至有一个readme.txt里面有一个完整的描述..。
https://stackoverflow.com/questions/20391259
复制相似问题