Tomcat 在 WebSphere 中的 BeanFactory 模拟
Tomcat's BeanFactory analog in 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"
/>
一些解释。我需要这个 class 从资源中填充,我一直在使用 BeanFactory 来做到这一点。现在我需要迁移到 WAS。
那么,问题来了。有什么方法可以在 WAS 中做同样的事情吗?
BeanFactory 没有直接等价物,但 WAS Liberty 确实支持 JNDI 的对象工厂,因此您可以编写 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 引用。类型将是属性名称,内容将是值。
伙计们。从 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"
/>
一些解释。我需要这个 class 从资源中填充,我一直在使用 BeanFactory 来做到这一点。现在我需要迁移到 WAS。 那么,问题来了。有什么方法可以在 WAS 中做同样的事情吗?
BeanFactory 没有直接等价物,但 WAS Liberty 确实支持 JNDI 的对象工厂,因此您可以编写 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 引用。类型将是属性名称,内容将是值。