LoginSignup
0
0

More than 1 year has passed since last update.

SpringのNo qualifying bean of type。Xml or Javaソースへの追加

Posted at

SpringでNo qualifying bean of typeが発生した時のチェック方法です。

【エラー内容】
org.springframework.beans.factory.NoSuchBeanDefinitionException
No qualifying bean of type XXXX found for dependency
expected at least 1 bean which qualifies as autowire candidate for this dependency.

【コンテナ管理対象のアノテーション付与確認】
エラーの原因はSpringのコンテナ管理対象に該当のクラスがないよってエラー。なのでとりあえずアノテーションの付与がされているか疑う。
 ・@Component
 ・@Controller
 ・@Service
 ・@Repository

【コンテナ管理対象の対象パッケージか確認、javaソース】
アノテーションをつけている場合、次に読み込み対象になっているか確認します。コンテナ管理の対象にするアノテーションはどこのクラスに付けても良いわけじゃなくて、以下のアノテーションが付いているクラスの配下を再帰的に読み込むみたい。とりあえずこのアノテーションを探して読み込まれるパッケージか確認します。
 ・@SpringBootApplication
 ・@ComponentScan

【コンテナ管理対象の対象パッケージか確認、xmlファイル】
@SpringBootApplicationとか@ComponentScanとかないけどって人はxmlで定義されている可能性があります。component-scanで検索してみましょう。こんな感じで複数指定できます。
 <context:component-scan base-package="com.wawawa.hoge" />
 <context:component-scan base-package="com.hahaha.hoge" />
 <context:component-scan base-package="com.zehaha.hoge" />

【参考】
https://qiita.com/Terry3/items/6773eb570b82a6fdf7c6
https://qiita.com/NagaokaKenichi/items/058a7243bd2948de7553

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0