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