Zdravím Vás!
Ve stripes jsme to řešili podobným způsobem:
v action beanu máme metodu
public List<MyStatusEnum> getPosibleMyStatusEnums(){
Samozřejmě, že k tomu musíte mít konvertor
public class MyStatusEnumConverter implements TypeConverter<MyStatusEnum>{
Ve stripes to pak vypadá následovně:
<stripes:select name="myNames" multiple="true" size="3">
<stripes:options-collection
collection="${actionBean.posibleMyStatusEnums}" label="label"
value="status" />
</stripes:select>
v našem výčtovém typu máme metody
getLabel() a getStatus().
Fafi
Ing. Jan Novotný napsal(a):
> No já na to narazil, kdy jsem se ve Stripes snažil použít tag
>
> <stripes:options-collection/>
>
> který k přistupuje k datům objektů přes gettery reflexí. Zkusil jsem
> to obejít a napsal jsem si iteraci sám přes JSP EL, takto:
>
> <stripes:select name="filter.status">
> <stripes:option value=""></stripes:option>
> <c:forEach items="${actionBean.queryStatusList}" var="status">
> <stripes:option
> value="${status.value}">${status.label}</stripes:option>
>
> </c:forEach>
> </stripes:select>
>
> a kupodivu to funguje. Přitom bych si myslel, že JSP EL bude dělat
> úplně to samé a na stejný getter taky půjde přes reflexi. Tak si
> nedokážu vysvětlit proč to v JSP EL funguje a Stripsům přes reflexi
> ne.
>
> Tzn. vyřešení toho problému mě ani tak nepálí (mám dobrý workaround),
> ale spíš jen zajímá - jak je to možné?!
>
> Honza
>