S2Strutsで提供しているタグライブラリについて説明します。
org.seasar.struts.taglib.html.ButtonTag(タグ名:button)
http://struts.apache.org//struts-doc-1.2.8/userGuide/struts-html.html#button
に加えて、追加になった属性は、以下です。
属性名 | 必須 | rtexprvalue | 説明 |
type |
× |
false |
以下の値で、ボタンの種別を指定します。
"button":通常のボタン。
"submit":実行ボタン。
"reset":リセットボタン。
HTML4.01 では submit が規定値と定義されていますが、 IE6.0 や Netscape の実装では規定値は button のようです。 |
indexId |
× |
false |
logic:iterateタグのid属性などで指定した変数名を指定します。
buttonのvalue属性の値に、その変数の値が設定されます。
(変数値が、Integerの32である場合の変換されたhtmlの例:<button ... value="32" ...>) |
org.seasar.struts.taglib.html.SubmitTag(タグ名:submit)
http://struts.apache.org//struts-doc-1.2.8/userGuide/struts-html.html#submit
に加えて、追加になった属性は、以下です。
属性名 | 必須 | rtexprvalue | 説明 |
action |
× |
- |
action="#{component.method}"と記述することによって、サブミット時に実行するコンポーネントとメソッドを指定する事が可能です。
コンポーネントは、この属性で指定した名前でS2Containerに登録されている必要があります。
indexId属性を指定しない場合は、引数なしとして指定されたメソッドを呼び出します。
例えば、<s2struts:submit action="{hogeAction.create}">
と記述して表示されたボタンを押した場合、
String create()
メソッドが呼び出されます
indexId属性を指定した場合は、int型のindexを引数とする指定されたメソッドを呼び出します。
例えば、<s2struts:submit action="{hogeAction.create}" indexId="index">
と記述して表示されたボタンを押した場合、
String create(int index)
メソッドが呼び出されます。
S2Struts1.3.0-RC3以降では、指定したコンポーネントに対応するActionMappingが使用されます。
ActionMappingは、デフォルトではActionPathNamingRuleコンポーネントから求められるpathをキーにして決定されます。
明示的に指定する場合は呼び出すメソッドにBINDING_METHODアノテーションを指定してください。
|
indexId |
× |
false |
logic:iterateタグのid属性などで指定した変数名を指定します。
propertyName[変数値]の様に変換されます。
(変数値が、Integerの32である場合の変換されたhtmlの例:<... foo[32]="bar"...>) |
cancel |
× |
false |
trueを指定した場合、フォームに関連付けされたActionFormのvalidateを無視し、
アクションを呼び出します。 |
org.seasar.struts.taglib.html.CancelTag(タグ名:cancel)
http://struts.apache.org//struts-doc-1.2.8/userGuide/struts-html.html#cancel
を拡張し、Requestパラメーターを利用しないでCancel機能を実現したタグです。
追加した属性はありません。
org.seasar.struts.taglib.html.ImageTag(タグ名:image)
http://struts.apache.org//struts-doc-1.2.8/userGuide/struts-html.html#image
に加えて、追加になった属性は、以下です。
属性名 | 必須 | rtexprvalue | 説明 |
action |
× |
- |
action="#{component.method}"と記述することによって、サブミット時に実行するコンポーネントとメソッドを指定する事が可能です。
コンポーネントは、この属性で指定した名前でS2Containerに登録されている必要があります。
S2Struts1.3.0-RC3以降では、指定したコンポーネントに対応するActionMappingが使用されます。
ActionMappingは、デフォルトではActionPathNamingRuleコンポーネントから求められるpathをキーにして決定されます。
明示的に指定する場合は呼び出すメソッドにBINDING_METHODアノテーションを指定してください。
|
cancel |
× |
false |
trueを指定した場合、フォームに関連付けされたActionFormのvalidateを無視し、
アクションを呼び出します。 |
org.seasar.struts.taglib.html.CheckboxTag(タグ名:checkbox)
http://struts.apache.org//struts-doc-1.2.8/userGuide/struts-html.html#checkbox
を拡張し、チェックがない場合でもフォームに関連付けされたActionFormのプロパティにfalseを設定します。
追加した属性はありません。
org.seasar.struts.taglib.html.PageTag(タグ名:page)
このタグをJSPに記述することによって、struts-configのinput属性の無設定化(エラー時に自画面を再表示)することが可能になります。
formタグの中に記述する必要があります。複数のformが存在する場合には、それぞれに記述が必要です。
属性名 | 必須 | rtexprvalue | 説明 |
- |
- |
- |
属性はありません。 |
org.seasar.struts.taglib.html.LinkTag(タグ名:link)
TODO
org.seasar.struts.taglib.InitializeTag(タグ名:init)
このタグを使用すると画面の初期化処理を行う事が可能です。action属性に記述したMethodBindingを、JSPを表示する時に実行します。
属性名 | 必須 | rtexprvalue | 説明 |
action |
× |
- |
action="#{component.method}"と記述することによって、JSPを表示する時に実行するコンポーネントとメソッドを指定する事が可能です。
コンポーネントは、この属性で指定した名前でS2Containerに登録されている必要があります。 |
S2Struts1.3.0-RC3以降で利用できます。
BINDING_METHODアノテーションは、submitタグやimageタグで指定されたactionに対するActionMappingを明示的に指定するために使用します。
定数アノテーション
次の形式でstaticフィールドとしてActionに定義します。
public static final String メソッド名_BINDING_METHOD = "path=ActionMappingのpath"
タグとJavaの定義例は次の通りです。
<s2struts:submit action="#{modAction.mod}" property="submit" value="サブミット"/>
public static final String mod_BINDING_METHOD = "path=/hoge";
public String mod() {
...
}
Tigerアノテーション
次の形式でActionメソッドにアノテーションを指定します。
@BindingMethod(path = "ActionMappingのパス")
タグとJavaの定義例は次の通りです。
<s2struts:submit action="#{modAction.mod}" property="submit" value="サブミット"/>
@BindingMethod(path = "/hoge")
public String mod() {
...
}
|