2016-05-21 31 views
0

私は単純なMaven + Springアプリケーションを開発中で、次のエラーが発生しています。私のクラスのうちの2つが葛藤していると言います。私は2番目のクラスを削除しましたが、私はまだ同じエラーが発生しています。私はサーバーを再起動しようとしましたが、それでも私のクラスが存在すると言います。誰かが助けることができますか?クラスを削除した後でもConflictingBeanDefinitionExceptionが発生する

Exception while loading the app : java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: org.springframework.beans.factory.BeanDefinitionStoreException: Failed to parse configuration class [com.nibm.config.RootConfig]; nested exception is org.springframework.context.annotation.ConflictingBeanDefinitionException: Annotation-specified bean name 'employeeController' for bean class [com.nibm.hibernate.controller.EmployeeController] conflicts with existing, non-compatible bean definition of same name and class [com.nibm.controller.EmployeeController] 
+0

2番目のクラスを削除しておく必要がありますが、それでもサーバーのデプロイメントディレクトリに横たわっています。手動でサーバーのデプロイディレクトリを削除してください。 – shankarsh15

+0

私はグラスフィッシュを使用しています。 web.xmlにはクラスはありません。 –

答えて

0

あなたは同じクラスの春の豆を持っているので、あなたは、例外を取得します。

この例外は org.springframework.context.annotation.ClassPathBeanDefinitionScanner#isCompatibleによって

を投げ、あなたのRootConfigで、さらにComponentScanによってタイプEmployeeControllerのBeanを作成するかのように見えるその実装を見ています。

問題を解決するには、RootConfigからBeanを削除するか、ComponentScanを変更してください。このBeanはそれによって見つかりません。

EmployeeControllerのコンストラクタでブレークポイントを設定できます。スタックから、Beanの作成方法と理由についての詳細情報を得ることができます。

関連する問題