我有一个看起来像这样的课程:
@Service("myService")
public class MyServiceImpl {
@Autowired
private SimpMessagingTemplate simpMessagingTemplate;
我还有一个看起来像这样的测试类:
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(classes = {
MyServiceImpl.class})
...
我得到了这个例外:
Injection of autowired dependencies failed; nested exception is
org.springframework.beans.factory.BeanCreationException: Could not autowire
field: private org.springframework.messaging.simp.SimpMessagingTemplate
myPackage.MyServiceImpl.simpMessagingTemplate; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [org.springframework.messaging.simp.SimpMessagingTemplate] 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)}
有人知道我能做些什么才能让它工作,SimpMessagingTemplate没有默认的构造函数。
答案 0 :(得分:1)
SimpMessagingTemplate
似乎没有默认构造函数,或者没有使用@Component
(或@Service
或@Component
的其他子类注释);或两者。
请检查默认构造函数是否可用,并将该类配置为Spring bean。
答案 1 :(得分:-1)
它与缺少构造函数无关,但是Spring无法找到适当的bean来注入你的测试类,
我看到的两个选项来解决它