在我将我们的 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 代码位于Code/Java元素中,它是从 XPage 调用的。
如何在 Domino 9.0.1 中授予 Java 权限?
更新:
如果我添加这个:
permission java.security.AllPermission;
然后它工作。因此它正在读取 java.policy 文件,但授予对日志记录的访问权限不再起作用,至少与 9.0.1 中的工作方式不同。授予AllPermission
绝对不是我正在寻找的解决方案。
在 8.5.3 中安装补丁包后,Lars Migula 似乎遇到了同样的问题。
顺便说一下,将您的更改放在 java.pol 文件而不是 java.policy 文件中。只需在与 java.policy 文件相同的目录中创建一个它。java.pol 不会被升级/修复包取代...
IBM 支持人员告诉我:
我添加了当前不起作用的链接,希望是因为 IBM 站点上的临时问题。我能够看到这么多:
他们也会为我创建一份客户报告,希望这会很快得到解决。