java - 如何使用 Spring 在不遵循 Java bean 规范的 setter 中注入(inject)对象?

标签 java spring inversion-of-control

我正在尝试使用 Springwx-xmlrpc一起。问题是 XmlRpcClient有一个setConfig()不遵循 Java Bean 规范的方法:setter 和 getter 不使用相同的类。所以当我有以下 context.xml 时,Spring 会提示:

<bean id="xmlRpcClient" class="org.apache.xmlrpc.client.XmlRpcClient">
    <property name="config">
        <bean class="org.apache.xmlrpc.client.XmlRpcClientConfigImpl">
            <property name="serverURL" value="http://example.net" />
        </bean>
    </property>
</bean>

它说:Bean 属性“config”不可写或具有无效的 setter 方法。 setter的参数类型是否匹配getter的返回类型?

有没有办法覆盖它?我知道我可以为这个 bean 写一个特定的工厂,但在我看来这不是我最后一次发现这种问题。我经常使用质量可疑的遗留代码......能够使用 Spring XML 配置将是一个很大的帮助!

最佳答案

为该类编写一个 FactoryBean 并让它调用正确的 setter。

关于java - 如何使用 Spring 在不遵循 Java bean 规范的 setter 中注入(inject)对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1215048/

相关文章:

java - 使用 Spring @SubscribeMapping 获取当前用户

java - jsp 未在请求的 uri 上呈现

java - 如何对使用 JNI 的库进行单元测试?

java - 如何删除等于 ('=' 之前的所有字符串文本)签署 Java

java - 单击像 onchildclick 这样的监听器,onitemlongclick 不能在除 GroupClickListener 之外的可扩展 ListView 中工作?

java - 在 nginx 中使用 WebSocket 时处理节点关闭

java - NoSuchMethodError : oracle. forms.handler.IHandler.getApplet()Ljava/applet/Applet

java - Spring : Download file from REST controller

asp.net-mvc-2 - 使用Unity IoC的MVC2- Controller 如何解析?

asp.net-mvc - 向 Controller 构造函数注入(inject)服务时出现不一致的可访问性参数类型错误