JavaScriptでアプレットを呼び出す
こないだのアプレットからJavaScriptの関数を呼び出す - 今日覚えたことの逆。JavaScriptからアプレットを呼び出す。
コード
まずhtmlが以下。
<object name="myapplet" codetype="application/java" classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" width="200" height="200"> <param name="code" value="Applet" /> <param name="archive" value="applet.jar" /> </object> <button type="button" onclick="myapplet.hoge('hello');">ボタン</button>
public class Applet extends JApplet { public void hoge(String message){ // 省略 } }
こんな感じ。objectタグに「name="myapplet"」と書いてあり、またアプレット内にpublicなhogeメソッドがあるので、
myapplet.hoge('hello');
で呼び出せる。
低い権限なので注意
ただ、こうして動き出したアプレットのコードは、非常に低い権限で動くので注意が必要。
例えばローカルディスクにアクセスしたいと思っても、それは無理。たとえjarに署名したとしても、JavaScriptから呼び出されたときだけは無理。そういう仕様になってる。