我有一个基于XML配置的spring应用程序,其中一个bean需要com.typesafe.config.config参数作为构造函数参数。为此,我们有一个@Configuration类,其中一个方法(注释为@bean)返回一个com.typeSafe.config.config对象。
但spring启动时会抱怨“未能实例化[com.typesafe.config.config]:指定的类是接口”
如何通过xml将getconfig返回对象注入构造函数?
下面是为了摆脱应用程序逻辑而简化的代码段:
import com.typesafe.config.Config;
...
public class myFilter implements Filter {
public myFilter(Config aconfig) {
...
}
}
然后,我有一个JavaConfig类,如下所示,它创建了我需要注入myFilter构造函数中的bean:
@org.springframework.context.annotation.Configuration
public class TSConfiguration {
...
@Bean(name = "app-config")
public Config getConfig() {
...
}
}
<beans:bean class="TSConfiguration" />
<beans:bean id="app-config" class="com.typesafe.config.Config"/>
<beans:bean id="theFilter" class="myFilter">
<beans:constructor-arg index="0" ref="app-config"/>
</beans:bean>
15-Feb-2017 13:19:55.463 SEVERE [localhost-startStop-1] org.springframework.web.context.ContextLoader.initWebApplicationContext Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'app-config' defined in ServletContext resource [/WEB-INF/spring-security.xml]: Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.typesafe.config.Config]: Specified class is an interface
谢谢。
冒犯的台词是这样的:
既然您已经将其放在Spring.xml中,那么Spring将尝试从config
实例化一个名为app-config
的bean。但是config
是一个接口,因此Spring无法实例化它,因此出现错误。
使用Spring bean作为带有@cacheable注释的键
本文向大家介绍详解Spring中接口的bean是如何注入的,包括了详解Spring中接口的bean是如何注入的的使用技巧和注意事项,需要的朋友参考一下 Question: 这个问题困扰了我好久,一直疑问这个接口的bean是怎么注入进去的?因为只看到使用@Service注入了实现类serviceImpl,使用时怎么能获取的接口,而且还能调用到实现类的方法,难道这个接口是在什么时候自动注入了进去,且和
我有一个接口 创建 有两种方法,一种是异步的,一种是同步的。我想为这两个方法中的每一个提供一个接口实现。 对于异步方法,其实现可能如下所示: 但是我应该如何实现使用同步方法创建 的类 呢? 我可以实现方法以同步运行: 然后,编译器将警告不要在方法签名中使用 : 此异步方法缺少'await'运算符,将同步运行。考虑使用'await'运算符等待非阻塞API调用,或'await task.run(...
这是我的代码,我不知道为什么我的bean没有被注入,它在构造函数中总是空的 下面是我的配置类: 我的堆栈跟踪 启动ApplicationContext时出错。若要显示自动配置报告,请在启用“debug”的情况下重新运行应用程序。11:55:29.139[restartedMain]错误O.S.Boot.SpringApplication-应用程序启动失败org.SpringFramework.Be
谢谢 代码如下:
我创建了一个接口,以便可以在对话和片段之间进行通信。 目标:当用户从对话框中选择任何内容时,应将其显示在文本视图中。 在这个界面中,我创建了一个界面方法,在主活动中调用,并传递用户在对话框中选择的值。与用户选择的值一起,在我的片段中,我创建了一个方法,将文本视图设置为该值。然而,每当我调用该方法时,它总是返回null。 我对日志进行了大量测试,发现通过我的方法传递的值不是空的,一切似乎都按照我想要