web-dev-qa-db-ja.com

Struts 1.2で<bean:write>タグを使用する方法は?

使い方 <bean:write> St​​ruts1.2のタグ。

name属性では、どの値を使用する必要がありますか? Beanの名前はあなたのプロパティ名ですか?

7
sachin

Javadoc for _<bean:write>_

property(指定されている場合)で指定された値を取得するためにプロパティにアクセスするBeanの属性名を指定します。プロパティが指定されていない場合、このBean自体の値がレンダリングされます。

本質的に、JavaBean(ゲッターとセッターを含む)がある場合、

_Person person = new Person;
request.setAttribute("person", person);
_

_<bean:write name="person" property="age" />_を設定することにより、StrutsにpersonスコープからPageContextオブジェクトfirstを最初に見つけるように指示します。見つからない場合は、request、次にsession、次にapplicationスコープ。

次に、_property="age"_属性(_<bean:write />_タグから)は、(BeanにPersonというインスタンス変数があるかどうかに関係なく)ageオブジェクトからgetterメソッドgetAge()を呼び出します。

お役に立てれば。

30
Buhake Sindi

person.getAge()を表示するには、次を使用します

<bean:write name="person" property="age" />
3
Vlad

「name」属性は、Beanの名前を指定する必要があります。たとえば、ActionFormからプロパティを出力しようとしている場合は、name属性をActionFormの名前に設定し、property属性を書き込みたいActionFormのプロパティに設定する必要があります。したがって、この場合は次のようにします。

<bean:write name="productInfo" property="summary" />

たとえば、タグを使用して非ActionForm Beanを宣言すると、name属性はその定義済みBeanの名前に設定されます。

<bean:define id="displayText" value="Text to Display" />
<bean:write name="displayText" />

この場合、property属性が欠落していることに注意してください。この場合、Bean自体のtostring値が表示されます。

0
Cameron