如果您的Bean上有接受List或Map型態(tài)的屬性,則您也可以在組態(tài)檔案中直接設(shè)定這些屬性的值,一個例子如下:
....
<managed-bean>
<managed-bean-name>someBean</managed-bean-name>
<managed-bean-class>
onlyfun.caterpillar.SomeBean
</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
<managed-property>
<property-name>someProperty</property-name>
<list-entries>
<value-class>java.lang.Integer</value-class>
<value>1</value>
<value>2</value>
<value>3</value>
</list-entries>
</managed-property>
</managed-bean>
....
這是一個設(shè)定接受List型態(tài)的屬性,我們使用<list-entries>標籤指定將設(shè)定一個List物件,其中<value-class>指定將存入List的型態(tài),而<value>指定其值,如果是基本型態(tài),則會嘗試使用指定的 <value-class>來作Wrapper類別。
設(shè)定Map的話,則是使用<map-entries>標籤,例如:
....
<managed-bean>
<managed-bean-name>someBean</managed-bean-name>
<managed-bean-class>
onlyfun.caterpillar.SomeBean
</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
<managed-property>
<property-name>someProperty</property-name>
<map-entries>
<value-class>java.lang.Integer</value-class>
<map-entry>
<key>someKey1</key>
<value>100</value>
</map-entry>
<map-entry>
<key>someKey2</key>
<value>200</value>
</map-entry>
</map-entries>
</managed-property>
</managed-bean>
....
由於Map物件是以key-value對的方式來存入,所以我們在每一個<map-entry>中使用<key>與< value>標籤來分別指定。
您也可以直接像設(shè)定Bean一樣,設(shè)定一個List或Map物件,例如在JSF附的範例中,有這樣的設(shè)定:
....
<managed-bean>
<description>
Special expense item types
</description>
<managed-bean-name>specialTypes</managed-bean-name>
<managed-bean-class>
java.util.TreeMap
</managed-bean-class>
<managed-bean-scope>application</managed-bean-scope>
<map-entries>
<value-class>java.lang.Integer</value-class>
<map-entry>
<key>Presentation Material</key>
<value>100</value>
</map-entry>
<map-entry>
<key>Software</key>
<value>101</value>
</map-entry>
<map-entry>
<key>Balloons</key>
<value>102</value>
</map-entry>
</map-entries>
</managed-bean>
....
而範例中另一個設(shè)定List的例子如下:
....
<managed-bean>
<managed-bean-name>statusStrings</managed-bean-name>
<managed-bean-class>
java.util.ArrayList
</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
<list-entries>
<null-value/>
<value>Open</value>
<value>Submitted</value>
<value>Accepted</value>
<value>Rejected</value>
</list-entries>
</managed-bean>
....
posted on 2008-05-26 12:39
周行 閱讀(499)
評論(0) 編輯 收藏 所屬分類:
JSF