[jboss-cvs] JBossAS SVN: r69848 - in branches/JBPAPP_4_2_0_GA_CP/ejb3/src: test/org/jboss/ejb3/test/ejbthree994/unit and 1 other directory.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Feb 14 21:24:02 EST 2008
Author: bdecoste
Date: 2008-02-14 21:24:01 -0500 (Thu, 14 Feb 2008)
New Revision: 69848
Modified:
branches/JBPAPP_4_2_0_GA_CP/ejb3/src/main/org/jboss/ejb3/ClientKernelAbstraction.java
branches/JBPAPP_4_2_0_GA_CP/ejb3/src/main/org/jboss/ejb3/JmxClientKernelAbstraction.java
branches/JBPAPP_4_2_0_GA_CP/ejb3/src/main/org/jboss/ejb3/MCClientKernelAbstraction.java
branches/JBPAPP_4_2_0_GA_CP/ejb3/src/main/org/jboss/ejb3/ProxyFactoryHelper.java
branches/JBPAPP_4_2_0_GA_CP/ejb3/src/test/org/jboss/ejb3/test/ejbthree994/unit/MultiBindingsTestCase.java
Log:
[JBPAPP-628] [JBPAPP-629] binding 0.0.0.0 clientBindUrl to correct Connector
Modified: branches/JBPAPP_4_2_0_GA_CP/ejb3/src/main/org/jboss/ejb3/ClientKernelAbstraction.java
===================================================================
--- branches/JBPAPP_4_2_0_GA_CP/ejb3/src/main/org/jboss/ejb3/ClientKernelAbstraction.java 2008-02-14 23:44:04 UTC (rev 69847)
+++ branches/JBPAPP_4_2_0_GA_CP/ejb3/src/main/org/jboss/ejb3/ClientKernelAbstraction.java 2008-02-15 02:24:01 UTC (rev 69848)
@@ -21,10 +21,10 @@
*/
package org.jboss.ejb3;
+import java.util.Set;
+
import javax.management.ObjectName;
-import javax.management.MBeanServer;
-
/**
* @author <a href="mailto:bdecoste at jboss.com">William DeCoste</a>
*/
@@ -33,4 +33,6 @@
Object invoke(ObjectName name, String operationName, Object[] params, String[] signature) throws Exception;
public Object getAttribute(ObjectName name, String attribute) throws Exception;
+
+ Set getMBeans(ObjectName query) throws Exception;
}
Modified: branches/JBPAPP_4_2_0_GA_CP/ejb3/src/main/org/jboss/ejb3/JmxClientKernelAbstraction.java
===================================================================
--- branches/JBPAPP_4_2_0_GA_CP/ejb3/src/main/org/jboss/ejb3/JmxClientKernelAbstraction.java 2008-02-14 23:44:04 UTC (rev 69847)
+++ branches/JBPAPP_4_2_0_GA_CP/ejb3/src/main/org/jboss/ejb3/JmxClientKernelAbstraction.java 2008-02-15 02:24:01 UTC (rev 69848)
@@ -21,6 +21,8 @@
*/
package org.jboss.ejb3;
+import java.util.Set;
+
import javax.management.MBeanServerConnection;
import javax.management.ObjectName;
import org.jboss.logging.Logger;
@@ -48,4 +50,11 @@
{
return server.getAttribute(name, attribute);
}
+
+ public Set getMBeans(ObjectName query) throws Exception
+ {
+ Set mbeans = server.queryMBeans(query, null);
+
+ return mbeans;
+ }
}
Modified: branches/JBPAPP_4_2_0_GA_CP/ejb3/src/main/org/jboss/ejb3/MCClientKernelAbstraction.java
===================================================================
--- branches/JBPAPP_4_2_0_GA_CP/ejb3/src/main/org/jboss/ejb3/MCClientKernelAbstraction.java 2008-02-14 23:44:04 UTC (rev 69847)
+++ branches/JBPAPP_4_2_0_GA_CP/ejb3/src/main/org/jboss/ejb3/MCClientKernelAbstraction.java 2008-02-15 02:24:01 UTC (rev 69848)
@@ -29,6 +29,8 @@
import javax.management.ObjectName;
import java.lang.reflect.Field;
import java.lang.reflect.Method;
+import java.util.HashSet;
+import java.util.Set;
/**
* @author <a href="mailto:bdecoste at jboss.com">William DeCoste</a>
@@ -82,4 +84,12 @@
}
return null;
}
+
+ public Set getMBeans(ObjectName query) throws Exception
+ {
+ Object target = kernel.getRegistry().getEntry(query);
+ Set set = new HashSet();
+ set.add(target);
+ return set;
+ }
}
Modified: branches/JBPAPP_4_2_0_GA_CP/ejb3/src/main/org/jboss/ejb3/ProxyFactoryHelper.java
===================================================================
--- branches/JBPAPP_4_2_0_GA_CP/ejb3/src/main/org/jboss/ejb3/ProxyFactoryHelper.java 2008-02-14 23:44:04 UTC (rev 69847)
+++ branches/JBPAPP_4_2_0_GA_CP/ejb3/src/main/org/jboss/ejb3/ProxyFactoryHelper.java 2008-02-15 02:24:01 UTC (rev 69848)
@@ -22,11 +22,13 @@
package org.jboss.ejb3;
import java.io.Serializable;
+import java.net.URI;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;
+import java.util.Set;
import javax.ejb.EJBLocalObject;
import javax.ejb.EJBObject;
@@ -35,6 +37,7 @@
import javax.ejb.Remote;
import javax.ejb.RemoteHome;
import javax.jws.WebService;
+import javax.management.ObjectInstance;
import javax.management.ObjectName;
import javax.naming.Context;
import javax.naming.NameNotFoundException;
@@ -590,6 +593,28 @@
clientBindUrl = RemoteProxyFactory.DEFAULT_CLIENT_BINDING;
}
}
+ else if (clientBindUrl.indexOf("0.0.0.0") != -1)
+ {
+ KernelAbstraction kernelAbstraction = KernelAbstractionFactory.getInstance();
+ ObjectName query = new ObjectName("jboss.remoting:type=Connector,handler=ejb3,*");
+ Set mbeanSet = kernelAbstraction.getMBeans(query);
+
+ URI targetUri = new URI(clientBindUrl);
+ Iterator mbeans = mbeanSet.iterator();
+ while (mbeans.hasNext())
+ {
+ ObjectInstance invokerInstance = (ObjectInstance)mbeans.next();
+ ObjectName invokerName = invokerInstance.getObjectName();
+ String invokerLocator = (String)kernelAbstraction.getAttribute(invokerName, "InvokerLocator");
+ URI uri = new URI(invokerLocator);
+
+ if (uri.getScheme().equals(targetUri.getScheme()) && uri.getPort() == targetUri.getPort())
+ {
+ return invokerLocator;
+ }
+ }
+ return clientBindUrl;
+ }
return clientBindUrl;
}
Modified: branches/JBPAPP_4_2_0_GA_CP/ejb3/src/test/org/jboss/ejb3/test/ejbthree994/unit/MultiBindingsTestCase.java
===================================================================
--- branches/JBPAPP_4_2_0_GA_CP/ejb3/src/test/org/jboss/ejb3/test/ejbthree994/unit/MultiBindingsTestCase.java 2008-02-14 23:44:04 UTC (rev 69847)
+++ branches/JBPAPP_4_2_0_GA_CP/ejb3/src/test/org/jboss/ejb3/test/ejbthree994/unit/MultiBindingsTestCase.java 2008-02-15 02:24:01 UTC (rev 69848)
@@ -63,7 +63,7 @@
assertEquals(actual, "*** 123 ***");
String proxyUri = getProxyUri(bean);
- assertEquals(proxyUri, "socket://0.0.0.0:3873");
+ assertEquals(proxyUri, "socket://127.0.0.1:3873/");
}
{
@@ -72,7 +72,7 @@
assertEquals(actual, "*** 456 ***");
String proxyUri = getProxyUri(bean);
- assertEquals(proxyUri, "socket://0.0.0.0:3874");
+ assertEquals(proxyUri, "socket://127.0.0.1:3874/");
}
}
More information about the jboss-cvs-commits
mailing list