| 3.JSP のアクション |
| (1) アクションの構文と種類 |
構文1 <jsp: アクション名 属性=値 /> 構文2 <jsp: アクション名 属性=値 > ボディ </jsp: アクション名> |
| アクション名 | 内容 | useBean | JavaのObjectをインスタンス化します。すなわち、指定したクラスのオブジェクトを生成します | setProperty | Beanに値をセットします | getProperty | Beanのプロパティの値を表示します | include | 別のJSPのファイルを実行した結果を表示します | forward | リクエストを別のJSPやサーブレットに転送します | param | jsp:include、jsp:forward、jsp:paramsタグの中で使用され、キーと値の情報を提供します | plugin | JJavaプラグインをダウンロードしてアプレットやJavaBeansコンポーネントを実行するHTMLを生成します | params | jsp:pluginタグの中でアプレットやJavaBeansコンポーネントのパラメーターを指定するために使用します | fallback | jsp:pluginタグの中でプラグインが起動できなかった場合のコンテンツを指定します |
|---|
| (2) useBean |
useBean は指定したクラスのオブジェクトを生成します。これは「7. クラス・オブジェクト」で学んだことと同じで、「 Car mycar = new Car(); 」のように定義するのを、次のように置き換えているのと同じです。
<%JSP: useBean id="mycar" class="Car" />
| 属性 | 説明 | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| id | 指定されたscopeでのオブジェクトのインスタンスを識別するに使用する名前と、宣言してインスタンス化されるBeanのスクリプト変数名を指定します。 | ||||||||
| scope |
| ||||||||
| class | Beanの実装を定義する完全なクラス名を指定します。 | beanName | java.beans.Beanクラスのinstantiate()メソッドで認識されるBean名を指定します。 | type | 指定された場合、スクリプト変数の型を定義します。省略した場合は、class属性の値と同じになります。 | ||||
|
例1 : javahello.HelloWorldクラスのhelloworldというインスタンスを利用可能にする場合
<jsp:useBean id="helloworld" class="javahello.HelloWorld" /> 例2 : Beanを生成してなおかつmessageという名前のプロパティをBeanに設定する場合 <jsp:useBean id="helloworld" class="javahello.HelloWorld" > <jsp:setProperty name="helloworld" propety="message" value="Hello World"> </jsp:useBean> 例3 : javahello.HelloWorldクラスのhelloworldというインスタンスを利用可能にする場合 <jsp:useBean id="helloworld" type="javahello.HelloWorld" scope="session" /> | |||||||||
| (3) setProperty |
| 属性 | 説明 |
|---|---|
| name | Bean名を指定します |
| property | Beanのプロパティ名を指定します。 property="name" と具体的に名前を指定する方法と property="*" と一括で指定する方法があります |
| param | Beanのプロパティに設定する値を持つリクエストのパラメーター名を指定します |
| value | Beanのプロパティに割り当てる値を指定します |
|
例1 : msgという名前のリクエストのパラメーターの値ををjavahelloという名前のBeanのmessageという名前のプロパティにセットしています
<jsp:setProperty name="javahello" property="message" param="msg" /> 例2 : javahelloという名前のBeanのmessageというプロパティにvalueの値を設定しています <jsp:setProperty name="javahello" property="message" value="Hello World" /> | |
| (4) getProperty |
| 属性 | 説明 |
|---|---|
| name | 出力するプロパティを持つBean名を指定します |
| property | 出力するプロパティ名を指定します |
| 例 : helloworldという名前のBeanのmessageというプロパティの値を表示しています <jsp:getProperty name="javahello" property="message" /> | |
| (5) include |
| 属性 | 説明 |
|---|---|
| page | インクルードするファイルのパスを指定します |
| flush | バッファをフラッシュするかどうか指定します。規定値はtrueです |
|
例 : helloworld.htmlというファイルをインクルードしています
<jsp:include page="/helloworld.html" /> | |
| (6) forward |
| 属性 | 説明 |
|---|---|
| page | 転送するファイルのパスを指定します |
|
例1 : helloworld.htmlファイルに転送しています
<jsp:forward page="/helloworld.html" /> 例2 : helloworld.jspファイルをmsgという名前のパラメーターを伴って呼び出しています <jsp:forward page="/helloworld.jsp"/> <jsp:param name="msg" value="Hello World" /> </jsp:foward/> | |
| (7) plugin |
| 属性 | 説明 |
|---|---|
| type | コンポーネントのタイプを指定します | code | HTMLドキュメントを参照 | codebase | HTMLドキュメントを参照 | align | HTMLドキュメントを参照 | archive | HTMLドキュメントを参照 | height | HTMLドキュメントを参照 | hspace | HTMLドキュメントを参照 | jreversion | HTMLドキュメントを参照 | name | HTMLドキュメントを参照 | vspace | HTMLドキュメントを参照 | title | HTMLドキュメントを参照 | width | HTMLドキュメントを参照 | nspluginurl | ネットスケープナビゲーターでJREプラグインをダウンロードするURLを指定します | iepluginurl | インターネットエクスプローラーでJREプラグインをダウンロードするURLを指定します |
例 : HelloWorldAppletというアプレットを表示しています <jsp:plugin type=applet code="HelloWroldApplet.class"> <jsp:params> <jsp:param name="msg" value="Hello World"/> </jsp:params> <jsp:fallback> <p> unable to start plugin </p> </jsp:fallback> </jsp:plugin> | |