2015-03-03 4 views
2

Я пытаюсь распространять простую систему бронирования номеров, которую я реализовал, я пробовал исследовать, и это то, что я придумал. Но когда я запускаю их и вводим разные номера портов, клиент все еще работает .. не будет только если номер порта совпадает с номером, который я ввел для Сервера? что я сделал не так?Почему не LocateRegistry.getRegistry() сбой, если я укажу неправильный номер порта?

Для клиентов:

public static void main (String[] args) 
{ 
Scanner s = new Scanner (System.in); 

int portNum = 1099;//default port 
try { 
      System.out.print("Enter the port number"); 
      portNum= s.nextInt(); 

      Registry reg= LocateRegistry.getRegistry("localhost", portNum); 

     System.out.println("Connected to RMI server"); 

Для сервера:

public static void main(String argv[]) { 
int portNum = 1099; 
try { 

    Scanner s = new Scanner (System.in); 
HotelServer server = new HotelServer(); 
//register it with the local naming registry 
    try 
     { 

     System.out.print("Enter The Port Number"); 
     portNum= s.nextInt(); 
      Registry reg= LocateRegistry.createRegistry(portNum); 
      reg.bind("localhost", server); 
      System.out.println("Server started"); 

ответ

1

Просто получить результат от LocateRegistry.getRegistry() не означает, что вы подключены к чему-либо. Он не выполняет никаких сетевых операций. Он просто создает заглушку. Если номер порта неверен, вы не узнаете, пока не попытаетесь его использовать.

+0

Я не понимаю, что мне теперь нужно изменить? – user3286854

+0

Я ответил на это. «Постарайся использовать его». Попробуйте использовать заглушку реестра, которую вы приобрели, т. Е. Выполните поиск; затем попробуйте вызвать удаленный объект. Только тогда вы можете быть уверены, что у вас есть действующая настройка. Удалите вводящее в заблуждение сообщение, в котором говорится, что вы подключены. Не существует такой связи, как соединение RMI, поэтому не говорите пользователю, что он подключен, когда он не работает. – EJP

+0

Я получаю эту ошибку .. java.rmi.UnknownHostException: Неизвестный хост: l; вложенное исключение: \t java.net.UnknownHostException: l – user3286854