1

私は次のように春の設定をしています。

<bean id="jndiTemplate" class="org.springframework.jndi.JndiTemplate">
    <property name="environment">
        <props>
            <prop key="java.naming.factory.initial">org.jnp.interfaces.NamingContextFactory</prop>
            <prop key="java.naming.provider.url">jnp://jndi.myURL.com:1099</prop>
            <prop key="java.naming.factory.url.pkgs">org.jboss.naming:org.jnp.interfaces</prop>
            <prop key="jnp.disableDiscovery">true</prop>
        </props>
    </property>
</bean>

<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
    <property name="jndiName" value="jdbc/mysql"/><!-- DataSource Name -->
    <property name="resourceRef" value="false"/>
    <property name="jndiTemplate" ref="jndiTemplate" />
</bean>

それをJEEタグ形式に変換したい。

DataSrouce を次のように定義したい

<jee:jndi-lookup jndi-name="jdbc/mysql" resource-ref="false" >
    <jee:environment>
        ....
    </jee:environment>
</jee:jndi-lookup>

それを定義する方法はありますか。

4

2 に答える 2

4

定義は次の人と共有できます。

<bean id="jndiTemplate" class="org.springframework.jndi.JndiTemplate">
    <property name="environment" ref="remoteEnv" />
</bean>

<jee:jndi-lookup id="wcDataSource" jndi-name="jdbc/wc-mysql" resource-ref="false" environment-ref="remoteEnv" />

<util:properties id="remoteEnv">
    <prop key="java.naming.provider.url">jnp://jndi.myURL.me:1099</prop>
    <prop key="java.naming.factory.url.pkgs">org.jboss.naming:org.jnp.interfaces</prop>
    <prop key="java.naming.factory.initial">org.jnp.interfaces.NamingContextFactory</prop>
    <prop key="jnp.disableDiscovery">true</prop>
</util:properties>

このようにして、必要に応じて他の場所で jndiTemplate を参照できます。

于 2013-12-10T09:52:31.723 に答える
2

お時間をいただきありがとうございます。問題が見つかりました。私はその問題を見つけましたが、実際には正しい解決策には達していません。以下は、私のために働いているコードスニペットです。

<jee:jndi-lookup id="wcDataSource" jndi-name="jdbc/wc-mysql" resource-ref="false">
    <jee:environment>
      java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
      java.naming.provider.url=jnp://jndi.myURL.me:1099
      java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
      jnp.disableDiscovery=true
    </jee:environment>
</jee:jndi-lookup>
于 2012-07-17T08:00:35.483 に答える