6
アノテーション内でクラスの単純な名前を使用することはできますか?私の目的は、クラスを含むJNDI名を使用して注入のコンパイル時の安全性を得ることです。 (私が何をしたいのか、これはコンパイル時に失敗したの)アノテーション属性としてのJavaクラス名
例:
@EJB(mappedName = "java:module/" + MyService.class.getSimpleName())
private MyService myService;
class.getSimpleNameは()の注釈では動作しない、実行時に解決しているようです。何とか定数として取得できますか?
私はある時点でこのクラスの名前を変更すると、コンパイル時の安全を願っています。文字列は手動で変更する必要がありますが、クラス名への参照は自動的にリファクタリングされるか、コンパイルタイマーエラーが発生します。 –