J'ai une super-classe générique de client GWT SuperClass<T>
. Il existe des sous-classes qui définissent explicitement le type générique, par exemple SubClass extends SuperClass<String>
etc. J'ai besoin d'obtenir le type de classe générique dans la super-classe, quelque chose comme T.class
(bien sûr, ça ne marche pas, mais j'espère que vous comprenez l'idée).
J'ai donc fini par créer une méthode Class<T> getClassType()
dans la super-classe. Dans les sous-classes, je le remplace par ce qui suit :
@Override
protected Class<String> getClassType(){
return String.class;
}
Bien que cela fonctionne, je n'aime pas cette approche car je dois définir explicitement le type plusieurs fois. Je cherche une solution de contournement pour pouvoir écrire moins de code dans les sous-classes.
Du côté serveur, je peux utiliser la réflexion, mais du côté client, elle n'est pas disponible.
J'ai vu quelques conseils sur l'utilisation des générateurs mais je ne vois pas vraiment comment cela peut aider ici.