我正在尝试将构造函数注入到下面的 bean 中,并且不断收到未找到默认构造函数的错误 - 由:java.lang.NoSuchMethodException: my.package.MyBean.<init>()
.
如果我在其中添加一个默认构造函数,错误就会消失,但显然这不是我想要做的。
我想了解为什么简单xml
映射与我拥有的构造函数不匹配。
我知道这个问题以前曾以某种形式被问过,但这些答案都对我的情况没有帮助。
TIA。
@Component
@Scope("singleton")
public class MyBean {
private Map<String, ResourceManager> rm;
public MyBean(final Map<String, ResourceManager> rm) {
this.rm = rm;
}
...
}
XML
<bean id="mybean" class="my.package.MyBean">
<constructor-arg>
<util:map>
<entry key="MANAGER1" value-ref="manager1" />
<entry key="MANAGER2" value-ref="manager2" />
</util:map>
</constructor-arg>
</bean>
<bean id="manager1".....</bean>
<bean id="manager2".....</bean>