這兩天在學(xué)習(xí)ejb,且不說(shuō)ejb如何編寫(xiě),剛開(kāi)始就被jndi給難住了。記得以前在Jbuilder中照著別人的方法試過(guò),已經(jīng)成功了,沒(méi)有深研。想不到現(xiàn)在來(lái)做,又給難住了,搞了兩天終于有了結(jié)果。 首先說(shuō)一說(shuō)客戶端通過(guò)jndi連接weblogic,不需要把客戶端程序放到(或是布署到)weblogic中運(yùn)行,客戶端用一個(gè)簡(jiǎn)單的class文件既可,代碼下如。 /*JNDIClientTest.java*/ public class JDNIClientTest { 上面包括的包都是jre里的標(biāo)準(zhǔn)包。啟動(dòng)weblogic后,運(yùn)行該程序。 當(dāng)然會(huì)有問(wèn)題,顯示“javax.naming.NoInitialContextException: Cannot instantiate class: weblogic.jndi.WLInitialContextFactory [Root exception is java.lang.ClassNotFoundException: weblogic.jndi.WLInitialContextFactory]” 為什么編譯沒(méi)問(wèn)題了,卻還是出錯(cuò)呢,這是網(wǎng)絡(luò)上問(wèn)得最多的問(wèn)題。這是缺少"\bea\weblogic81\server\lib\wlclient.jar"文件所致。 在buildpath里加入這個(gè)包后再運(yùn)行。 如果還是出錯(cuò),顯示“Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/corba/se/connection/ORBSocketFactory” 還是缺少包,這時(shí)如果你只安裝有jre1.5.*,那是沒(méi)有ORBSocketFactory這個(gè)類(lèi)文件的。還是找個(gè)jre1.4.*吧,這個(gè)類(lèi)在“jre/lib/rt.jar”包中。據(jù)說(shuō)這個(gè)問(wèn)題在weblogic9中已解決。 這時(shí)應(yīng)該沒(méi)什么問(wèn)題了,你可以進(jìn)一步學(xué)習(xí)ejb或其它內(nèi)容了。 上面的t3:是weblogic中jndi用的協(xié)議,就和http一樣,其它服務(wù)器如jboss用iiop之類(lèi)進(jìn)行連接,不同的服務(wù)器連接的方式不一樣,具體要再查資料。 Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=659958 |
|
來(lái)自: 不會(huì)游泳的魚(yú) > 《Weblogic》