rmi接続を確立しようとしています。私は多くのセキュリティ問題に遭遇しましたが、これらすべてを乗り越える方法を見つけることができませんでした. jar ファイルを次のように実行します。
java -Djava.security.policy=java.security.AllPermission -jar "myjarfile"
これを作成するために使用したコードは次のとおりです。
public class server
{
public static void main(String args[])throws Exception
{
if (System.getSecurityManager() == null)
System.setSecurityManager ( new RMISecurityManager() {
public void checkConnect (String host, int port) {}
public void checkConnect (String host, int port, Object context) {}
});
try
{
sampleserverimpl server = new sampleserverimpl();
System.out.println("SERVER IS WAITING");
LocateRegistry.createRegistry(2020);
//Runtime.getRuntime().exec("rmiregistry 2020");
Naming.rebind("//localhost:2020/SERVER", server);
}
catch(Exception e)
{
System.out.println(e);
}
}
};
私が受け取っているエラートレースは次のとおりです。
Exception in thread "RMI TCP Connection(idle)" java.security.AccessControlExcept
ion: access denied (java.net.SocketPermission 127.0.0.1:31199 accept,resolve)jav
a.rmi.UnmarshalException: Error unmarshaling return header; nested exception is:
java.io.EOFException
これを回避するためにさまざまな方法を試しましたが、ここで問題を確認できる人はいますか?
ありがとう