應用程式客戶端訪問伺服器端JNDI時的問題

2021-04-27 11:44:53 字數 769 閱讀 9389

最近,在利用應用程式客戶端訪問伺服器端jndi服務時,發現了乙個有趣的現象:客戶端與服務端在同一臺機器上時程式順利執行,但不在同一臺機器上時會報jndi查詢錯誤。

所報錯誤資訊中的關鍵字主要有「org.omg.corba.transient」,「connection refused」,"connect:host=localhost",「port=****」,「minor code:4942f301」,這個錯誤讓我抓狂了好幾天,仔細檢視源**也沒有什麼錯誤,防火牆全關了也不行,在網上搜尋了半天也沒有什麼結果(有同樣的問題,但沒有結果),最後在ibm的**上看到了一篇關於此類錯誤的文章,心裡一下豁然開朗。

原來,預設的websphere伺服器端口設定中,bootstrap_address的主機被設為了「localhost」。這樣,當客戶端與伺服器端互動的時候,伺服器端傳給客戶端的伺服器主機名為「localhost」,客戶端利用此主機名「localhost」來與伺服器互動時,實際上是給自己所在的主機(localhost)傳送資訊,這當然就會失敗了。

所以,只需要將bootstrap_address中的主機設為伺服器的ip,或者伺服器的dns主機名(不能是一般的主機名)即可。

同樣的道理,如果伺服器使用的是wsad中的測試伺服器,只需要在伺服器配置埠頁中,設定正確的主機名就可以了。

呵,終於給搞定了…………,這樣自己的測試伺服器就不用開了,直接連到別的伺服器上就ok了,自己的機器快的不少哇,本來ibm的東西就比較耗記憶體,公司又比較扣門,只給1g的記憶體,開個測試伺服器就卡的要命,還怎麼寫程式…………

寫個blog祝賀一下~~

oracle客戶端訪問伺服器端

1.客戶端工具 可以使用sqlplus,oacle sql developer,pl sql developer 最近專案用到了oracle,使用的是oracle10g,因為小組內有多人使用資料庫,並且oracle資料庫很佔內 存,就放在單獨的一台伺服器上,所以最好每個人都裝乙個oracle10g的...

php socket客戶端及伺服器端應用例項

經常有朋友會對php的socket應用充滿疑惑,本文就以例項 作一講解,希望能對初學php的朋友起到一點幫助作用 具體 如下 1.伺服器端 class socketserver private function showerror error 開始進行socket伺服器端監聽埠 public fun...

php socket客戶端及伺服器端應用例項

經常有朋友會對php的socket應用充滿疑惑,本文就以例項 作一講解,希望能對初學php的朋友起到一點幫助作用 具體 如下 1.伺服器端 private function showerror error 開始進行socket伺服器端監聽埠 public function start 繫結 if s...