我有一个奇怪的行为自动装配时@Autowire奇怪的问题
我有一个类似这样的代码之一,它的工作原理
@Controller
public class Class1 {
@Autowired
private Class2 object2;
...
}
@Service
@Transactional
public class Class2{
...
}
的问题是,我需要的是Class2中实现了一个接口,这样我只改变了Class2中,所以它现在想:
@Controller
public class Class1 {
@Autowired
private Class2 object2;
...
}
@Service
@Transactional
public class Class2 implements IServiceReference<Class3, Long>{
...
}
public interface IServiceReference<T, PK extends Serializable> {
public T reference(PK id);
}
与此代码我得到一个org.springframework.beans.factory.NoSuchBeanDefinitionException: No matching bean of type for Class2
。 看来@Transitional
注释与界面不兼容,因为如果我删除@Transitional
注释或者问题消失并注入bean(虽然我需要在这个类中都有)。如果我将注释@Transitional
放在方法中而不是在类中,也会发生这种情况。
如果有帮助,我使用Spring 3.0.2。
与事务性方法的接口不兼容吗? 可能是Spring bug吗?
基本上我说的同样的东西:) – 2010-04-26 12:49:15