IE 11无法找到运行Applet的Java插件

jso*_*ski 5 javascript java applet internet-explorer activex

我有使用Java Applets的应用程序构建,适用于带有IE 9的Windows 7.现在我正在尝试将其移动到另一个环境.有Internet Explorer 11.

要运行applet,我使用的是Oracle Deployment Toolkit Script,其最新版本来自https://www.java.com/js/deployJava.txt.但该脚本未检测到Java插件.它只重定向到页面java.com(建议下载最新JRE).

但是我的浏览器安装了Java插件(这里是JRE 1.7.80):

在此输入图像描述

还有两个SSV助手 - 也许他们会导致这个问题?

在此输入图像描述

Java 8(u144)导致同样的问题.

题:

如何在IE 11中检测Java插件并运行applet?

deployJava.jsIE或IE 11配置有问题吗?

更多解释:

Oracle deployJava.js脚本使用此类代码来检测IE中的JRE版本(deployJava源代码 - 行1172-1188):

testUsingActiveX: function(version) {
    var objectName = 'JavaWebStart.isInstalled.' + version + '.0';

    // we need the typeof check here for this to run on FF/Chrome
    // the check needs to be in place here - cannot even pass ActiveXObject
    // as arg to another function
    if (typeof ActiveXObject == 'undefined' || !ActiveXObject) {
        log('[testUsingActiveX()] Browser claims to be IE, but no ActiveXObject object?');
        return false;
    }

    try {
        return (new ActiveXObject(objectName) != null);
    } catch (exception) {
        return false;
    }
},
Run Code Online (Sandbox Code Playgroud)

不幸的是,ActiveX 11似乎在IE 11中受到限制,限制或禁用.关于SO的这个主题在这里 ......任何人都知道任何细节?

我手动运行(在IE 11.1480开发者控制台中)这段代码:

new ActiveXObject('JavaWebStart.isInstalled.1.8.0.0');
Run Code Online (Sandbox Code Playgroud)

返回:

自动化服务器无法创建对象

但是在较旧的IE 11.09600中运行相同的代码会返回对象:

[对象] {}

我很困惑...... Oracle可以更好地编写脚本吗?

规格:

Internet Explorer 11,版本:11.1480 ...更新版本:11.0.44

系统:Windows Server

Java:在1.8.1441.7.80之后测试

由Oracle deployJava.js运行的Applet

jso*_*ski 5

我找到了一个解决方案:

Applet需要在客户端计算机上安装32位JRE(以及IE插件).或者更具体的IE ActiveX机制仅适用于32位Java,因为默认情况下所有IE都是32位.还有64位IE版本,但我不尝试.

我用过最新的JRE 1.8u144 32 bit.

任何人都可以使applet工作的一些提示(即使在2017年):

  1. 检查Internet Explorer版本(32位或64位) - 查看帮助 - > 关于Internet Explorer,如果没有64位信息,则可能使用32位.还检查Windows任务管理器并搜索*32进程.更多信息在这样的其他SO问题.
  2. 禁用ActiveX筛选也可能有所帮助.但在我的情况下,这不是必要的,因为IE显示的消息警告运行Java插件,我只需要接受这个.
  3. 我已禁用选项:在" Internet选项"窗口的" 安全"选项卡上启用"保护模式 " (对于Internet区域).

可以从此讨论中检索更多信息:

https://answers.microsoft.com/en-us/ie/forum/ie11-iewindows_10/cannot-access-secure-website-that-requires-java/173f732b-7377-41f6-8c6f-2ae171f4da7a?auth=1