Kann der einfache Name einer Klasse in einer Anmerkung verwendet werden? Mein Ziel ist es, Kompilierzeitsicherheit für Injektionen mit JNDI-Namen zu erhalten, die die Klasse enthalten.Java-Klassenname als Anmerkungsattribut
Beispiel (von dem, was ich tun möchte, dies bei der Kompilierung fehlschlägt):
@EJB(mappedName = "java:module/" + MyService.class.getSimpleName())
private MyService myService;
class.getSimpleName() scheint zur Laufzeit aufgelöst zu werden, was nicht mit Anmerkungen funktioniert. Kann ich es irgendwie als Konstante verstehen?
Wenn ich diese Klasse irgendwann umbenenne, würde ich gerne Zeit Sicherheit kompilieren. Eine Zeichenfolge müsste manuell geändert werden, während ein Verweis auf den Klassennamen entweder automatisch neu erstellt wird oder einen Kompilierungszeitgeberfehler verursacht. –