Grails enlazar parámetros de solicitud a enumeración
La aplicación My Grails tiene una gran cantidad de enumeraciones que se ven así:
public enum Rating {
BEST("be"), GOOD("go"), AVERAGE("av"), BAD("ba"), WORST("wo")
final String id
private RateType(String id) {
this.id = id
}
static public RateType getEnumFromId(String value) {
values().find {it.id == value }
}
}
Si tengo un objeto de comando como este:
class MyCommand {
Rating rating
}
Me gustaría (por ejemplo) convertir automáticamente un parámetro de solicitud con valor "wo" a Rating.WORST.
Se describe el procedimiento para definir convertidores personalizados.aquí (en el contexto de convertir cadenas a fechas). Aunque este procedimiento funciona bien, no quiero tener que crear una clase que implemente PropertyEditorSupport para cada una de mis enumeraciones. ¿Hay una mejor alternativa?