java – 使用MethodInvokingFactoryBean设置非常规bean

前端之家收集整理的这篇文章主要介绍了java – 使用MethodInvokingFactoryBean设置非常规bean前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我正在尝试设置HostConfiguration bean.它拥有的一个属性叫做proxyHost.但是,apache HostConfiguration类不遵循java bean约定. proxyHost的setter接受类型ProxyHost的参数,而getter返回String.

我在applicationContext.xml中有以下代码段.

    

当我尝试为应用程序加载applicationContext时,我得到以下错误,因为HostConfigurationClass没有返回ProxyHost的getProxyHost或带有字符串的setter: –

org.springframework.beans.NotWritablePropertyExcep tion: Invalid property ‘proxyHost’ of bean class [org.apache.commons.httpclient.HostConfiguration]: Bean property ‘proxyHost’ is not writable or has an invalid setter method: Does the parameter type of the setter match the return type of the getter?

在springource论坛上搜索时,我遇到了thread,建议使用MethodInvokingFactoryBean解决这个问题.

我不确定使用MethodInvokingfactorybean会有什么帮助,因为我需要从getProxyHost()方法返回类型的ProxyHost来解决这个问题,对吧?而且我不确定如何在这种情况下使用它.我不清楚MethodInvokingfactorybean的内部.因此,如果有人可以请在上面的上下文中给我一个例子,如何使用MethodInvokingfactorybean,这将是非常有帮助的.

这通常是设置像HostConfiguration这样的bean在春天不遵循惯例的公认方式吗?

谢谢!

最佳答案
首先,实例化ProxyHost
(即ProxyHost proxyHost = new ProxyHost(“myproxy1.com”,8080);

然后实例化HostConfiguration对象
(即HostConfiguration hostConfiguration = new HostConfiguration();

之后,使用MethodInvokingfactorybean在HostConfiguration上调用setProxyHost()并将proxyHost作为参数传递.
(即hostConfiguration.setProxyHost(proxyHost);)

 factorybean">
            
原文链接:https://www.f2er.com/spring/431624.html

猜你在找的Spring相关文章