我試圖得到一個RMI激活服務器的工作 - 但至今沒有運氣。其實服務器似乎運行,但客戶端觸發一個奇怪的例外。RMI激活奇怪的問題
我有3個項目:
- 客戶
- 共同
- 服務器
常見的是共享客戶端和服務器(如遠程接口)之間的代碼。
步驟我跟隨(被適應this tutorial):
- 啓動註冊表 - >確定
- 運行的rmid - >確定
- 啓動服務器設置 - >確定
- 啓動客戶端 - - >BOOM!因爲在共同類不是在服務器線程與NoClassDefFoundError的發現激活失敗。
我在服務器的代碼庫中包含公共類文件,因此這些文件夾/接口應該可用於服務器。它棄暗投明的遠程接口本身 - 所以唯一的選擇似乎把所有普通代碼的服務器代碼,但這樣一來,客戶端代碼必須知道哪些平原吸服務器代碼。
我做了一些瀏覽,看起來像this guy here已經得到了確切的同樣的問題。
看起來在這兩種情況下,當其他一些包的激活服務器引用類(在我的情況下,它的鏈接定製包以上是第三方)這種情況正在發生。
我真的是在虧損這裏 - 所以任何想法,將不勝感激!
編輯:一些額外的信息 - 我試圖調試問題。看來,客戶端檢索主題中的遠程對象就好了(引用不爲null)。一旦遠程接口(客戶端知道該接口)的方法被調用,就會拋出異常。如果一號方法調用時激活,那麼這是很明顯的 - 但不是太肯定,當它實際上試圖激活遠程對象/服務器。
嗯...我其實是缺少路徑中的類* *共同的ActivationDesc的位置參數...感謝這麼多的察覺這個! – JohnIdol 2009-12-29 04:08:05