Applet数字签名,授予访问本地资源

转载 2013年12月02日 17:15:53

原文地址:http://tech.163.com/05/0712/10/1OF38ICE00091589.html

本文章介绍Applet数字签名,授予访问本地资源的方法。

cmd 先进入到要打包的目录中,例如 E:\JSynergyESB\ee\WebRoot\WEB-INF\classes

定义类文件:

package com;

import java.applet.*;
import java.awt.*;
import java.io.IOException;
public class HelloApplet extends Applet {
     public void paint(Graphics g) {
            g.drawRect(0, 0, 499, 149);
            g.drawString("Hello World", 5, 70);
     }
     /**
      * 通过applet调用本地的计算器
      */
     public void openApp() {
            String url = "C:\\WINDOWS\\system32\\calc.exe";
            try {
                   Runtime.getRuntime().exec(url);
            } catch (IOException e) {
                   e.printStackTrace();
            }
     }
     public void openRCP() {
         String url = "E:\\rhinoRCP\\win32.win32.x86\\eclipse\\eclipse.exe";
         try {
                Runtime.getRuntime().exec(url);
         } catch (IOException e) {
                e.printStackTrace();
         }
  }
}


步骤一:将Applet Class打成Jar包 ,
  如:在命令行中执行以下的语句:

  jar -cvf MyApplet.jar *.*(打包当前目录下的所有文件,若该工程下有类 com.HelloApplet,就打包 jar -cvf MyApplet.jar com)

步骤二:(在网页中嵌入Applet)(如何在Html嵌入Apple方法见附录)
  下面是嵌入Applet部分的写法:

<APPLET CODE="com.HelloApplet.class" id="helloApplet" codebase="." ARCHIVE = "MyApplet.jar" WIDTH="500" HEIGHT="150">
      </APPLET>
      <p><a href="#" onclick="openApp()">计算器</a></p>
      <p><a href="#" onclick="openRCP()">定义器</a></p>
      <script type="text/javascript">
      function openApp()
      {
        var hellovar = document.getElementById("helloApplet");
        hellovar.openApp();
      }
      function openRCP()
      {
        var rcp = document.getElementById("helloApplet");
        rcp.openRCP();
      }
      </script>

步骤三:(生成证书及签名)

  1、keytool -genkey -keystore pepper.store -alias pepper
  这个命令用来产生一个密匙库,执行完毕后应该在E:\JSynergyESB\ee\WebRoot\WEB-INF\classes中产生一个pepper.store的文件,这里的pepper是我自己的名字,你可以对它进行修改。另外在执行命令的时候还有提示你输入密匙库的密码,这里你一定要记住,否则后面要用的时候无法输入。

  2、keytool -export -keystore pepper.store -alias pepper -file pepper.cert
  这个命令用来产生签名时所要用的证书,同样这里的pepper也可以换成你自己需要的名字。这个命令执行完后在E:\JSynergyESB\ee\WebRoot\WEB-INF\classes中产生一个pepper.cert的文件。

  3、 jarsigner -keystore pepper.store MyApplet.jar pepper
  这个命令用上面产生的证书将我们的jar文件进行了签名。

4 因为applet的运行是沙箱机制,在调用本地程序时需要做安全性设置。在本地运行该applet的jre\lib\security\java.policy文件里最后加permission java.security.AllPermission;这里需要注意的是如果客户端装有多个jre的话,需要找一下哪个jre是真正运行applet的。

5 在运行的时候,第一次会提示是否信任该applet,点击使准信任,然后运行,下次就不会在提示。

注意:在用浏览器调试applet的过程中,可以打开java控制台,位置在Ie的工具菜单的java控制台。


参考:http://hi.baidu.com/dobodo/item/2552fc01d26296d11ff046b9?qq-pf-to=pcqq.temporaryc2c

Java Applet 数字签名

在Web应用使用Applet有时是一种不错的选择,例如在flex中加入特色上传功能等就可将Applet做为备选方案之一。而Applet需要访问本地资源时需要得到客户机器的认可,很自然我们会想到网络知识...
  • dongzi87
  • dongzi87
  • 2013年06月20日 20:24
  • 2500

Java2下实现applet数字签名和认证

Java2下实现applet数字签名和认证        首先在客户端使用JRE1.3.0_01(JAVA运行环境1.3.0.1版本)以取代IE的JVM(JAVA虚拟机),可以到网站上去下载,下载好...
  • neituime
  • neituime
  • 2015年12月03日 15:03
  • 184

java applet调用客户端dll 简单案例

一、java applet调用客户端dll 简单案例      Applet简介:            与一般的Java应用程序不同,Applet不是通过main方法来运行的。在运行时Applet通...
  • u010150082
  • u010150082
  • 2013年11月09日 16:30
  • 2881

<applet>和<object>标签的用法区别研究一

研究了半天和标签的用法,虽然还没弄太明白,但总算没有被XX认为的所误导。 对于标签 1.      APPLET CODE="HelloApplet.class" CODEBASE="D:/a...
  • chentracy2008
  • chentracy2008
  • 2013年04月10日 15:02
  • 1485

APPLET打印的一些总结

项目中使用的是APPLET打印,在实现过程中遇到一些问题,特总结如下。  首先要将Applet数字签名,授予访问本地资源,读写权限设置  步骤一:将Applet Class打成Jar包  ...
  • mengtianyalll
  • mengtianyalll
  • 2013年12月10日 15:40
  • 4411

Java Applet 的运行原理

一、Java Applet的运行原理和生命周期          1.Applet被嵌入到HTML页面中,并由applet的容器(appletviewer或者Web浏览器)执行.       ...
  • z931284151
  • z931284151
  • 2015年10月13日 20:47
  • 968

在浏览器中运行applet

用以下两个类定义了一个applet: import javax.swing.JApplet; public class VideoApplet extends JApplet{ public v...
  • l294265421
  • l294265421
  • 2015年06月19日 18:29
  • 2794

Java基础——GUI编程和Applet

33、GUI 概述 GUI(Graphical User interface)图形用户接口 用图形的方式,来显示计算机操作的界面,这样更方便,更直观 CLI(Command Line User Int...
  • dyonline2012
  • dyonline2012
  • 2013年07月14日 20:09
  • 1137

JAVA应用程序转换为Applet

本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/41673295 将一个图形的JAVA应用程序转换为能够嵌入在...
  • pistolove
  • pistolove
  • 2014年12月02日 08:06
  • 1824

编写和运行简单的Applet程序

Applet是一种包含在HTML网页中的Java应用程序,下面简单总结一下如何用命令行编译并运行程序。   1、首先用记事本(UltraEdit等)编写一个简单的Applet程序,并命名为SayHel...
  • Crazy_For_Net
  • Crazy_For_Net
  • 2015年12月09日 17:39
  • 3061
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Applet数字签名,授予访问本地资源
举报原因:
原因补充:

(最多只允许输入30个字)