Spring與weblogic jndi整合

來源:互聯網
上載者:User
Spring與weblogic jndi整合

雖然spring本身是可以直接使用jndi來進行擷取一些對象,但是在和weblogic整合的時候往往還是容易出

現問題(在web應用的時候出現問題的可能性不大,因為container已經做了很多事情了.)但是在ide或者其

他的應用環境下(不同的jvm的時候),通常找不到provider_url等屬性造成無法找到jndi.

修改設定檔如下:

<!-- 通過jndi的方式來調用datasource,即使不一定是在j2ee環境中也可以正常使用預設情況下,如果

沒有指定,"java:comp/env/"將放在後面jndi名稱前面

-->

<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">

<property name="jndiName">

<value>jdbc/myDatasource</value>

</property>

<!-- 如果你不想使用 'java:comp/env/'首碼的話請設定下面的值為true, 預設值為false -->

<property name="resourceRef">

<value>false</value>

</property>

<property name="jndiEnvironment">

<props>

Spring串連weblogic-DataSource錯誤

<!-- The value of Context.PROVIDER_URL -->

<prop key="java.naming.provider.url">t3://localhost:7001</prop>

<prop key="java.naming.factory.initial">weblogic.jndi.WLInitialContextFactory

</prop>

</props>

</property>

</bean>

注意在設定的時候由於不在同一個jvm裡面,所以一定要設定provider.url和factory.initial的屬性值,否

則會出現NoInitialContextException的異常出現.

此外如果和其他的應用伺服器整合的話可能不只是要設定上面的兩個屬性,還要設定相關的其他屬性。詳

細情況參考:javax.naming.Context類的說明文檔。

http://java.sun.com/j2se/1.4.2/docs/api/javax/naming/Context.html

其中設定的:

<property name="jndiEnvironment">

<props>

<!-- The value of Context.PROVIDER_URL -->

<prop key="java.naming.provider.url">t3://localhost:7001</prop>

<prop key="java.naming.factory.initial">weblogic.jndi.WLInitialContextFactory

</prop>

</props>

</property> 實際上就是設定Context初始化的時候設定的Properties屬性。

http://java.mblogger.cn/layout/posts/11849.aspx

=====================================================================

=====================================================================

各種應用伺服器的不同的properties集合:

websphere:

java.naming.provider.url->iiop://websphere.machine.domain.com:900

java.naming.factory.initial ->com.ibm.websphere.naming.WsnInitialContextFactory

java.naming.factory.url.pkgs ->com.ibm.ws.naming

org.omg.CORBA.ORBClass->com.ibm.rmi.iiop.ORB

org.omg.CORBA.ORBSingletonClass->com.ibm.rmi.corba.ORBSingleton

javax.rmi.CORBA.UtilClass->com.ibm.rmi.javax.rmi.CORBA.Util

javax.rmi.CORBA.StubClass->com.ibm.rmi.javax.rmi.CORBA.StubDelegateImpl

javax.rmi.CORBA.PortableRemoteObjectClass->com.ibm.rmi.javax.rmi.PortableRemoteObject

weblogic:

java.naming.factory.initial -> weblogic.jndi.WLInitialContextFactory

java.naming.provider.url -> t3://localhost:7001

jboss:

ava.naming.factory.initial ->org.jnp.interfaces.NamingContextFactory

java.naming.factory.url.pkgs->org.jboss.naming.client

java.naming.provider.url ->jnp://10.0.0.18:1099

sunone IMQ ldap:

java.naming.provider.url -> ldap://localhost:389/dc=yusong,dc=com

java.naming.factory.initial -> com.sun.jndi.ldap.LdapCtxFactory

sunone Application Server:

java.naming.provider.url -> iiop://192.168.0.34:3700

java.naming.factory.initial -> com.sun.jndi.cosnaming.CNCtxFactory

oracle oc4j:

java.naming.factory.initial->com.evermind.server.ApplicationClientInitialContextFactory

java.naming.provider.url->ormi://localhost/bmpapp

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.