0

Java RMI を使用してクライアント/サーバー プログラムを作成していますが、次のエラーが発生します。

java.security.AccessControlException: アクセスが拒否されました ("java.net.SocketPermission" "127.0.0.1:1099" "接続、解決")

私のコードは次のようになります。

package xxx;

import java.rmi.Naming;
import java.rmi.RemoteException;

public class Server extends Engine implements RemoteInterface {

public Server() {
    super();

    if(System.getSecurityManager() == null) {
        System.setSecurityManager(new SecurityManager());
    }

    try {
        Naming.rebind("Test", this);

        System.out.println("Bound in registry!");
    } catch(Exception ex) {
        System.out.println(ex);
    }
}

@Override
public void test() throws RemoteException {
    System.out.println("test() invoked");
}
}

どうしたの?

4

2 に答える 2

1

レジストリを追加し、Serializable を実装するのを忘れていました。問題が解決しました。SecurityManager も削除しました。

于 2012-07-15T13:03:45.583 に答える
0

SecurityManagerをインストールしましたが、このコードを実行するための十分な権限を自分に付与していません。

なぜSecurityManagerが必要だと思いますか?あなたがアップロードされたコードを実行することを計画していない限り、私はそれを取り除くでしょう

于 2012-07-15T10:25:53.057 に答える