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
>   

Odpovedet emailem