注:この Java Plug-in ガイドでは、Java SE 6 update 10 リリースより前にリリースされた機能について説明します。最新情報については、Java Rich Internet Application の開発および配備を参照してください。

< 目次

JavaScript から Java への通信 (スクリプト作成)


このセクションでは、次のトピックについて説明します。

アプレットのスクリプトを記述する方法

この章では、Java Plug-in で必要となる HTML タグについて理解する必要があります。これらのタグの詳細は、Java Plug-in での OBJECT、EMBED、および APPLET タグの使用を参照してください。JavaScript について精通している必要もあります。

スクリプトの使用によって、HTML ページ内からアプレットのメソッドを呼び出すことが可能になります。メソッドの呼び出しのほかに、スクリプトの使用によって次が実行できます。

スクリプトを使用したメソッドの呼び出し

アプレットのメソッドを呼び出すときには、多くの場合、スクリプトを使用します。たとえば、クリックするとアニメーションを開始する HTML ボタンを挙げることができます。これは、HTML タグ、HTML ファイル内のスクリプト、およびアプレット内部での実際のコード記述を組み合わせることで実現できます。

アプレットの HTML ページに、次を含める必要があります。

これらのタグについて、次のセクションで説明します。

アプレットの指定

HTML ページの OBJECT タグで、ID パラメータを指定する必要があります。OBJECT タグには、classidwidthheight などのパラメータが含まれることを思い出してください。

ID パラメータは、アプレットのシンボリック名です。ID パラメータを使用してアプレットのシンボリック名が確立されると、以降は、スクリプト内でこの名前を利用してアプレットを参照できます。

たとえば、Fractal と呼ばれるアプレットがあるとしましょう。OBJECT タグに ID パラメータを追加して、ID をアプレットのシンボリック名に設定します。次のようにタグを設定できます。

ID="Fractal"

 

これで、スクリプト内で Fractal という名前を使用して、Fractal アプレットを参照できます。

この Fractal アプレットの例では、HTML ページは FORM タグで始まり、OBJECT タグが続き、全体では次のようになります。

<form name="Form1">
<OBJECT ID="Fractal" WIDTH=500 HEIGHT=120
CLASSID="CLSID:8AD9C840-044E-11d1-B3E9-00805F499D93"
<PARAM NAME="code" value="CLSFractal.class">
<PARAM NAME="codebase" value="1.0.2">
<PARAM NAME="level" value="5">
...
</OBJECT>

アクションとスクリプトの関連付け

HTML ページで定義されたコンポーネントの目的は、ユーザーによりトリガーされたアクションを呼び出すことです。これらのコンポーネントの定義には、INPUT タグを使用します。コンポーネントの TYPE (button など)、その NAME、および VALUE を指定してください。ボタンまたはほかのコンポーネントから目的のアクションを呼び出すために、次を指定するタグを追加する必要があります。

たとえば、HTML ページにより作成されたボタンをクリックすると、特定のアニメーションが開始される場合を考えてみましょう。HTML タグによりボタンが作成され、ボタンに名前と値 (ラベル) が与えられます。

これを実行するために、2 つのタグを追加します。1 つのタグは、特定のアクション (onclick など) の実行時に、対応するスクリプトメソッドが呼び出されることを示します。タグは、onClick="method name" という形式になります。メソッド名は、同じ HTML ページ内のスクリプトメソッドです。

したがって、HTML ページでは次のようになります。

<input type="button" name="Button1" value="Start"
onClick="startJSFractal" language="JavaScript">

この INPUT タグによりボタンが作成され、ボタン名が「Button1」、値 (ボタン上に表示されるラベル) が「Start」に指定されます。このタグにより、ユーザーがボタンをクリックすると呼び出されるスクリプトメソッド、およびスクリプトメソッドの言語も指定されます。この例では、スクリプトメソッドは startJSFractal、スクリプト言語は JavaScript です。ユーザーがこのボタンをクリックすると、HTML ページの (JavaScript スクリプトで記述された) スクリプトメソッド startVBFractal が呼び出されます。

Script タグおよびメソッド

onClick タグで指定するメソッド (関数) のために SCRIPT タグを含める必要があります。SCRIPT タグには、onClick タグで使用される名前と同じ名前を指定する必要があります。このタグには、スクリプト言語を指定するパラメータもあります。さらに重要なこととして、このスクリプトメソッドは Java アプレットメソッドを呼び出します。これは、ID タグで指定されたアプレット名、続いてアプレットコード内で実装された実際のメソッド名を使用することで、メソッドを識別します。

たとえば、この HTML ページの SCRIPT タグは次のようになります。

<SCRIPT language="JavaScript">
function startJSFractal() {
        document.Form1.Fractal.startFractal()
}
</SCRIPT>

この例の SCRIPT タグは、スクリプト言語が JavaScript であることを指定することで始まります。そのあとに JavaScript の function 文が続き、スクリプトメソッドの定義が始まります。function 文では、スクリプトメソッドのラベルまたは名前が startJSFractal として指定されています。この名前は、入力コンポーネントのアクションパラメータに指定されたメソッド名と一致している必要があります。

この例では、onClick パラメータおよび function 文の両方で、同じスクリプトメソッドが指定されています。スクリプトメソッド startJSFractal は、アプレットコード内で実装された実際のメソッド startFractal() を呼び出すだけです。メソッド名は、次のように、ドキュメントフォーム名、アプレット名 (OBJECT ID)、メソッド名自体で修飾されています。

document.Form1.Fractal.startFractal()

 


Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.