RMI-2

  • 12
  • Недоступна
Реализуй логику метода run в SERVER_THREAD. В нем будет имитироваться серверная часть: 1) Инициализируй поле registry, которое будет принимать и обрабатывать запросы на 2099 порту. 2) Создай два объекта - Cat и Dog. 3) Используй класс UnicastRemoteObject, чтобы создать Remote объекты для созданных C
Вы не можете решать эту задачу, т.к. не залогинены.
Комментарии (42)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий вы должны авторизоваться
Дмитрий Войтенко31 уровень, Харьков
17 апреля, 09:30
Долго не мог понять почему выбрасывает ошибку о повторном использовании порта 2099. Оказалось надо принудительно было завершить выполнение предыдущей задачи. Короче час потраченного времени.
Вагиф27 уровень, Санкт-Петербург
11 марта, 12:51
тот кто мучается с 5 пунктом и меняет разный типы Exception и ничего не помогает, тогда просто обратите внимание на создать Remote объекты, если вы его создали то сразу и добавь в registry, т.е. создаете Remote объекты для Cat и тут же добавляете их в registry следующей строчкой, то же самое для Dog. 9 попыток потратил пока этого не понял (
Сергей36 уровень, Москва
21 августа 2018, 10:52
опять эта ошибка с таблицей
java.rmi.NoSuchObjectException: no such object in table
пока не добавил в конце нити сервера немного сна
Thread.sleep(10);
Почему она лезет, вроде main спит перед запуском клиента?
Aleksandr35 уровень
4 января, 16:48
Спасибо за подсказку, но тоже не пойму, почему столь малая задержка решила проблемму, если перед запуском нити клиента итак задержка стоит в 1000 мс
Artur41 уровень
5 марта, 17:37
мне Thread.sleep(10) в конце нити не помогло, в main после старта серверной нити написал join SERVER_THREAD.join() - так стало работать.
24 мая 2018, 12:07
Ребят, если кого-то введет в заблуждение требование "При возникновении любого исключения выведи его стек-трейс в поток System.err." То не мудрствуйте лукаво - это один обычный блок
catch (Exception e) {
     e.printStackTrace();
}
И ВСЁ!
Alex Shamray35 уровень
9 августа 2018, 20:24
Только с этим "одним единственным" я продолбался минут 30. Причина оказалась вовсе не в нем, а в том, что создание объектов было выше блока try-catch. Матюки валика были обосноваными)))
Rodriguez33 уровень
6 января, 02:32
Причина оказалась вовсе не в нем, а в том, что создание объектов было выше блока try-catch. Спасибо, добрый человек. -3 попытки из за этого. Тоже создавал объекты выше блока try.
S3R3N1TY33 уровень, Санкт-Петербург
9 апреля, 10:03
А почему нельзя создать обьекты выше блока try-catch ? Какие там могут возникнуть ошибки
Oleg Fedoruk35 уровень
1 мая, 18:21
у меня кстати было 2 блока
} catch (RemoteException e) {
           e.printStackTrace(System.err);
} catch (AlreadyBoundException e) {
           e.printStackTrace(System.err);
}
прошло без вопросов
Роман25 уровень, Новосибирск
10 мая 2018, 16:31
Не лоханитесь как я: registry уже создан статиком, его просто надо инициализировать
vinsler35 уровень, Санкт-Петербург
21 мая 2018, 23:20
а как ты предыдущую задачу решал? ))))
Роман25 уровень, Новосибирск
23 мая 2018, 10:44
там было "из registry получи сервис бла бла бла" а в этой меня смутило "инициализируй" :) вот и перемудрил
Avaaron36 уровень, Москва
30 марта 2018, 13:34
Кота с собакой создал перед блоком try catch в результате при валидации по пункту отлова исключений ошибка. 5 попыток... Мало того нужно собрать всё свое ясновидение в кулак, что бы понять, что все исключения это собственно только 2 .... а не все , как вы могли бы подумать))))) Будете ловить Excepton e, валидол не примет.
31 марта 2018, 20:04
У меня принял с Exception...
Рамиль Насыров40 уровень, Новосибирск
30 марта 2018, 10:28
объявления собак с кошками тоже в трай надо сувать, без этого последний пункт не проходил
Valeriy26 уровень
11 декабря 2017, 09:32
Кто-то жизнь прожигает в клубах и тп, а мы тратим её на такие задачи. Первая пропущенная задача. Просто уйма времени уходит
Ярослав35 уровень
15 июля 2018, 11:58
То есть, именно эта задача Вас одолела ? Странно, что не "Кроссворд", или "Построй дерево".
Anton Konkin24 уровень
27 октября 2017, 16:26
Нда, странные две лекции подрят, решаю но ничего не понятно. А в последних задачах при правильном решении вылазит NullPointerException и что с ним делать ...
Даниленко Виктор40 уровень, Днепр
18 ноября 2017, 11:34
NullPointerException выдаёт registry.list() когда реестр ещё не создан. или создаётся дольше 1й секунды в мейне, или просто у вас предыдущие решения ещё висят в выполнении и порт 2099 занят ими и реестр в данном не создался по хорошему в Run "сервера" нужно подождать сколько то секунд и сделать unexport объектов, чтобы "сервер" завершался, а не висел вечно занимая порт. Но не уверен что так валидатор примет
Vra40 уровень
22 ноября 2017, 21:01
принял, у нити сервера ждал сек и закрывал UnicastRemoteObject.unexportObject(cat, false);
Незнайка40 уровень, Москва
23 октября 2017, 12:07
Кто знает почему автоматом не завершается процесс?
Vitaly Chura40 уровень, Киев
14 июня 2018, 08:04
Обсуждалось в предідущей задаче - нужно разэкспортить сервис UnicastRemoteObject.unexportObject(cat, false);