!!!技術的雑談-RMIのSecurity設定 !!環境 JDK1.4.2_08、JKD1.5.0_03 !!現象 RMIで「java.lang.SecurityException」が出る! でも、まだDebugだからとりあえず動くかどうか確認したい。 !!対処 以下の手順を踏む事で一応Exceptionは出なくなります。 1.policyファイルを用意する 全部「許可」だったら以下のように記述する grant { permission java.security.AllPermission;}; これを「my.policy」みたいな名前をつけてテキストファイルとして保存しておく。 2.javaコマンドオプション Server/Client両方がApplicationの場合、以下のようなオプション設定を加えます。 java -Djava.rmi.server.codebase=file:///c:/〜(共有されるClassが置かれたディレクトリ)/ -Djava.security.manager (←これを入れておくとSystem.setSecurityManager(new SecurityManager()); を入れないで済む) -Djava.security.policy=file://C:/〜(先程のpolicyファイルの場所) test.AP_ClientLogTest(←実行するServer/Client Application) 上記設定はClient/Server両方に必要なようです。注意しましょう。 また、共有Objectの実装Classに「rmic」コマンドを実行して共有可能なようにしておくのも忘れないようにしましょう。 !!履歴 2005/7/14 -- 初版 [[技術的雑談]]へ戻る !!突っ込み {{comment}} [[技術的雑談]]へ戻る {{trackback}} [[技術的雑談]]へ戻る