• 締切済み

AccessControlException

自宅PC(Windows7)でJavaアプレットを作成し、HTMLファイルから実行したところ、タイトルのエラーが表示されました。getImage()でPCのハードデスク内の画像ファイルを読み込み表示させる、簡単なプログラムです。インターネットで調べたところ「java appletはセキュリティ上の制限でユーザのローカルファイルにアクセスできません。」だそうです。 C:\Program Files (x86)\Java\jre7\lib\security\java.policy を以下の様に修正しましたが、駄目でした。 grant { permission java.security.AllPermission; }; その際、元のファイル名を.java.policy_save に変更して、同じフォルダに保存したつもりですが、みつかりません。(したがって、元に戻せない。) アプレットでPC内の画像ファイルを表示する方法、および、java.policy を元に戻す方法をご存知の方、ご教授下さい。ちなみに当方、趣味でJavaを勉強しており、ITの難しい事はわかりません。 宜しくお願いします。

みんなの回答

  • KSOH
  • ベストアンサー率93% (29/31)
回答No.1

PC内の画像ファイルとおっしゃっているのはアプレットのコードベースとは無関係の任意のファイルという意味だと思いますがアプレットはそういう目的には使わないと思います。 アプレットが対象とするリソースはアプレット自身が属しているサイトやjar内のリソースだけとするのが普通の考え方だと思います。ブラウザ上で動作するアプレットから任意のローカルリソースをアクセスできてしまうというのはセキュリティー上できてよいことではないと思いますので。 PCの任意ローカルリソースにアクセスしたいのであればアプレットを選択するのではなく単純にスタンドアローンアプリケーションにすべきだと思います。 ちなみに環境をこわしてしまったのならもう一度JREをインストールしてはいかがでしょうか。それが一番単純&確実だと思います。時間もそれほどかからないですし。

htagun654
質問者

お礼

ありがとうございました。 仕方ないですね。

関連するQ&A

専門家に質問してみよう