我能够部署一个RESTEasy应用程序,可以很好地使用Weld(这意味着我的CDI可以工作),但我在集成测试中遇到了一些麻烦。我得到这个错误:
org.jboss.weld.exceptions.DeploymentException:
WELD-001408: Unsatisfied dependencies for type SomeService with qualifiers @Default
在测试时:
@RunWith(WeldJUnit4Runner.class)
public class SomeServiceIT {
@Inject
private SomeService service;
@Test
public void test() {
System.out.println(service);
}
}
日志中的最后一条消息是
DEBUG::WELD-000100: Weld initialized. Validating beans
<beans xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/beans_1_1.xsd"
version="1.1" bean-discovery-mode="all">
</beans>
public class WeldJUnit4Runner extends BlockJUnit4ClassRunner {
private final Weld weld;
private final WeldContainer container;
public WeldJUnit4Runner(Class<?> klass) throws InitializationError {
super(klass);
this.weld = new Weld();
this.container = weld.initialize();
}
@Override
protected Object createTest() throws Exception {
return container.instance().select(getTestClass().getJavaClass()).get();
}
}
因此,除了现有的src/main/webapp/web-inf/beans.xml
和src/test/resources/meta-inf/beans.xml
之外,我还可以通过创建src/main/resources/meta-inf/beans.xml
来使它工作,这意味着现在我在同一个项目中有了三倍于原来相同的文件,我觉得这很愚蠢,但我想这就是焊接界的情况...
谢谢大家抽出时间。
编辑:
实际上,我只能使用src/main/resources/meta-inf/beans.xml
部署应用程序(我删除了src/main/webapp/web-inf/beans.xml
)
org.springframework.beans.factory.unsatisfiedDependencyException:创建名为“com.sonos.arcor.service.AddressServiceTest”的bean时出错:通过字段“service”表示的未满足的依赖项;嵌套异常为org.springframework.beans.factory.noSuchBeanDefin
java.lang.noClassDefoundError:scala/collection/gentraversableonce$class at kafka.utils.pool.(pool.scala:28)~[kafka2.10-0.8.1.1.jar:na] at kafka.consumer.FetchRequestandResponseStatsRegistry$.~[kafka2.
在SecurityServiceImpl中注入此RoleRepo时,我面临此错误。 我的spring上下文文件 我的角色类
我看了所有类似的问题,没有一个能帮助我,所以事情是这样的: 为了在不同的程序中重现错误,我创建了一个简单的Spring Boot程序。在尝试运行它时,我遇到了一个我无法解决的非常奇怪的错误: 相关类别: 通用域名格式。实例演示。演示应用程序。爪哇: com.example.demo.configs.RootConfiguration.java 通用域名格式。实例演示。控制器。测试控制器。爪哇: 我
我正在开发一个Spring Boot应用程序,其中我声明了一个组件,如下所示: 我想让它成为一个单例bean(因为默认情况下组件是单例的,所以我没有添加显式声明)。 我在类中添加了一个私有构造函数。 我有一个定义bean的配置类。 我还有应用程序和控制器类。 我的单元测试用例如下所示: 在上面的代码中,如果我运行单元测试,我将得到以下异常。 通过字段“repositoryMaster”表示的未满足
我从Spring MVC开始,阅读了《Spring in Action》一书,我正在使用Spitter应用程序进行第5章的练习,但我遇到了以下错误: org.springframework.beans.factory.[C:\xampp\htdocs.metadata.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\spitter\WEB-I