/* * @test * @bug 4278121 * @summary Ensure that calling unbind() on an unbound name returns * successfully. */ import javax.naming.*; public class UnbindIdempotent { public static void main(String[] args) throws Exception { // Create registry on port 1099 if one is not already running. try { java.rmi.registry.LocateRegistry.createRegistry(1099); } catch (java.rmi.RemoteException e) { } Context ictx = new InitialContext(); Context rctx; try { rctx = (Context)ictx.lookup("rmi://localhost:1099"); } catch (NamingException e) { // Unable to set up for test. return; } // Attempt to unbind a name that is not already bound. try { rctx.unbind("_bogus_4278121_"); } catch (NameNotFoundException e) { throw new Exception("Test failed: unbind() call not idempotent"); } } }