Sto utilizzando Spring per un modulo HTML. Uno dei campi è un enum
e quindi mi piacerebbe un elenco a discesa HTML (tag <option>
). Il mio nome enum è diverso dal valore toString()
. Per esempio:Utilizzare il tag di opzioni Spring per visualizzare il valore toString di enum
public enum Size {
SMALL("Small"), LARGE("Large"), VERY_LARGE("Very large");
private final String displayName;
private Size(String displayName) {
this.displayName = displayName;
}
public String toString() {
return displayName;
}
}
voglio all'utente di vedere il valore toString()
. Normalmente questo viene realizzato usando lo itemLabel
del tag di opzioni Spring.
<form:options items="${enumValues}" itemLabel="beanProperty" />
Ma toString()
non è una proprietà di fagioli perché non inizia con "get". C'è un modo per impostare itemLabel
per usare il valore di toString senza dover creare un getter?
Mai troppo tardi: http://xkcd.com/979/ –
Questo funzionava in 3.0, ma è stato interrotto dal 3.1, vedere https://jira.spring.io/browse/SPR-9214 e https://jira.spring.io/browse/SPR-10281 –