我正在開發一個帶有套接字和RMI的遊戲。套接字部分現在完成我開始RMI部分。我希望能夠邀請某人玩(A-> B)並獲得迴應(B-> A)。如何從服務器調用客戶端上的方法?
你能幫我嗎?
在此先感謝。乾杯
編輯:我一直在研究,我當前也實現客戶端作爲遠程對象以及(定義接口和實現它)。我認爲它被稱爲回調。我在正確的道路上嗎?
我在想什麼是A在B計算機上的遠程對象上調用方法。 B上的服務器詢問客戶端(它也是同一臺計算機中的一臺服務器),如果它想玩A,則獲得響應並將其返回給A.像我說的,我剛剛用tcp和udp套接字完成了這個遊戲,現在我必須在RMI上做同樣的事情。兩個客戶端無法通過RMI直接進行通信,就像通過TCP連接進行通信一樣,是嗎?
RMI教程 - http://docs.oracle.com/javase/tutorial/rmi/index.html – adatapost 2011-12-31 02:36:00
我已經多次閱讀過該教程。問題是它只告訴你如何調用遠程對象上的方法並獲取它返回的結果(如果有的話)。我希望能夠在該對象上調用方法,並讓它在用作服務器的同一臺計算機上調用另一個方法。所以A(客戶端) - > B(服務器獲得邀請請求) - > B(客戶端提示並回復) - > B(服務器收到響應並將其發回給A) - > A(客戶端) – DaveQuinn 2011-12-31 02:44:26
我相信你會需要在將A作爲服務器註冊爲服務器之前,將其作爲參數發送。它確實要求「客戶端」可以監聽並接受連接。 (免責聲明:我沒有真正使用RMI。) – 2011-12-31 03:12:32