`
sanshi
  • 浏览: 83525 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

RMI与Applet

    博客分类:
  • java
阅读更多

      对RMI的客户端的运行一直很迷惑,其中一个就是安全策略文件的问题,今天看看了如果客户端是Applet的情况,有一篇资料说Applet不需要写System.setSecurityManager(new RMISecurityManager());在服务器端可以不设置,下面是一篇资料上关于服务器端的情况:第一步是安装 RMI 安全性管理器。尽管这不是严格必须的,但它确实允许服务器虚拟机下载类文件。例如,假设客户机调用服务器中的方法,该方法接受对应用程序定义的对象类型(例如 BankAccount)的引用。通过设置安全性管理器,我们允许 RMI 运行时动态地将 BankAccount 类文件复制到服务器,从而简化了服务器上的配置。
让 RMI 动态地下载这些类的弊端是有安全性风险。也就是说,实质上我们是在让服务器执行来自另一台机器的代码。虽然我们希望这些类文件不会危及服务器,但如果希望避免这样的风险,则您的 RMI 服务器不应该安装安全性管理器。然后,您必须确保将所有类文件安装在本地服务器的类路径中。如果客户端是应用程序,在客户端一般要写上System.setSecurityManager(new RMISecurityManager());RMI 运行时会自动将远程对象的存根类文件下载到客户机,但仅当应用程序安装了安全性管理器时才能这样做。如果应用程序使用缺省的安全性管理器,则需要在客户机计算机的类路径预安装存根类文件,否则应用程序将捕获到一个安全性异常。

       如果Applet要访问本机资源,则需要数字签名了和安全策略文件了,有篇文章总结的很好,http://java.e800.com.cn/articles/2007/126/1169755326341477575_1.html,还要sun公司的官方网站:http://java.sun.com/docs/books/tutorial/security/tour1/index.html

   如果客户端是应用程序,该怎么办呢,总不能每次在客户端的命令行里输入: > java -Djava.security.policy=policy.txt CalculatorClient  吧,这个做测试还行,在实际应用中该怎么办呢?

 进一步学习中。。。。。。

分享到:
评论

相关推荐

    java-applet-soket-rmi.rar_websign.html

    通过阅读和分析这些源码,可以深入理解Applet与RMI如何协同工作。 学习这个项目,可以提升对Java Applet和RMI的理解,了解它们如何用于实现安全的跨主机通信。对于希望构建分布式系统或网络应用程序的开发者来说,...

    applet与servlet通讯

    7. **使用 RMI (Remote Method Invocation)**:虽然 RMI 不是为浏览器环境设计的,但在特定情况下,通过加密和隧道技术,可以实现 Applet 与 Servlet 之间的 RMI 通信。 每种通信策略都有其优缺点,开发者应根据...

    applet与jsp的交互

    本文将深入探讨“applet与jsp的交互”这一主题,这对于理解Java Web应用的运作机制非常重要。 首先,Applet是Java的一种早期实现,它允许在Web浏览器中运行Java代码。Applet是嵌入在HTML页面中的小程序,可以通过...

    Applet and Servlet Communication

    - **Java RMI (Remote Method Invocation)**:Applet与Servlet可以通过RMI进行远程方法调用,实现对象级别的通信。这种方式较为复杂,需要配置RMI注册表,适用于复杂的交互场景。 - **JDBC (Java Database ...

    draw_rmi

    将Applet与RMI结合,可以实现更复杂的网络交互。例如,Applet可以作为用户界面,而RMI则提供后台服务。在这种情况下,Applet可以调用远程对象的方法来获取或更新数据,实现跨网络的交互。这种设计模式在分布式应用中...

    北大Java--Applet

    Applet与普通的Java应用程序(Application)的主要区别在于执行方式。Application通过命令行直接运行,从main()方法开始,而Applet则需要嵌入在HTML文件中,由浏览器加载并执行。 1. **所有小应用程序的根源** ...

    servlet applet通讯的例子

    - Applet与Servlet通信时,必须考虑到安全策略。Applet通常运行在沙箱环境中,对系统资源访问有限制。因此,敏感操作如文件读写、网络访问等可能需要用户权限或使用签名的Applet。 5. **HTTP请求和响应**: - ...

    论文研究-JMS与RMI技术在数据库监测系统中应用研究.pdf

    标题:“论文研究-JMS与RMI技术在数据库监测系统中应用研究.pdf” 描述:本文主要对比了JMS(Java消息服务)与RMI(远程方法调用)这两种分布式对象通信技术,并探讨了在构建数据库性能监测系统时,如何应用这些...

    J2EE企业应用之Applet和Servlet间的通信

    **Applet与Servlet的通信挑战** 由于浏览器的安全模型,Applet在与Servlet通信时面临一些限制。Applet只能与发布它的服务器进行通信,不能直接访问本地文件系统或执行本地程序,也不能创建或接受非源服务器的socket...

    基于Java_RMI的分布式WebGIS模型研究

    1. **Java Servlets和JSP**:用于处理HTTP请求,生成动态Web内容,与后台数据库交互,以及与客户端的Java Applet或JavaScript进行通信。 2. **Java Applets**:在客户端运行的Java小程序,可以增强用户交互体验,...

    Java小程序与应用服务器进行大量数据传输的探讨.pdf

    在探讨Java小程序与应用服务器进行大量数据传输时,首先需要了解Java小程序(Applet)和应用服务器之间的通信机制。Java Applet是一种可以在客户端浏览器中运行的小型Java应用程序,它能够通过网络与服务器进行交互...

    JDK_API_1_6_zh_CN_downcc.com.zip 良心一级分

    java.applet 提供创建 applet 所必需的类和 applet 用来与其 applet 上下文通信的类。 java.awt 包含用于创建用户界面和绘制图形图像的所有类。 java.awt.color 提供用于颜色空间的类。 java.awt.datatransfer ...

    115个JAVA面试题和答案终极列表下.pdf

    Applet与普通的Java应用程序的主要区别在于,Applet在浏览器环境中运行,受到更严格的沙箱安全限制,不能自由地访问本地资源,如文件系统和网络。而Java应用程序可以在没有浏览器的情况下独立运行,具有更大的权限。...

    基于Web的分布式远程仿真的研究与设计

    同时,通过Applet与Servlet之间的通信机制,该设计实现了客户端与服务器端的有效交互。Applet是嵌入在Web页面中的小型Java程序,负责与用户的交互和执行部分计算任务;Servlet则是运行在服务器端的Java组件,用于...

    Java.Servlets编程指南

    第1章 servlet概述第2章 Java Web服务器第3章 第一个servlet 第4章 servlet链第5章 servlet-side Includes 第6章 会话管理第7章 安全性 第8章 HTML表单第9章 在servlet中使用JDBC 第10章 applet与servlet的通信第11...

    Java程序设计语言

    - 将应用程序转换为Applet,需要考虑Applet生命周期和与HTML的交互。Applet的结构包括初始化、绘画和销毁等阶段。 4. **创建用户界面**: - Java Swing库提供了创建GUI组件(如按钮、文本框等)的方法。使用Swing...

    JAVA_API1.6文档(中文)

    java.applet 提供创建 applet 所必需的类和 applet 用来与其 applet 上下文通信的类。 java.awt 包含用于创建用户界面和绘制图形图像的所有类。 java.awt.color 提供用于颜色空间的类。 java.awt.datatransfer ...

Global site tag (gtag.js) - Google Analytics