Caros, tenho seguinte código no meu JSP:
<html:select property="filtroConsultaHelper.usuario" style="width:200" styleClass="lista1">
<html:option value="">Todos</html:option>
<html:optionsCollection property="filtroConsultaHelper.usuarios" />
</html:select>
A propriedade filtroConsultaHelper.usuarios é, na verdade, um List com objetos String dentro.
Porém tenho uma Exceção nesse código, pois o Struts reclama que não existe o método get para o atributo label. Eu só quero listar as Strings.
Alguém sabe como?
Valeu!
Resolví usando logic iterate:
<html:select property="filtroConsultaHelper.usuario" style="width:200" styleClass="lista1">
<html:option value="">Todos</html:option>
<logic:iterate name="consultaForm" property="filtroConsultaHelper.usuarios" id="usuario">
<option value="<bean:write name="usuario" />"><bean:write name="usuario" /></option>
</logic:iterate>
</html:select>
A tag optionsCollection espera receber uma coleção de beans que tenham os atributos value e label, ou você pode indicar quais atributos serão o value e o label através dos atributos name e value da tag, p. ex.:
<html:optionsCollection property="filtroConsultaHelper.usuarios" name="propriedade1" value="propriedade2" />
Você pode colocar a mesma propriedade em ambos os atributos também.
Nos meus códigos eu criei um bean simples com as propriedades value e label e sempre que eu tenho que montar um select eu populo ele com os valores desejados e mando p/ a página, acho que fica mais simples.