我的applet写法是这样的
<object
    id="myApplet"
    classid = "clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
    codebase = "http://java.sun.com/update/1.5.0/jinstall-1_5-windows-i586.cab#Version=5,0,0,7"
    WIDTH = "100%" HEIGHT = "100%" >
</object>
这样如果没有安装jre或者版本低于1.5的时候会自动去sun站点下载更新。但现在有个问题,到sun官方站点更新速度太慢,而且有时候用户是在企业内部网,不能访问外网。我打算把要更新的内容放在我自己的web服务器上来更新。怎么办?
把jinstall-1_5-windows-i586.cab下载过来也不行,它的exe运行的时候还是要去sun下载东西

解决方案 »

  1.   

    没实做过,先说一下,楼主试试吧:把 http://java.sun.com/update/1.5.0/jinstall-1_5-windows-i586.cab 下载下来,放到你自己的网站上,比如 http://www.mysite.com/jinstall-1_5-windows-i586.cab
    然后在 HTML 里这样写:
    <object
        id="myApplet"
        classid = "clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
        codebase = "http://www.mysite.com/jinstall-1_5-windows-i586.cab#Version=5,0,0,7"
        WIDTH = "100%" HEIGHT = "100%" >
    </object>
      

  2.   

    Sorry, 没看清原贴。如果不行的话,当我没说  *_*
      

  3.   

    又稍微仔细地研究了一下,发现一些线索,估计楼主自己已经都研究过了。姑且说说吧。IE 在拿到 jinstall-1_5-windows-i586.cab 这个文件包之后,会把里面的两个文件(jinstall-1_5_0_07.inf 和 jinstall.exe)解到一个文件夹中,并按照 jinstall-1_5_0_07.inf 文件的要求去运行 jinstall.exe。运行 jinstall.exe 的时候有个命令行参数
        /installurl=http://java.sun.com/update/1.5.0/1.5.0_07-b03.xml
    这个参数估计就是指导 jinstall.exe 运行的信息。下载回来看看,是下面的内容:
        <?xml version="1.0" encoding="ISO-8859-1" standalone="yes" ?>
        <java-update>
           <information version="1.0" xml:lang="en">
               <title>J2SE Runtime Environment 5.0</title>
               <identifier></identifier>
               <description>J2SE Runtime Environment 1.5.0_07-b03</description>
               <url>http://java.sun.com/webapps/download/AutoDL%3FBundleId=10548</url>
               <msi-url>http://jdl.sun.com/webapps/download/GetFile/1.5.0_07-b03/windows-i586/</msi-url>
               <post-status>http://jal.sun.com/webapps/installstat/StatServlet</post-status>
               <cntry-lookup>http://jal.sun.com/webapps/installstat/CountryLookup</cntry-lookup>
               <online-options>SPWEB=http://javadl-esd.sun.com/update/1.5.0/sponsors-1.5.0_07</online-options>
               <options>/installmethod=jau SPWEB=http://javadl-esd.sun.com/update/1.5.0/sponsors-1.5.0_07</options>
           </information>
        </java-update>
    看来,要让自己的网站“完全模拟”这里给出的所有 URL 是不现实的(这里有几个 URL 很像是 WebService 的东西),但如果某个 URL 只是“下载文件”,那么就可以用自己的网站模拟它。下面的事情,楼主自己再研究吧。如果成功了,别忘了来分享一下  :D
      

  4.   

    哪有这么麻烦的,凡是<object>标签的都有一个codebase,你把codebase设成:
    codebase="http://192.1068.0.122/package/XXXX.jre"不就成了吗
      

  5.   

    关于codebase这个属性我说下
    codebase = "http://java.sun.com/update/1.5.0/jinstall-1_5-windows-i586.cab#Version=5,0,0,7"#前的部分是URL,或者URI,可以是个绝对的或者相对的。
    如: http://.....//xxx.cab/
         xxx.cab#后面的version是当前服务器的版本号,如果客户端的低于这个5,0,0,7的版本客户端会自动更新。但是,有个很重要的东西告诉楼主,就是关于数字签名。如果你的cab没有签名,IE默认是不能自动下载的。你如果修改所有的客户端IE设置会很郁闷的。你可以购买认证证书,这样客户端才可以默认的IE下载。
      

  6.   

    感觉如果jre可以随便在哪个服务器更新的话,那我们上网也太不安全了把,不小心更新个带毒的机子不就挂了