当我打开我的网络应用程序并运行正常时,我的applet运行。在这个Web应用程序中,我有一个按钮,如果我的用户单击此按钮,applet将在弹出窗口中打开,并加载相同的.dll文件。
得到了.dll文件加载到另一个类加载器中的错误,并且谷歌搜索它,我看到我无法再次加载.dll。所以我在<archive>
中剪切了<applet>
这样的标签
<applet code="com.griaule.fingerprintsdk.appletsample.FormMain" height="550" width="550">
<param name="Cliente" value="<%= Cliente_Id %>" />
但我收到了一个新错误,
ClassFormatError: Incompatible magic value 218774561 in class files FormMain
有关此错误的详细信息,请显示以下堆栈
plugin2manager.parentwindowDispose
Exception in thread "thread applet-com.griaule.fingerprintsdk.appletsample.FormMain-1" java.lang.NullPointerException
at java.awt.EventQueue.isDispatchThread(Unknown Source)
at com.sun.deploy.uitoolkit.impl.awt.AWTAppletAdapter.runOnEDT(Unknown Source)
at com.sun.deploy.uitoolkit.impl.awt.AWTAppletAdapter.doClearAppletArea(Unknown Source)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
plugin2manager.parentwindowDispose
更新
我的网络应用程序上的按钮的OnClick
事件,打开一个弹出的呼叫Applet.aspx
页面。
Applet.ASPX代码
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Applet.aspx.cs" Inherits="Ui.San.Chaves.Applet" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
<script src="../Java/jquery-1.6.2.min.js" type="text/javascript"></script>
<script src="../Java/jquery.base64.min.js" type="text/javascript"></script>
<script src="../Java/preloadCssImages.js" type="text/javascript"></script>
<script src="../Java/jquery-1.4.4.min.js" type="text/javascript"></script>
</head>
<body>
<applet code="com.griaule.fingerprintsdk.appletsample.FormMain"
archive="http://www.netimoveis.com/SignedFingerprintSDKJava.jar, http://www.netimoveis.com/SignedFingerprintSDKJavaAppletSample.jar, http://www.netimoveis.com/sqljdbc4.jar"
height="550" width="550">
<param name="Cliente" value="<%= Cliente_Id %>" />
</applet>
</body>
</html>
有人可以帮帮我吗?我需要在我的Web应用程序的加载中调用applet,当我的用户在同一个Web应用程序中单击我的按钮时。
也许有办法卸载应用程序的applet .dll并加载另一个弹出窗口。
答案 0 :(得分:2)
..小程序将在弹出窗口中打开..
使用Java Web Start打开applet自由浮动。每次启动时,applet都会有一个新的JVM,DLL问题将会消失。作为奖励,JWS将允许您对OS X&amp; s的本机下载进行分区。 * nix中。
就ClassFormatError
而言,请参阅this answer,这表明价值加起来为CR
,LF
,<
和{{1} }。这些字符可能是服务器生成的“404”页面的典型开始。