*Signed Scriptの使い方


 JavaScript1.2ではセキュリティなどの関係で、ディスプレイの表示領域外に新しいウインドウを開くことが出来ない、100x100ピクセル以下のサイズのウインドウを新しく開くことが出来ない、などスクリプトの一部に制約をかけています。
こういった制約を超えてスクリプトを実行したい時や、スクリプトの動作前にユーザーに認証をしてもらいたい時などに、Java Archive(JAR)を利用し、ユーザにそのスクリプトの開発元等の情報を提示し、ユーザーの承認を得てからスクリプトを実行させる、と言うことが出来、この認証手続きの用法を"Signed Script"と言います。

"Signed Script"は次の例のように、<SCRIPT>タグ内で"ARCHIVE"と"ID"を指定して行い、その内"ARCHIVE"はデジタル認証のソースであるJava Archive(JAR)ファイル名を、"ID"はJava Archive(JAR)ファイルからの著名と組み合わせて使う文字列を指定します。

-----------------------------------------------
<SCRIPT ARCHIVE="myArchive.jar" ID="1">
document.write("これは、Signed Scriptです。");
</SCRIPT>
------------------------------------------------

イベントハンドラと組み合わせて使用する場合は、イベントハンドラが含まれるタグ内には"ARCHIVE"を指定する必要はありませんが、次の例のようにイベントハンドラより前に"Signed Script"の指定を行っておく必要があります。
また、"Signed Script"では、"<A HREF="javascript:..."は使えません。

-----------------------------------------------
<SCRIPT ARCHIVE="myArchive.jar" ID="1">
...
</SCRIPT>
<FORM>
<INPUT TYPE="button" VALUE="クリックして!!" onClick="alert('これはSigned Scriptです!!')" ID="2">
</FORM>
-----------------------------------------------

"ARCHIVE"で指定する、Java Archive(JAR)ファイルは1種類しか使用出来ません、始めのHTMLファイル中にJava Archive(JAR)ファイルがあった場合、それ以降の"Signed Script"で指定されたスクリプトは、次の例のように"ID"を指定することにより、同じJava Archive(JAR)ファイルを使用するようにします。
この時、HTMLファイルが異なったプラットフォームのサーバー上にまたがって置かれているような場合(例えばWindowsとUNIX間)、問題が発生する可能性があります。

-----------------------------------------------
<SCRIPT ARCHIVE="myArchive.jar" ID="1">
document.write("これは、Signed Scriptです。");
</SCRIPT>
<SCRIPT ID="2">
document.write("これも、Signed Scriptです。");
document.write("<BR>");
document.write("myArchive.jarのデジタル認証を使用しています。");
</SCRIPT>
-----------------------------------------------

JARの詳しい情報は、下のサイトから得られます。
Using the JAR Packager
(http://developer.netscape.com/library/documentation/signedobj/usejar/index.html)


[コラムのページへ...]