WebSphere中Tomcat的BeanFactory模拟

时间:2015-07-29 15:04:51

标签: java tomcat websphere

人。我从Tomcat迁移到WAS时遇到了问题。这就是问题所在。我在tomcat的背景下得到了这样的资源:

<Resource name="serverConnectorType"
              auth="Container"
              factory="org.apache.naming.factory.BeanFactory"
              type="com.vdsirotkin.service.ServerConnectorType"
              url="http://someip:9080/sfs/sfs/"
              connectorType="SOAP"
            />

一些解释。我需要从资源中填充这个类,并且我一直在使用BeanFactory来完成它。现在我需要迁移到WAS。 所以,这就是问题所在。有没有办法在WAS中做同样的事情?

1 个答案:

答案 0 :(得分:3)

没有直接等同于BeanFactory,但WAS Liberty确实支持JNDI的Object Factories,因此您可以编写BeanFactory的等效项并使用如下配置:

<jndiObjectFactory id="beanFactory" className="com.example.BeanFactory" libraryRef="beanFactoryClasses"/>
<jndiReferenceEntry factoryRef="beanFactory" jndiName="serverConnectorType">
    <properties className="com.vdsirotkin.service.ServerConnectorType" myProp="value"/>
</jndiReferenceEntry>

ObjectFactory将为properties元素上的每个属性获取带有StringRefAddr的JNDI引用。类型将是属性名称,内容将是值。