以下に示すようなインターフェースがあります
public interface UserManager {
void insertUser(User user);
.......
今、私は以下のような実装クラスを持っています
@Service
public class UserManagerImpl implements UserManager {
@Autowired
private UserDAO userDAO;
私のコントローラーで
@Controller
public class ExampleGizmoController {
@Autowired
private UserManager userManager;
UserDAOImpl は
@Service
public class UserDAOImpl implements UserDAO {
@Autowired
private SessionFactory sessionFactory;
私のapplication-context.xml
<context:annotation-config/>
<context:component-scan base-package="com.foo" />
すべてのパッケージをスキャンします。warファイルとして展開しましたが、展開が行われると、userManagerプロパティがExampleGizmoControllerに自動配線されず、Tomcatに次のようなエラーが表示されます
Spring-MVC threw load() exception: org.springframework.beans.factory.NoSuchBeanDefinitionException:
No qualifying bean of type [com.foo.UserManager] found for dependency: expected at least 1 bean
which qualifies as autowire candidate for this dependency. Dependency annotations:
{@org.springframework.beans.factory.annotation.Autowired(required=true)}
アノテーション駆動型で、コンポーネントのスキャンがオンになっているにもかかわらず、自動配線が行われていないことがわかりました。自動配線を機能させるために他にすべきことはありますか?