2

我已经在我的服务器上安装了 MongoDB,并编写了一个非常小的 Java 程序来连接它:

Mongo mongo = new Mongo("localhost");
db = mongo.getDB("testdb"); // testdb doesn't exist, will be created

当我运行程序时,我得到这个错误:

WARNING: jmx registration error: java.security.AccessControlException:
    access denied (javax.management.MBeanTrustPermission register) continuing...

什么可能导致此错误?我正在使用 MongoDB 提供的 MongoDB 数据库驱动程序 2.7.3。自安装以来,我已经更改了 MongoDB 的配置文件。

4

1 回答 1

2

在我看来,您的安全策略不允许 MongoDB 注册其 JMX 方法。看到这个问题:尝试使用 Netbeans 将 webapp 重新部署到 Tomcat 时出现 AccessControlException

它建议编辑您的security.policy文件以添加以下行:

grant { permission javax.management.MBeanTrustPermission "register"; };

然后将以下内容添加到您的 VM 命令行参数中:

-Djava.security.policy= <path to security.policy>
于 2012-05-23T20:10:18.847 回答