[jboss-cvs] JBossAS SVN: r88680 - in projects/naming/trunk/jnpserver/src: test/java/org/jnp/test and 1 other directory.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Mon May 11 19:43:27 EDT 2009


Author: scott.stark at jboss.org
Date: 2009-05-11 19:43:26 -0400 (Mon, 11 May 2009)
New Revision: 88680

Modified:
   projects/naming/trunk/jnpserver/src/main/java/org/jnp/server/Main.java
   projects/naming/trunk/jnpserver/src/main/java/org/jnp/server/MainMBean.java
   projects/naming/trunk/jnpserver/src/test/java/org/jnp/test/NamingMCUnitTest.java
Log:
JBNAME-34, expose information about the failure to create a lookup listening port.


Modified: projects/naming/trunk/jnpserver/src/main/java/org/jnp/server/Main.java
===================================================================
--- projects/naming/trunk/jnpserver/src/main/java/org/jnp/server/Main.java	2009-05-11 23:40:43 UTC (rev 88679)
+++ projects/naming/trunk/jnpserver/src/main/java/org/jnp/server/Main.java	2009-05-11 23:43:26 UTC (rev 88680)
@@ -105,6 +105,8 @@
    protected Logger log;
    /** The thread pool used to handle jnp stub lookup requests */
    private Executor lookupExector;
+   /** The exception seen when creating the lookup listening port */
+   private Exception lookupListenerException;
 
    // Static --------------------------------------------------------
    public static void main(String[] args)
@@ -174,6 +176,15 @@
       this.lookupExector = lookupExector;
    }
 
+   /**
+    * Get any exception seen during the lookup listening port creation
+    * @return
+    */
+   public Exception getLookupListenerException()
+   {
+      return lookupListenerException;
+   }
+
    /** Get the call by value flag for jndi lookups.
     * 
     * @return true if all lookups are unmarshalled using the caller's TCL,
@@ -488,7 +499,9 @@
       }
       catch (IOException e)
       {
+         lookupListenerException = e;
          log.error("Could not start on port " + port, e);
+         return;
       }
 
    }

Modified: projects/naming/trunk/jnpserver/src/main/java/org/jnp/server/MainMBean.java
===================================================================
--- projects/naming/trunk/jnpserver/src/main/java/org/jnp/server/MainMBean.java	2009-05-11 23:40:43 UTC (rev 88679)
+++ projects/naming/trunk/jnpserver/src/main/java/org/jnp/server/MainMBean.java	2009-05-11 23:43:26 UTC (rev 88680)
@@ -114,11 +114,22 @@
    void setJNPServerSocketFactory(String factoryClassName) 
       throws ClassNotFoundException, InstantiationException, IllegalAccessException;
 
+   /**
+    * Get the externally define Naming proxy instance
+    * @return
+    * @throws Exception
+    */
    public Object getNamingProxy()
       throws Exception;
    public void setNamingProxy(Object proxy)
       throws IOException;
 
+   /**
+    * Get any exception seen during the lookup listening port creation
+    * @return
+    */
+   public Exception getLookupListenerException();
+
    // Operations ----------------------------------------------------
    
    public void start() throws Exception;

Modified: projects/naming/trunk/jnpserver/src/test/java/org/jnp/test/NamingMCUnitTest.java
===================================================================
--- projects/naming/trunk/jnpserver/src/test/java/org/jnp/test/NamingMCUnitTest.java	2009-05-11 23:40:43 UTC (rev 88679)
+++ projects/naming/trunk/jnpserver/src/test/java/org/jnp/test/NamingMCUnitTest.java	2009-05-11 23:43:26 UTC (rev 88680)
@@ -40,6 +40,7 @@
 import org.jboss.test.kernel.junit.MicrocontainerTest;
 import org.jnp.interfaces.NamingContext;
 import org.jnp.interfaces.TimedSocketFactory;
+import org.jnp.server.MainMBean;
 import org.jnp.test.support.QueueSecurityManager;
 
 /**
@@ -58,6 +59,7 @@
    private InitialContext ctx;
    private QueueSecurityManager qsm;
    private InitialContextFactory ctxFactory;
+   private MainMBean main;
 
    /**
     * 
@@ -90,6 +92,11 @@
    {
       this.ctxFactory = ctxFactory;
    }
+   @Inject(bean="jboss:service=Naming", option=InjectOption.OPTIONAL)
+   public void setMainMBean(MainMBean main)
+   {
+      this.main = main;
+   }
 
    /**
     * Validate that a NamingBeanImpl mc bean is accessible via the
@@ -140,6 +147,9 @@
    public void testMainBean()
       throws Exception
    {
+      // Validate
+      assertNotNull(main);
+      assertNull("main.getLookupListenerException", main.getLookupListenerException());
       Properties env = new Properties();
       env.setProperty("java.naming.factory.initial", "org.jnp.interfaces.NamingContextFactory");
       env.setProperty("java.naming.provider.url", "localhost:1099");




More information about the jboss-cvs-commits mailing list