Je veux utiliser une énumération pour représenter certaines valeurs de sélection. Dans le dossier /src/groovy
, sous le package com.test
, j'ai cette Enum:Comment utiliser Enum dans grails (pas dans la classe de domaine)
package com.test
public enum TabSelectorEnum {
A(1), B(2)
private final int value
public int value() {return value}
}
Maintenant, je suis en train d'y accéder à partir du contrôleur comme:
TabSelectorEnum.B.value()
mais il renvoie une exception:
Caused by: org.codehaus.groovy.runtime.InvokerInvocationException: java.lang.NoClassDefFoundError: Could not initialize class com.test.TabSelectorEnum
Qu'est-ce que je fais mal?
Mise à jour: Après avoir nettoyé et recompilé, le code d'erreur changé:
groovy.lang.GroovyRuntimeException: Could not find matching constructor for: com.test.TabSelectorEnum(java.lang.String, java.lang.Integer, java.lang.Integer)
Il semble qu'il y ait quelque chose de mal dans la façon dont l'accès à la valeur de l'Enum, mais je ne le font pas savoir quoi.