您的位置:软件 > 开发者网络 > 开发工具 > Java > 正文
Java Applet给ActiveX跪下了
[文章信息]
作者:阎宏
时间:2003-08-18
出处:yesky
责任编辑:方舟
[文章导读]
Java Applet又不是人,怎么能跪下呢
advertisement
热点推荐
· 天极网软件频道改版调查
· 在ASP.NET程序中创建唯一序号
· 用JVM工具接口创建调试和分析代理
· Win 2000如何安装配置防火墙
· 防范Windows消息钩子的侵入
[正文]


  耸人听闻!Java Applet又不是人,怎么能跪下呢?就是跪下,又怎么能给ActiveX这个手下败将跪下呢?

  曾几何时,Java Applet把ActiveX踩在了脚底下。ActiveX不安全,而Java Applet因为虚拟机的技术,能够构造Sandbox,Java Applet可以在SandBox里面运行,而Sandbox可以排除Java Applet的任何危险动作,诸如针对本地文件的IO等等。正因如此,当然也因为Java阵营的添油加醋的造势和炒作,弄得大多数的公司把自己的防火墙配置成禁止任何ActiveX通过。网页上的ActiveX成为安全漏洞的代名词。

  Java Applet真正把ActiveX踩在了脚底下。同时,正是因为Applet上的成功,使得Java成为网络时代的代名词,星星之火,燎原于世。一个为小设备和网上小程序准备的语言,终于成为全功能语言,进入企业级,形成自己的开发平台,把Microsoft打的还不了手。Microsoft不得不全方位改造自己的开发语言,或多或少向Java看齐。大家都知道,这就是.NET开发语言的来历。没有Java,VB不可能这么快就变成VB.NET,也不会有C#,更不会有.NET Common Runtime等等,恐怕没有人不同意吧。

  Java的成功始自Java Applet,而对Java Applet的支持始自Netscape。后来Internet Explorer跟进,随后所有的浏览器都必须支持Java Applet。在Netscape如日中天的时候,Microsoft不敢多想,所以Internet Explorer一直老老实实地支持Java Applet。但是Netscape并不领情,所以Netscape对ActiveX的支持一直局限在选择安装的Plug-in的水平上,也就是说,除非用户安装一个Plug-in,不然不能在Netscape浏览器里面运行ActiveX。而一般用户根本就不知道还需要安装另一个软件;或者知道需要安装,但是不知道怎么安装;或者知道需要安装,也知道怎么安装,但是因为怕麻烦等原因没有安装。那么对不起,用户没法浏览带有ActiveX的网页。

  任何网站开发人员也非常清楚这一点。他们如果在网页上面使用ActiveX而不是Java Applet的话,那么估计有一半的互联网用户因为使用Netscape浏览器,将无法使用他们的网站。在顾客至上的考虑下,唯有选择Java Applet,放弃ActiveX。

  这简直就是一种不平等条约,但是那个时候Microsoft没办法反击。

  现在不同了,一方面Netscape已经从一只老虎变成了一只猫,另一方面Microsoft赢了官司,不必要在操作系统中加载JVM。Microsoft反击了。现在的IE6.0已经把对Java的支持降到了选择安装的Plug-in的级别,也就是说,除非用户在安装完IE之后,再自行安装一个JVM才能运行Java Applet。对于普通用户来说,这只能带来不便,是一种倒退。

  但是对Microsoft来说,不平等条约又变成了平等的,只是代价…。

  我们不妨考察一下现在的IE6如何支持Java Applet吧。要想在IE上面运行Java Applet,网页开发人员可以指定某一个版本的,Sun JVM Plug-in(专为IE开发的那种),就可以触发IE自动下载这个Plug-in。比如下面的标签声明了一个Java Applet,类名为com.cmpc.CMPCApplet3,它需要1.4.1或更新的SUN JVM(为IE开发的Plug-in):

<object classid = "clsid:CAFEEFAC-0014-0001-0003-ABCDEFFEDCBA"
width="320" height="240" name="CMPC"
codebase="http://java.sun.com/products/plugin/autodl/jinstall-1_4-windows-i586.cab#Version=1,4,1,mn">
<param name="code" value="com.cmpc.CMPCApplet3">
<param name="cache_archive_ex" value="preload;1.0.0.4">
</object>

  在JVM下载、安装完毕之后,IE会自动运行这个Applet。当然,每一个版本的JVM下载和安装只发生一次,除非另外一个Applet需要另一个版本的JVM,不然就不需再次下载和安装了。这倒也不是特别大的不便,特别是对于有高速上网条件的用户来说。可要是您用的是56K Modem的话,这就是个问题,您可能就需要另外找到这个版本的JVM的CD,自己在机器上安装,然后再浏览需要这个JVM的网页。

  读者可能还看不出:Java跪在哪了?我跑题跑得太厉害了吧?

  慢着,您仔细看看上面的标签。那里说明了这个JVM是一个ActiveX。

  奇怪吗,想想也不奇怪。IE的Plug-in必须是ActiveX。JVM降到了Plug-in级别之后,也就降到了一个普通的ActiveX的级别。所有的Java Applet都是在这个ActiveX里面运行的小程序。

  更为安全和强大的Java Applet必须依赖于ActiveX才能运行。严格地讲,还是在一个ActiveX内部运行。

  再想一想就更有趣了,如果用户继续坚信Java阵营当初的宣传的话,用户的防火墙根本就不会让身为ActiveX的SUN JVM穿过去,用户也无法让IE自动安装JVM。那样的话,用户的出路也只有一个:就是找张CD,然后在各台机器上手动安装。不过根据Netscape用户的经验,没有人耐烦这样做。

  您告诉我,Java Applet是不是跪着呢?

·"WAP天极之IT新闻资讯,50万元等你拿"    ·天极WAP之游戏狂图,50万元等你下载


发表评论推荐给朋友我想参加相关培训打印我对此感兴趣订阅电子杂志
相关内容阅读排行榜
  • JBoss技术支持文档(二)
  • Java编程技巧:列表排序
  • JBoss技术支持文档(一)
  • 具有不同显示风格的Jbutton
  • WebSphere Studio和XDE构建应用程序
  • 主板超频特色技术GIGA技嘉篇
  • Win 2000如何安装配置防火墙
  • 防范Windows消息钩子的侵入
  • 性价比之选 AGP显卡的告别秀
  • 大学校园生活之聊天也疯狂
  • Fireworks制作GIF动画Banner
  • 金山打击外挂 遭网络游戏玩家起诉
  • 完全公测《开天》掀起滔滔巨浪
  • Advertisement

    天极无线
    待机彩图    >>更多
    多彩动画    >>更多
    美妙和弦    >>更多
    天使在唱歌
    壁虎漫步
    PrettyBoy
    LoveLoveLove
    我是你的小小狗
    单身情歌
    十面埋伏
    祝酒歌
    回心转意
    波斯猫
    太委屈
    S.H.E
    潘玮柏
    M2M
    蔡依林
    阿牛
    林志炫
    陈弈迅
    刀郎
    黑龙
    S.H.E
    陶晶莹
    情人玫瑰坊
    音乐风云
    新片速递
    神秘测试
    都市约会
    ·天极彩信天天精彩
    ·图铃梦工厂下载无限!
    ·找寻童真,卡通专题
    ·夏日激情交友社区!
    ·星座运程,预测人生

    CSEEK搜索