[jboss-cvs] JBossAS SVN: r108838 - projects/test/trunk/src/main/java/org/jboss/test.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Fri Oct 22 17:28:48 EDT 2010


Author: rachmatowicz at jboss.com
Date: 2010-10-22 17:28:48 -0400 (Fri, 22 Oct 2010)
New Revision: 108838

Modified:
   projects/test/trunk/src/main/java/org/jboss/test/JBossIIOPTestCase.java
   projects/test/trunk/src/main/java/org/jboss/test/JBossTestCase.java
   projects/test/trunk/src/main/java/org/jboss/test/JBossTestClusteredServices.java
   projects/test/trunk/src/main/java/org/jboss/test/JBossTestServices.java
Log:
Update jboss-test to correctly handle IPv6 host literals and URLs (JBAS-8540)

Modified: projects/test/trunk/src/main/java/org/jboss/test/JBossIIOPTestCase.java
===================================================================
--- projects/test/trunk/src/main/java/org/jboss/test/JBossIIOPTestCase.java	2010-10-22 21:21:52 UTC (rev 108837)
+++ projects/test/trunk/src/main/java/org/jboss/test/JBossIIOPTestCase.java	2010-10-22 21:28:48 UTC (rev 108838)
@@ -55,8 +55,8 @@
          URL url  = ClassLoader.getSystemResource("cosnaming.jndi.properties");
          jndiProps = new java.util.Properties();
          jndiProps.load(url.openStream());
-         String host = System.getProperty("jbosstest.server.host", "localhost");
-         String corbaloc = "corbaloc::"+host+":3528/JBoss/Naming/root";
+         // JBAS-8540
+         String corbaloc = "corbaloc::"+getServerHostForURL()+":3528/JBoss/Naming/root";
          jndiProps.setProperty("java.naming.provider.url", corbaloc);
       }
 

Modified: projects/test/trunk/src/main/java/org/jboss/test/JBossTestCase.java
===================================================================
--- projects/test/trunk/src/main/java/org/jboss/test/JBossTestCase.java	2010-10-22 21:21:52 UTC (rev 108837)
+++ projects/test/trunk/src/main/java/org/jboss/test/JBossTestCase.java	2010-10-22 21:28:48 UTC (rev 108838)
@@ -390,6 +390,16 @@
    {
       return delegate.getServerHost();
    }
+   
+   /**
+    * Get the JBoss server host as above, but in a form suitable for 
+    * embedding in URLs - IPv6 literals will be enclosed in square 
+    * brackets (see RFC 2732). For JBAS-8540.
+    */
+   public String getServerHostForURL()
+   {
+      return delegate.getServerHostForURL();
+   }
 
    protected void flushAuthCache() throws Exception
    {

Modified: projects/test/trunk/src/main/java/org/jboss/test/JBossTestClusteredServices.java
===================================================================
--- projects/test/trunk/src/main/java/org/jboss/test/JBossTestClusteredServices.java	2010-10-22 21:21:52 UTC (rev 108837)
+++ projects/test/trunk/src/main/java/org/jboss/test/JBossTestClusteredServices.java	2010-10-22 21:28:48 UTC (rev 108838)
@@ -34,6 +34,7 @@
  *
  * @author <a href="mailto:sacha.labourey at cogito-info.ch">Sacha Labourey</a>.
  * @author Scott.Stark at jboss.org
+ * @author <a href="mailto:rachmatowicz at jboss.com">Richard Achmatowicz</a>
  * @version $Revision$
  * @see org.jboss.test.JBossTestServices
  */
@@ -281,9 +282,17 @@
                break;
             log.info(prop + " = " + host);
             servers.add(host);
+            
+            // get the hostname to use in URLs
+            String hostForURLProp = prop + ".url" ;
+            String hostForURL = System.getProperty(hostForURLProp);
+            if (hostForURL == null)
+            	break;
+            log.info(hostForURLProp + " = " + hostForURL);
+            
             // See if there is a jbosstest.cluster.nodeN.jndi.url
             String urlProp = prop + ".jndi.url";
-            String urlDefault = "jnp://" + host + ":1099";
+            String urlDefault = "jnp://" + hostForURL + ":1099";
             String urlValue = System.getProperty(urlProp, urlDefault);
             log.debug("JNDI Url for node=" + count + " is:" + urlValue);
             namingURLs.add(urlValue);
@@ -295,14 +304,14 @@
 
             // See if there is a jbosstest.cluster.nodeN.hajndi.url
             urlProp = prop + ".hajndi.url";
-            urlDefault = "jnp://" + host + ":1100";
+            urlDefault = "jnp://" + hostForURL + ":1100";
             urlValue = System.getProperty(urlProp, urlDefault);
             log.debug("HA-JNDI Url for node=" + count + " is:" + urlValue);
             namingURLsHA.add(urlValue);
             
             // See if there is a jbosstest.cluster.nodeN.http.url
             urlProp = prop + ".http.url";
-            urlDefault = "http://" + host + ":8080";
+            urlDefault = "http://" + hostForURL + ":8080";
             urlValue = System.getProperty(urlProp, urlDefault);
             log.debug("Http Url for node=" + count + " is:" + urlValue);
             httpURLs.add(urlValue);

Modified: projects/test/trunk/src/main/java/org/jboss/test/JBossTestServices.java
===================================================================
--- projects/test/trunk/src/main/java/org/jboss/test/JBossTestServices.java	2010-10-22 21:21:52 UTC (rev 108837)
+++ projects/test/trunk/src/main/java/org/jboss/test/JBossTestServices.java	2010-10-22 21:28:48 UTC (rev 108838)
@@ -475,4 +475,23 @@
       String hostName = System.getProperty("jbosstest.server.host", "localhost");
       return hostName;
    }
+   
+   /**
+    * Returns the JBoss server host from system property "jbosstest.server.host"
+    * in a form suitable for inclusion in URLs (see RFC 2732).
+    * JBAS-8540
+    */
+   public String getServerHostForURL()
+   {
+      String hostName = getServerHost() ;
+      
+      if (hostName == null)
+    	  return hostName;	
+      
+      // check for IPv6 literal
+      if (hostName.indexOf(":") != -1)
+    	  return "[" + hostName + "]" ;
+      else 
+    	  return hostName ;
+   }   
 }



More information about the jboss-cvs-commits mailing list