使用java 1.7.0_51,java web start应用程序在第一次启动后无法启动

时间:2014-03-28 10:36:51

标签: java java-web-start

我们有一些自签名的遗留javaws应用程序。因此,在启用部署规则集后,我们尝试使用java 1.7.0_51中的javaws启动它们。应用程序仅在第一次启动时。在他们第一次之后,他们未能发布关于自签名罐子的错误。但是,应用程序将在清除缓存后启动

从DRS文档中,如果启用DRS,似乎不会阻止自签名jar。但这不是上面观察到的行为。对我来说,这看起来像一个bug。请确认并告知我们如何启用启用了DRS的旧应用程序,并且不会在每次启动时清除缓存。

注意:只有“高”或“非常高”的安全设置才能观察到这一点。

2 个答案:

答案 0 :(得分:0)

尝试更新Java Version Java 8.0

答案 1 :(得分:0)

我发现了问题,并为面临同样问题的任何人提供了解决方案。

问题是我有一个ruleset.xml文件,其中包含一个IP地址匹配规则。在第二次启动期间,从缓存中挑选罐子,因此与IP地址规则不匹配。解决方案是使规则与用于签署应用程序jar的证书相匹配。

现在ruleset.xml中的规则看起来像

<ruleset version="1.0+">
      <rule>
            <id>
                  <certificate hash="9208E7206B4BD02D891385A6162E58F5FA67B4B64EBF92A87A9C2DC" />
            </id>
            <action permission="run" />
      </rule>
</ruleset>

有关获取哈希值的步骤,请参阅Deployment Rule Set documentation