`
xinglongbing
  • 浏览: 149783 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论
阅读更多

通过JNLP API能够使应用程序运行在沙箱中同时还能以安全的方式访问本地资源,如:从本地加载文件或保存文件至本地。应用不能查看文件系统也不能指定文件的名字,而是通过弹出一个文件对话框让用户选择文件。在文件对话框弹出以前会有一个警告通知用户是否允许程序做进一步的处理,API不给于程序访问File对象的权利,程序员只能通过给定的工具实现"打开文件"和"保存文件"的动作,但是大部分系统信息对不信任的应用是隐藏起来的。

 

JNLP API提供了如下服务:

1.加载和保存文件

2.访问剪贴板

3.打印

4.下载文件

5.在默认的浏览器中显示文档信息

6.存储或获取持久性配置信息

7.确保只有一个应用实例在运行(1.5新增) 要使用这些API必须将javaws.jar导入,该jar文件在jre/lib子目录下。

 

传统的网页中嵌入Applet的形式不能及时获取应用更新,因为在第一次执行Applet的时候所有用到的相关资源(类和图像等其他文件)都会下载到本地特定的目录以便缓存,当再次执行Applet时实际是执行缓存在本地的文件,从而客户端与服务器在应用更新上不能保持同步。

而Java Web Start则可以避免该问题,他在每次执行程序时会首先在本地查找并查看服务器端是否进行了更新从而能够保证执行的程序总是最新的。

Java Web Start特性:

1.JWS应用一般通过浏览器发布,只要JWS应用下载到本地就可以启动而不再需要浏览器;

2.JWS应用不使用浏览器的Java实现,浏览器只是在加载JWS应用程序描述符时启动一个外部应用,这与启动Adobe Acrobat或RealAudio辅助应用程序类似;

3.JWS应用不在浏览器窗口内,而是显示在浏览器外部一个属于自己的框架中;

4.数字签名应用程序可以被赋予访问本地机器的任意权利。未签名的应用只能运行在沙箱中,这样可以阻止具有潜在危险的操作。

 

通过JWS发布的应用:将应用打包到一个或多个jar文件中,再创建一个Java Network Launch Protocol格式的描述符文件,将这些文件放在Web服务器中。

 

沙箱:Java安全模型,安全管理器是关键。

沙箱中程序的限制:

1.不能运行任何本地的可执行程序;

2.不能从本地文件系统中读取任何信息,也不能往本地文件系统中写入任何信息;

3.不能查看除Java版本信息等少数无害的操作系统详细信息外的其他信息:如用户名,email地址等;

4.远程加载的程序不能与除下载程序所在服务器之外的任何其他主机通信,这个服务器叫源主机:远程代码只能与家人通话。这将确保用户不会被代码探查内部的网络资源。(Java Se6中JWS应用可以与其他网络连接但必须征得程序用户的同意);

5.所有弹出式窗口都带有警告信息。

 

分享到:
评论

相关推荐

    1267342204836-integrated.jnlp

    java哪里都好用,不会就用jnlp来下载JAVA吧,就用它来下载,很不错的下载软件

    Java多彩动画程序.jar (.html, .jnlp)

    在Java中,这样的图形效果可以通过Java AWT(Abstract Window Toolkit)或Swing库来实现,它们提供了丰富的组件和API用于创建图形用户界面和动画。 总的来说,这个Java多彩动画程序使用了Java的核心技术和Web分发...

    JNLP

    标题 "JNLP" 指的是 Java Network Launch Protocol,这是一种由Java平台提供的技术,用于在网络上启动和运行Java应用程序。JNLP是Java Web Start的一部分,允许用户在浏览器或者独立的桌面环境中无缝地下载、安装和...

    JNLP ant webstart sign genkey sample

    标题“JNLP ant webstart sign genkey sample”涉及到的是Java网络启动(Java Web Start,JWS)技术,以及如何使用Ant构建工具来签名JNLP应用。在Java Web Start中,JNLP(Java Network Launch Protocol)是用于启动...

    jnlp详细文档

    JNLP(Java Network Launch Protocol)是Java Web Start的核心组件,是一个XML格式的文件,用于描述应用的元数据、依赖库、主类以及运行时的配置信息。这个"jnlp详细文档"可能是关于如何使用JNLP文件进行Java Web ...

    jfreechart-1.0.8-demo.jnlp

    这个jnlp(Java Web Start)文件是Java应用程序的启动链接,用户可以通过Java Web Start平台在浏览器上运行该演示。 描述中的"demo 和 sourcecode都在"意味着这个压缩包不仅提供了可执行的演示程序,还包含了源代码...

    JNLP开发(JWS)

    JNLP(Java Network Launching Protocol),作为一项由Sun Microsystems在2000年提出的规范(JSR 56),为Java应用程序提供了一种通过网络分发和执行的机制。这一技术的核心在于其能够将Java应用程序从远程服务器...

    jnlp例子

    Java Web Start(JNLP,Java Network Launch Protocol)是Java平台提供的一种技术,用于在网络上启动基于Java的应用程序。它提供了一种安全、便捷的方式,让用户能够通过点击一个链接来下载和运行Java应用,无需手动...

    jnlp 新手开发把手教

    JNLP(Java Network Launching Protocol)是一种通过网络部署和发布 Java 程序的新技术,它可以用来发布 Application,也可以用来发布 Applet。JNLP 的主要特点是安全、稳定、易维护、易使用。用户访问 JNLP 部署...

    Java2平台安全技术-结构,API设计和实现

    1. **Java安全模型** Java的安全模型基于三个核心概念:类加载器、安全策略和权限管理。类加载器负责将类加载到Java虚拟机中,同时通过不同的类加载器可以实现不同级别的隔离。安全策略定义了哪些操作被允许,哪些...

    jenkins-jnlp-slave镜像

    jenkins-jnlp-slave镜像

    Web程序中的JRE版本检测及JNLP文件的直接打开

    1. `<jnlp>`根标签,定义了JNLP文件的基本信息。 2. `<information>`元素,包含应用程序的元数据,如标题、厂商和版本。 3. `<resources>`元素,定义应用程序所需的JAR文件和其他资源,以及它们的JRE版本要求。 4. `...

    jdk-9.0.1_doc-all 最新版

    Defines the API for Java Network Launch Protocol (JNLP). java.smartcardio Defines the Java Smart Card I/O API. Skip navigation links Overview Module Package Class Use Tree Deprecated Index ...

    jnlp本地共享策略

    用jnlp开启一个服务,实现本地桌面远程共享

    Java核心技术(第八版)源码

    本源码集覆盖了《Core Java( Eighth Edition)》卷一和卷二的主要内容,旨在帮助读者通过实践深入理解Java的核心概念和技术。 卷一主要涵盖了Java的基础知识,包括: 1. **Java编程环境**:介绍如何设置开发环境...

    java信任SSL证书的工具类

    java信任SSL证书的工具类 忽略HTTPS请求的SSL证书,必须在openConnection之前调用

    OneWireViewer.jnlp

    OneWireViewer软件的java运行版本,ONEWIREVIEWER JAVA WEB入门,可以将OneWireViewer作为Java™Web Start程序安装在Java支持的操作系统上。

    jviewer.jnlp

    java工具包jviewer

Global site tag (gtag.js) - Google Analytics