列挙型クラスのすべての項目をリストするselectOneMenuコンポーネントを含むJSFページを表示しています。このEnumクラスは都市に対応します。
問題は、「すべての都市」という1つのフィールドを表示したいということです。これは*List<City>*
、「すべての都市」の値を追加できないため、文字列になるためです。
したがって、 SelectOneMenuに表示される実際のアイテムは次のとおりです。
ニューヨーク、サンフランシスコ、ローマ、パリ
そして、望ましい出力は次のようになります。
すべての都市、ニューヨーク、サンフランシスコ、ローマパリ
コード例:
列挙型:
public enum City {
ALL, NYC, SANFRANCISCO,...;
}
JSFページコードスニペット:
<h:selectOneMenu id="citiesmenu" value="#{enumBeanStatus.selectedCity}">
<f:selectItems value="#{enumBean.cities}"/>
</h:selectOneMenu>