在我将我们的 32 位专用 Windows 2003 服务器从 9.0 升级到 9.0.1 之后,java.policy文件停止工作:
permission java.util.logging.LoggingPermission "control";
这意味着我无法使用 Java Logger
。我得到以下信息:
HTTP JVM: java.security.AccessControlException: Access denied (java.util.logging.LoggingPermission control)
HTTP JVM: at java.security.AccessController.throwACE(AccessController.java:100)
HTTP JVM: at java.security.AccessController.checkPermission(AccessController.java:166)
HTTP JVM: at java.lang.SecurityManager.checkPermission(SecurityManager.java:544)
HTTP JVM: at java.util.logging.LogManager.checkPermission(LogManager.java:317)
HTTP JVM: at java.util.logging.LogManager.checkAccess(LogManager.java:311)
HTTP JVM: at java.util.logging.Logger.addHandler(Logger.java:548)
我甚至尝试从 64 位 9.0 虚拟服务器复制 java.policy 文件,然后重新启动 HTTP。然后,我使用在 9.0 服务器上运行的应用程序副本进行测试,结果在 9.0.1 服务器上出现了此错误。
Java 代码位于代码/Java元素,它是从 XPage 调用的。
如何在 Domino 9.0.1 中向 Java 授予权限?
更新:
如果我添加这个:
permission java.security.AllPermission;
那么它就起作用了。所以是读取 java.policy 文件但授予日志访问权限不再起作用,至少与 9.0.1 中的工作方式不同。授予访问权限AllPermission
绝对不是我想要的解决方案。
Lars Migula 似乎有同样的问题在 8.5.3 中安装修复包后。
答案1
顺便说一下,请将您的更改放在 java.pol 文件中,而不是 java.policy 文件中。只需在与 java.policy 文件相同的目录中创建一个即可。java.pol 不会被升级/修复包替换...
答案2
IBM 支持人员告诉我:
此问题与以下已知问题相符:SPR# RGAU9CSBWA 与 APAR LO77612 相关。该问题最早在 8.5.3 FP 5 中报告,并在 9.0.1 中重现
我添加了一个链接,但目前无法使用,这可能是因为 IBM 网站暂时出现问题。我可以看到以下内容:
LO77612:在 DOMINO 8.5.3 上安装 FIXPACK 5 后,修改后的 JAVA.POLICY 被忽略
临时解决方案
java.security.AllPermission; to the java.policy file.
他们还将为我创建一份客户报告,希望这个问题能很快得到解决。