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 を使用して Web アプリケーションを Tomcat に再デプロイしようとすると AccessControlException が発生する

ファイルを編集してsecurity.policy次の行を追加することをお勧めします。

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

次に、VM コマンド ライン引数に次を追加します。

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