【问题标题】:Force JRE to run applet from local jar files强制 JRE 从本地 jar 文件运行小程序
【发布时间】:2013-06-24 14:48:34
【问题描述】:

我正在处理一个无法修改的企业网络应用程序。它使用 Java 小程序连接到智能卡以进行身份​​验证。在开放网络上一切正常,但这个特定站点是一个安全环境,使用非常锁定的代理来阻止下载 JAR 文件,因此该应用程序无法运行。对于大多数页面,它使用单个小程序,因此通过将该 JAR 放到 lib/applet 中,它将从那里加载而不是下载。

但是,在 1 个关键页面上,出于各种目的需要 4 个 JAR 文件(它们实际上是,这不仅仅是 Java 重载)。我将包含最初执行的小程序类的 JAR 放入 lib/applet 中,其余的放入 lib/ext 中,但浏览器/JRE 每次都继续尝试下载所有 4 个。

我无法修改安全代理配置或网络应用的 HTML。有没有办法可以将 JRE 配置为始终对特定类使用本地 JAR?

提前致谢。

【问题讨论】:

    标签: jar proxy applet java


    【解决方案1】:

    听起来您正在击中沙盒防火墙。文档指出沙盒小程序无法访问客户端资源:

    他们无法访问客户端资源,例如本地文件系统, 可执行文件、系统剪贴板和打印机。

    由于它无法访问本地资源,它试图通过网络连接到它所来自的主机(这是它唯一的授权来源)来获取它需要的东西。

    如果小程序不是从本地文件系统加载的,那么让小程序访问本地文件系统会变得很复杂:

    从本地文件系统(从用户的 CLASSPATH 中的目录)加载的小程序没有通过网络加载的小程序所具有的限制。

    更多信息:Applet Security

    希望这会有所帮助。

    【讨论】:

    • 我想知道这是否可能是访问控制问题,所以在 java.policy 中添加一个条目,让所有内容都可以访问所有内容。不幸的是没有区别。
    猜你喜欢
    • 1970-01-01
    • 2013-08-01
    • 1970-01-01
    • 2013-06-30
    • 2021-01-08
    • 2013-07-15
    • 1970-01-01
    • 2020-09-14
    • 2013-03-09
    相关资源
    最近更新 更多