如何签署Java小程序以在浏览器中使用?

use*_*312 41 java browser applet certificate self-signed

我正在尝试在我的网站上部署Java applet.我还需要签名,因为我需要访问剪贴板.我已经按照我能找到的所有签名教程,但没有取得任何成功.这是我到目前为止所做的:

  • 在NetBeans中编写了一个applet.它在applet查看器中运行良好.
  • 制作了一个.jar文件.
  • 通过执行以下操作创建证书:
keytool -genkey -keyalg rsa -alias myKeyName
keytool -export -alias myKeyName -file myCertName.crt
Run Code Online (Sandbox Code Playgroud)
  • 和这样的jarsigner一起签名:
jarsigner "C:\my path\myJar.jar" myKeyName
Run Code Online (Sandbox Code Playgroud)
  • 制作一个包含以下内容的html文件:
<html>
  <body>
<applet code="my/path/name/myApplet.class" archive="../dist/myJar.jar"/>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

当我打开那个html文件时,我从未得到安全确认对话框(从而得到"java.security.AccessControlException:access denied"错误).这发生在所有浏览器上.

我错过了一步吗?

nun*_*ruz 29

3个简单的步骤

  1. keytool -genkey -keystore myKeyStore -alias me

  2. keytool -selfcert -keystore myKeyStore -alias me

  3. jarsigner -keystore myKeyStore jarfile.jar我


小智 7

也许是因为你在jar文件外面打开一些.class 文件?

这样它可能不会显示警告.我尝试这样做,但它仍然向我显示证书警告,对于一个简单的情况,它实际上阻止我从分离的类访问JAR中的类.

也许您的特定设置或文件组织会导致该行为.如果您可以更详细地布局,我们可以更好地帮助(或者更确切地说,尝试将所有这些.class文件放在另一个已签名的Jar中并将其添加到存档"...,anotherJar.jar").