我在获取和小程序以在 HTML 页面上工作时遇到问题。当我从小程序类中删除套接字连接并在 HTML 页面上测试小程序时,小程序会显示,但是当我将套接字连接添加回类文件时,小程序不会显示,并且 Java 控制台出现时没有堆栈跟踪。我确定这是一个安全原因,因为我使用的是套接字连接,所以我所做的是创建一个签名的 jar 文件并将其放置在 applet 标记中,如下所示:
<APPLET codebase="classes" archive="captureaudio/AppletTest.jar" code="captureaudio/AppletTest.class" width=350 height=200></APPLET>
但是创建这个签名并没有奏效。
有人可以帮我吗?
更新
回应安德鲁·汤普森
- 不,我没有提示接受数字签名代码
- 否 我当前正在测试的小程序是本地的
- 是的,小程序正在尝试连接回服务器,服务器正在本地运行
- 我不确定 java 控制台没有显示任何异常。
我如何创建签名的 JAR 文件
我的 Applet 的命名空间是 captureaudio.AppletTest 类
在 cmd 提示符下,类文件所在的位置:
您需要使用 keytool.exe 在这里我找到了如何为小程序创建 jar 签名 www.xinotes.org/notes/note/434/
jar -cf AppletTest.jar AppletTest.class
- >jarsigner AppletTest.jar MyCert 警告:此 jar 包含签名者证书将在六个月内到期的条目
4.>jarsigner -verify -verbose -certs AppletTest.jar
sk 153 Thu Oct 13 11:28:38 BST 2011 META-INF/MANIFEST.MF
X.509, CN=xxxxx, OU=None, O=None, L=xxxxx, ST=xxxxx, C=GB (myce
rt) [证书将于 2012 年 10 月 1 日 20:55 到期]
315 Thu Oct 13 11:28:40 BST 2011 META-INF/MYCERT.SF
1352 Thu Oct 13 11:28:40 BST 2011 META-INF/MYCERT.RSA
0 Thu Oct 13 11:28:10 BST 2011 META-INF/
smk 11015 Thu Oct 13 10:49:08 BST 2011 AppletTest.class
X.509, CN=xxxxxx, OU=None, O=None, L=xxxxxxxx, ST=xxxxx, C=GB (myce
rt) [证书将于 2012 年 10 月 1 日 20:55 到期]
s = 签名已验证 m = 条目在清单中列出 k = 在密钥库中找到至少一个证书 i = 在身份范围内找到至少一个证书
jar 验证。
JAVA 控制台
Java Plug-in 10.0.0.147 使用 JRE 版本 1.7.0-b147 Java HotSpot(TM) Client VM
用户主目录 = C:\Users\xxxxxxx
c: 清除控制台窗口 f: 完成终结队列中的对象 g: 垃圾收集 h: 显示此帮助消息 l: 转储类加载器列表 m: 打印内存使用情况 o: 触发日志记录 q: 隐藏控制台 r: 重新加载策略配置 s: 转储系统和部署属性 t:转储线程列表 v:转储线程堆栈 x:清除类加载器缓存
0-5:将跟踪级别设置为
从引导类路径中检测到:C:\PROGRA~1\Java\jre7\lib\deploy.jar
更新
文件夹位置
web root>
------AppletTest.jar
------classes>
-----------captureaudio>
---------------------AppletTest.class