始终未显示依赖于Caller-Allowable-Codebase属性的警告

Mah*_*esh 35 java applet

我在签名的Java小程序中有以下清单信息.我的构建环境很旧,目前仅限于JDK 1.6.

Manifest-Version: 1.0
Implementation-Vendor: Foo, Inc.
Application-Library-Allowable-Codebase: * 
Application-Name: FooBar
Permissions: all-permissions 
Sealed: true 
Created-By: 1.6.0_20 (Sun Microsystems Inc.)
Caller-Allowable-Codebase: *
Codebase: https://*
Run Code Online (Sandbox Code Playgroud)

根据Java文档 -

如果将与顶级域(如*.org)一起使用的独立星号(*)或星号指定为Caller-Allowable-Codebase属性的值,则从JavaScript代码到RIA的调用将显示安全警告.用户可以选择允许呼叫或阻止呼叫.还提供了记住选择的选项.如果用户选择记住该选项,则当它从同一来源的JavaScript代码接收调用时,不会显示同一RIA的其他警告消息.

我的Web应用程序中的Java脚本代码依赖于Applet的返回代码来显示门户上的适当状态.显示的消息因返回的状态代码而异.但是为了实现这一点,应该出现Java警告窗口.在Firefox v51和JRE 1.8.121中,此警告窗口有时会显示.如果没有,则不存在JavaScript和Applet之间的通信.什么可能是警告窗口不会一直出现的问题?

Man*_*ing 1

我使用相同的实时连接方法在小程序和 Javascript 之间进行通信。在过去的几年里,从 JRE6u45 到当前的 JRE8u131,我遇到了许多不同的警告屏幕。这取决于您现在面临的警告屏幕。

您每次都使用 Firefox 吗?Firefox 不支持 Java 插件,因为某个版本请参见此处。仅供参考,Chrome 和 MS Edge 不支持 Java Applet。请检查您是否没有使用它们。

Caller-Allowable-Codebase 属性不应触发任何警告。如果它没有正确包含域,它应该阻止小程序运行。应该不会出现允许您运行的警告消息。

一般来说,大多数警告屏幕来自 JRE 而不是浏览器。因此,您还可以检查以下项目:

  • 代码签名证书有效且未过期。
  • 转到 Java 控制面板,清除小程序缓存(在“常规”选项卡中)
  • 启用 Java 内容已选中(安全选项卡)
  • 恢复安全提示(安全选项卡)
  • 启用混合代码以在需要时显示警告(高级选项卡)
  • 启用日志记录和跟踪,显示 Java 控制台(Java 控制面板 -> 安全选项卡)

请提供更多详细信息屏幕或警告消息。