2014年4月にCDI仕様のマイナーアップデート CDI1.1 -> CDI1.2 *1が行われ、@java.inject.Singletonが付与されたクラスはデフォルトではインジェクションできるBean対象から外れました。 後方互換性のない変更であるため、以下にまとめます。 default bean-discovery-modeの見直し CDI1.1 (Java EE7) から導入されたbean-discovery-modeについての詳細は過去の記事にまとめていますが、簡単にいうと、以下の場合にどのクラスをインジェクション対象としてスキャンするかの仕様が見直されました。 warやearにbeans.xmlを含めなかった場合 またはbeans.xmlにbean-discovery-mode="annotated"を明示していた場合 @java.inject.Singletonがスキャン対