關於ICE通訊開發遇到的問題

    這兩天開發ICE服務端,client是別人寫好的,根據接口寫了server後,client鏈接時報異常:nonexxxx,記不清了,搞半天才發現是id字符串不匹配。總結起來是須要IP、Port、名稱都一致才能正常通訊。spa

相似下面的代碼:server

Ice.Communicator ic = null;  
try {  
       //初始化鏈接,args能夠傳一些初使化參數,如鏈接超時時間,初使化客戶鏈接池的數量等  
       ic = Ice.Util.initialize(args);  
       //建立名爲SimplePrinterAdapter的適配器,使用缺省的協議(TCP/IP偵聽端口爲10000的請求)  
   Ice.ObjectAdapter adapter = ic.createObjectAdapterWithEndpoints("SimplePrinterAdapter", "default -p 10000");  
        //實例化一個PrinterI對象,爲Printer接口建立一個服務對象  
        Ice.Object object = new PrinterI();  
        //將服務單元增長到適配器中,並給服務對象指定名稱爲SimplePrinter,用於惟一肯定一個服務單元
        adapter.add(object, Ice.Util.stringToIdentity("SimplePrinter"));  
        //激活適配器,這樣作的好處是能夠等到全部資源就位後再觸發  
        adapter.activate();  
        //讓服務在退出以前,一直持續對請求的監聽  
        ic.waitForShutdown();  
}對象

catch (Ice.LocalException e) {  
       e.printStackTrace();  
       status = 1;  
} catch (Exception e) {  
       System.err.println(e.getMessage());  
       status = 1;  
接口

相關文章
相關標籤/搜索