3

安全な取得方法を見つけましLocateRegistryた(レジストリがまだ存在しない場合でも)。

Registry registry = null;
try {
    registry = LocateRegistry.getRegistry(52365);
    registry.list();
    // This call will throw an exception if the registry does not already exist
}
catch (RemoteException e) { 
    registry = LocateRegistry.createRegistry(52365);
}

最初にレジストリの存在と使用を確認したり、確認結果に応じて使用しgetRegistryたりすることはできますか?createRegistry

4

1 に答える 1

2

最初にレジストリの存在を確認し、確認結果に応じてgetRegistryまたはcreateRegistryを使用することはできますか?

そうです。createRegistry()最初に試してみてください。をキャッチしますExportException。これは、すでに実行されていることを意味し、getRegistry()無条件に実行します。

getRegistryが存在しないときに不必要に呼び出されないようにしたい

それは有効な懸念事項ではありません。これは実質的に費用のかからない通話です。ネットワークアクティビティはありません。

于 2013-02-21T01:22:37.333 に答える