java applet2015/02/14 18:33

以下のサイトにあるjavaを動かしデータを使いたいと言うネタを振られました。

https://staff.aist.go.jp/h.ogawa/NPstudio/

よく見ると、javaはjavaでもappletじゃないですか! 
セキュリティーがきつそうであまり触りたくない分野でもありますし、初期にちょっと触っただけで、それ以来全く触っておらず、今日今日まで生き延びていることに軽い感動を覚える同時に、ここまでがんばっている人がいることにも感動しました。

Linux、Mac、Windows8.1/XPの既存環境では動かず、VISTAで何とか動きました。VISTAでのお話です。

Java3D 版は動かず、
https://staff.aist.go.jp/h.ogawa/NPstudio/nps3/NPs_3D.html

PureJava 版は動きましたが、データはローカルに保存は出来ず、アプレットで開いたウインドウからもデータが取れません。
https://staff.aist.go.jp/h.ogawa/NPstudio/nps3/NPs_PJ.html

以下を参考にポリシーファイル(.java.policy)を編集しましたが、どうしてもデータが取れません。
https://staff.aist.go.jp/h.ogawa/GBstudio/AppletSecurity.html
http://www.milk-island.net/document/policy/

色々調べているうちにアプレットで開いたびっくりマークを消す方法を知り、試しにポリシーファイルに記述しても消えませんでした。
https://www.naregi.org/FAQ/No_008.html

もしかして、ポリシーファイルが有効になっていないのかも・・・

以下を参考に appletviewer で動かしたらデータが取れました!
http://docs.oracle.com/javase/jp/8/technotes/guides/security/PolicyFiles.html
https://staff.aist.go.jp/h.ogawa/GBstudio/macAppletViewer.html

実行コマンドは以下の通りです。コマンドプロンプトから実行しました。

appletviewer -J-Djava.security.policy=c:\users\user_name\.java.policy https://staff.aist.go.jp/h.ogawa/NPstudio/nps3/NPs_PJ.html

このVISTAでのjavaの環境は以下の通りです。JDK1.6 の appletviewer で動作しました。

jdk1.6.0_31 → JDK1.6をインストールしておりました。
jre1.8.0_31 → JRE1.8、自動更新プログラムで最新版にしたらこうなってました。

java.policy ファイルは結局3種類のエントリーを書いておりましたが、以下だけを記述していれば動くのではないでしょうか。

grant codeBase "https://staff.aist.go.jp/h.ogawa/NPstudio/-" {
permission java.awt.AWTPermission "accessClipboard";
};

VISTAでたまたま環境が合って動きましたが、ほかのマシンでも環境が合えば動くと思います。
Google
WWW このブログ内