使用deployJava.js检查/自动安装Web applet的最新JRE版本

时间:2012-04-13 19:05:56

标签: java applet version auto-update deployjava

我想使用deployJava.js工具让Java自动检测当前安装的JRE,并在必要时安装更新版本。我在阅读有关deployJava.js时的初步印象是,当您只是将版本号设置为“runApplet”函数的函数参数时,它会立即执行此操作。但这似乎从未奏效。

甚至可以这样做,如果是,怎么做?

以下是我目前启动applet的代码:

<script type="text/javascript" src="https://www.java.com/js/deployJava.js"></script>
<script type="text/javascript">
    var attributes = {id:"applet", name:"TheApplet", code:"TheApplet"}; 
    var parameters = {jnlp_href: "http://localhost/TheApplet.jnlp"};
    deployJava.runApplet(attributes, parameters, "1.6.0_31");
</script>

由于

2 个答案:

答案 0 :(得分:3)

我确信有一些方法可以让deployJava.installLatestJRE()工作,但在我的测试中它似乎什么也没做。

但作为一个可行的解决方案,我只是使用deployJava.versionCheck()函数来检查所需的版本,然后使用JavaScript将用户转发到“http://java.com/en/download/testjava.jsp”如果有必要,他们可以在那里下载最新版本。

<script type="text/javascript" src="https://www.java.com/js/deployJava.js"></script>
<script type="text/javascript">
    if (deployJava.versionCheck("1.6.0_31+") == false) {                   
        userInput = confirm(
                "You need the latest Java(TM) Runtime Environment. " +
                "Would you like to update now?");        
        if (userInput == true) {  
            window.location = "http://java.com/en/download/testjava.jsp";
        }
    }
    else
    {
        var attributes = {id:"applet", name:"TheApplet", code:"TheApplet"}; 
        var parameters = {jnlp_href: "http://localhost/TheApplet.jnlp"};
        deployJava.runApplet(attributes, parameters, "1.6.0_31");
    }
</script>

答案 1 :(得分:0)

我在稍微不同的上下文(应用程序而不是applet)中测试它,这对我有用。 所以你可以尝试使用&#39;&#39;而不是&#34;&#34;然后通过1.6,看看会发生什么

deployJava.createWebStartLaunchButton('http://localhost:8080/file.jnlp', 1.7)