2011-04-18 23 views
3

如何測試對象是否已導出?我將對象從主機遷移到主機。在將對象(及其狀態)複製到另一個節點之前,我必須用UnicastRemoteObject.unexportObject(this, true)取消導出對象,但如果對象尚未導出,則此方法將拋出java.rmi.NoSuchObjectException: object not exportedRMI如何測試對象是否已導出

我在尋找的是一種方法來測試一個對象是否已經被導出(沒有捕獲異常並且沒有導出對象)。關於結果,測試應該具有與以下方法相同的行爲:

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

感謝您的幫助。

回答

1

只要嘗試導出它並捕獲異常。