首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将JNDI lookup Bean转换为JEE:jndi- DataSource

将JNDI lookup Bean转换为JEE:jndi- DataSource
EN

Stack Overflow用户
提问于 2012-07-17 15:33:44
回答 2查看 15.6K关注 0票数 1

我有一个如下的Spring设置。

代码语言:javascript
运行
复制
<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定义为

代码语言:javascript
运行
复制
<jee:jndi-lookup jndi-name="jdbc/mysql" resource-ref="false" >
    <jee:environment>
        ....
    </jee:environment>
</jee:jndi-lookup>

有没有办法定义这一点。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-12-10 17:52:32

您可以与以下人员共享该定义:

代码语言:javascript
运行
复制
<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。

票数 4
EN

Stack Overflow用户

发布于 2012-07-17 16:00:35

感谢您的宝贵时间,我找到了问题所在。我发现了这个问题,但并没有真正找到正确的解决方案。以下是为我工作的代码片段。

代码语言:javascript
运行
复制
<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>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11517925

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档