下一代Java Applet插件技术
|
源代码网整理以下 Java SE 6对Java桌面应用进行较大的升级,并启动了Java SE 6 Update N计划,该计划旨在简化JRE的大小,增进用户的安装体验,并提供了一个新的Applet浏览器插件,该插件将会随Java SE 6 Update 10发布。本文全面介绍了这个新插件的关键特性,并以NASA的World Wind为例介绍了该插件的应用。(2008.07.15最后更新)
为了在网络中传递你的程序,是时候再次考虑Java Applet技术了。下一代Java插件技术以一种不同的,比过去更高效、更可靠的途径来运行Applet。现在你可以获得如下好处: 增强的可靠性 改进的用户体验 在后台启动Applet 内建的JNLP支持 针对每个Applet的命令行参数 堆内存大小,Java 2D API加速选项 改进的Java/JavaScript程序设计语言集成 改进的Windows Vista支持 签名的Applet现在可以在Internet Explorer的保护模式中正常运行 下一代Java插件提供了一种完全重新设计的架构,它将出现在Java SE 6 Update 10中。该插件为运行在网络浏览器中的Applet提供了强大的新功能,它以向后兼容的方式改进了整个Applet的可靠性及功能。 下一代Java插件最有意义的新特性是它内建支持通过JNLP文件启动Applet。使用JNLP文件格式作为Applet的描述符就能允许Applet马上复用之前为Java Web Start应用所写的JNLP扩展。 执行Applet的新途径 执行Applet的新途径在结构上与Java Web Start技术相似,但与浏览器整合的更为紧密。 Applet不在运行于网络浏览器内的JVM中,而是会启动一个独立的JVM进程去运行Applet。默认地,只有一个JVM将被启动,但你也能启动多个JVM,并且可以为每个Applet都设置命令行参数,所以你能影响堆内存的大小或其它的要求。 Figure 1. Applet Architecture 在上图中,云表示JVM实例。在浏览器内有一个小的,headless JVM被用于管理一个或多个客户端JVM之间的连接,这些JVM运行着Applet。在该图中,Duke表示Applet。其中,一个JVM实例运行着两个Applet,另一个运行着一个Applet。 Applet直接从JNLP文件启动,它使用的JNLP文件与Java Web Start软件使用的描述符文件相同,并且允许使用比典型的"archive","code"和"cache_archive"更为强大的参数。 新的插件提供了: 能够访问之前仅由Java Web Start软件专用的高级JNLP扩展。之前有少部分参数能够使用,但有一些限制,现在这些限制则被去除。 通过Applet访问JNLP API。 支持PersistenceService和DownloadService。 能够控制堆内存大小,命令行参数,JRE版本选择和自动下载。你具有Java Web Start软件所拥有的相同功能。 现在你就可以在Web页面中使用像下面这样的语句了: <applet width=”500” height=”500”> <param name=”jnlp_href” value=”my_applet.jnlp”> </applet> 调用Applet生命周期方法init,start,stop和destroy会更为确定,并且已经改进了跨浏览器行为。完全支持Applet类装载器缓存,遗留的Applet生命周期及对向后兼容性的需求,并且这些行为都已得到了改进。 Applet运行的就像一个由Java Web Start启动的应用。参数jnlp_href在Web页面和Applet的JNLP描述之间起到了桥接的作用。在如宽度与高度这样的特定方面,Applet标签与JNLP文件具有重叠的机制。 一般地,你应该使用Deployment Toolkit,这也是一个出现在Java SE 6 Update 10中的新工具,它能自动地为Applet标签生成HTML。部署建议指南展示了如何使用Deployment Toolkit简便地发布Applet。 源代码网供稿. |

Applet回来了!