Soc
秀和システム出版の「Javaネットワークプログラミング」
に載っているクライアント・サーバ型のチャットプログラムがあります。クライアント側のプログラムはアプレットを使用してあります。
1台PCで、サーバプログラムを起動して、クライアント側のアプレットを起動すると、うまく動作してくれて、チャットで文字のやり取りができます。
しかし、2台のPCで、1台はサーバプログラムを起動して接続待ちの状態にしておく。もう一台のPCでクライアント側のアプレットを起動して、接続を試みるとエラーが出てサーバに接続できないという問題が生じます。
エラーを見てみると、セキュリティーの問題で、接続できない、というような内容のエラーがでます。
接続にはSocketを使用しています。
アプレットから、他のサーバに接続したりすることは、許されていないんでしょうか?
このあたりを検索したら、ポリシーファイルを書き換えないといけないようなものを見つけました。
手書きで書きかえるような説明は見つけたのですが、
プログラムから書きかえるというか、接続の権限を与える方法はないのでしょうか?
ヤフーのチャットなども、確かアプレットで動いてるとおもうのですが(ActiveXかな?)、サーバと接続できてますよね。
java.netクラスにSocketPermissionクラスがあるのですが、これを使って接続することはできないのでしょうか?
SocketPermission sp;
sp = new SocketPermission("197.170.11.3" + ":" + "5555","accept,connect")
とするとリファレンスには書いてあるんですが、
この後、spをどのようにすればいいのかわかりません。
というかこの方法でできるのかもわかりません。
ご存知の方いらっしゃいましたら、アドバイスをいただけないでしょうか?
お礼
ありがとうございました。