ここでは、発生したエラーの内容と対応方法について、紹介します。
開発環境
・Windows 10 64bit・Eclipse 2018-12(Eclipse 4.10)
・Java 8
・Spring Boot 2.1.3(Spring Tool Suite 4)
発生したエラー情報
エラー情報 - Eclipseのコンソール出力にて確認
EclipseでSpring Bootプロジェクトを右クリックして、「実行」>「Spring Boot App」を選択して、Spring Bootアプリケーションを実行すると、Eclipseのコンソールに以下のエラーが出力されました。・エラー情報
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'requestMappingHandlerMapping' defined in class path resource [org/springframework/boot/autoconfigure/web/servlet/WebMvcAutoConfiguration$EnableWebMvcConfiguration.class]: Invocation of init method failed; nested exception is java.lang.IllegalStateException: Ambiguous mapping. Cannot map 'foodController' method public java.lang.String com.example.demo.food.FoodController.index() to {GET [/, /index]}: There is already 'customerController' bean method public java.lang.String com.example.demo.customer.CustomerController.index() mapped.
原因
複数のクラスで、以下のメソッドが重複して、定義されていました。(自分で作成したFoodControllerクラスとCustomerControllerクラスにindexメソッドが定義されていました。)
・クラス
com.example.demo.customer.CustomerController.class com.example.demo.food.FoodController.class
・メソッド
@GetMapping({"/", "/index"}) public String index() { return "index"; }
対応方法
FoodControllerクラスとCustomerControllerクラスからindexメソッドを削除して、1つ上のパッケージ(com.example.demo)にコントローラを作成して、そこでindexメソッドを定義しました。
スポンサーリンク
0 件のコメント :
コメントを投稿