Hay un menú desplegable de selección y quiero agregar el elemento "Sin selección" a la lista que debería darme 'nulo' cuando se envíe. Estoy usando el controlador derivado SimpleFormController.Spring MVC Etiquetas de formulario: ¿Existe una forma estándar de agregar el ítem "Sin selección"?
protected Map referenceData(HttpServletRequest httpServletRequest, Object o, Errors errors) throws Exception {
Map<String, Object> map = new HashMap<String, Object>();
map.put("countryList", Arrays.asList(Country.values()));
return map;
}
Y la parte JSPX es
<form:select path="country" items="${countryList}" title="country"/>
Una posible solución parece estar en la adición de un valor nulo al principio de la lista y luego usando un PropertyEditor personalizada para disply este 'nulo' como ' Sin selección'. ¿Existe una solución mejor?
@Edit: He resuelto esto con una anotación de validación personalizada que comprueba si el valor seleccionado es "Sin selección". ¿Hay una solución más estándar y más fácil?
Tenga cuidado con el uso de la entidad denominada ' ' en las páginas jspx (recientemente me ha provocado errores, indicando que la entidad no está definida, o algo así). Parece más seguro hacer referencia al espacio sin interrupciones por su código: ' ' – Michael
De esta forma, NoSelection publicará una cadena vacía, no 'nula'. value = $ {null} debería publicar null. – javabot