在JRE1.4.2以上版本中解决Javascript调用已签名Applet方法时提示没有权限问题

原创 2004年10月21日 12:22:00

在JRE1.4.2以上版本中,如果是javascript掉用Applet方法时,即使用户已经信任了这个Applet的签名,还是有可能会出现权限不够的问题,但是如果Applet自己调用方法则没有问题,为此,可以在Applet中的start方法中启动一个线程,这个线程有足够的权限,然后在javascript方法中和这个线程进行交互,以下是代码

public class MyApplet extends Applet {
  Thread thread;
  String command;
  Object result;
  boolean isEnd = false;

  public void start(){
    thread = new Thread(new Runnable() {
      public void run(){
        while(!isEnd){
          try{
            synchronized(thread){
              thread.wait();
            }
          }catch(Exception e){e.printStackTrace();}
          if(isEnd) return;
          try{
            if(“CallExe“.equals(command))
                result = callExe();
          }catch(Exception e){e.printStackTrace();}
          synchronized(CardApplet.this){
            CardApplet.this.notify();
          }
        }
      }
    });
    thread.start();
  }

  public void stop(){
    isEnd = true;
    synchronized(thread){
      thread.notify();
    }
  }

  String call(){
    this.command = “CallExe“;
    try{
      synchronized(thread){
        thread.notify();
      }
      synchronized(this){
        wait();
      }
    }catch(Exception e){
      e.printStackTrace();
    }
    return result;
  }

String callExe(){
    //todo add logic here
    return null;
  }

}

APPLET打印的一些总结

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

JavaScript和Java Applet交互权限问题

今天又遇到了一个Java Applet安全权限问题,我工作中很多任务都是Oracle给我创造的! Applet在页面打开时就隐藏加载,用户在合适的时候点击按钮,此时通过JavaScript调用App...
  • alanzyy
  • alanzyy
  • 2016年03月14日 15:25
  • 943

Applet 与 javascript 的相互调用

 Applet 与 javascript 的相互调用主要包括:页面上的js方法调用 Applet 方法;从 Applet 中调用所在页面的js方法。实现上述功能需要引用 netscape.javasc...
  • ace62
  • ace62
  • 2011年04月02日 15:39
  • 5046

jsp调用applet以及采用js调用applet的方法

具体参考位置忘了 废话少说,上实例: 1.download.jsp 下载 服务器文件...
  • crazy_fire
  • crazy_fire
  • 2012年08月16日 18:34
  • 1888

Java Applet的运行顺序

1.应用程序中都有一个main()方法,程 序通过main()方法得到执行,因此,main()方法的内容对应了一个Java应用程序的动作。 Applet尽管不能独立执行,但也涉及到类。Applet...
  • qq_20366761
  • qq_20366761
  • 2016年03月21日 20:06
  • 1536

js 动态调用 applet 内的方法

js、applet 都是客户端脚本语言,在客户端与用户进行着一些信息交互。然而它们并不是独立的,它们也可以协作工作,互相调用来完成一些复杂的客户端操作。本文从一个项目实战例子,演示了如何使用 js 动...
  • defonds
  • defonds
  • 2011年03月23日 12:27
  • 11878

解决自签名Applet仍然弹出安全警告框的方案

我搜索了网上很多方案,做了签名,也把证书导入IE,都没有解决弹警告框的问题。最后自己摸索出这个方案...
  • yery
  • yery
  • 2015年06月27日 00:16
  • 2823

javascript和java applet互相调用

http://blog.sina.com.cn/s/blog_487bc31b0100wvha.html Java、Java Applet与JavaScript间的通信-JSP教程,Java技巧...
  • crazy_fire
  • crazy_fire
  • 2012年06月05日 17:40
  • 1449

Applet生命周期中init、start、stop、destroy

init:该方法用于初始化Applet,当applet首先被加载时,该方法会自动被调用一次。start:该方法在Java调用init方法之后被调用,当用户从其他页面返回到包含Applet的页面中时,该...
  • lyq32
  • lyq32
  • 2007年04月16日 19:01
  • 3231

Applet程序中使用的几个基本方法

Applet类是浏览器类库中最为重要的类,同时也是所有java小应用程序的基本类。Apple类中只有一种格式的构造方法public Apple(),此种方法用来创建一个Apple类的实例。因此,在编写...
  • Angiexia
  • Angiexia
  • 2012年11月09日 21:11
  • 1907
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:在JRE1.4.2以上版本中解决Javascript调用已签名Applet方法时提示没有权限问题
举报原因:
原因补充:

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