RMI как проверить, экспортирован ли объект

#java #rmi

#java #rmi

Вопрос:

Как я могу проверить, экспортирован ли объект уже? Я переношу объекты с хоста на хост. Прежде чем я скопирую объект (с его состоянием) на другой узел, я должен отменить экспорт объекта с помощью UnicastRemoteObject.unexportObject(this, true) , но этот метод выдает java.rmi.NoSuchObjectException: object not exported , если объект еще не был экспортирован.

То, что я ищу, — это метод проверки того, экспортирован ли объект уже (без перехвата исключения и без неэкспортирования объекта). Что касается результата, тест должен вести себя так же, как следующий метод:

 boolean isExported(Object x) {
    boolean result = false;
    try {
        UnicastRemoteObject.unexportObject(this, true);
        result = true;
        UnicastRemoteObject.exportObject(this, 0);
    } catch (Exception e) {
    }
    return resu<
}
  

Спасибо за вашу помощь.

Ответ №1:

Просто попробуйте экспортировать его и перехватите исключение.