[jboss-cvs] JBossRemoting/src/main/org/jboss/remoting/loading ...
Tom Elrod
tom.elrod at jboss.com
Fri Jan 12 12:19:47 EST 2007
User: telrod
Date: 07/01/12 12:19:47
Modified: src/main/org/jboss/remoting/loading Tag: remoting_1_4
RemotingClassLoader.java ClassByteClassLoader.java
ObjectInputStreamWithClassLoader.java
Log:
JBREM-659 - changed all ClassLoader.loadClass() calls to Class.forName() calls so will work with jdk 1.6
Revision Changes Path
No revision
No revision
1.2.4.1 +28 -2 JBossRemoting/src/main/org/jboss/remoting/loading/RemotingClassLoader.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: RemotingClassLoader.java
===================================================================
RCS file: /cvsroot/jboss/JBossRemoting/src/main/org/jboss/remoting/loading/RemotingClassLoader.java,v
retrieving revision 1.2
retrieving revision 1.2.4.1
diff -u -b -r1.2 -r1.2.4.1
--- RemotingClassLoader.java 30 Dec 2005 05:26:29 -0000 1.2
+++ RemotingClassLoader.java 12 Jan 2007 17:19:47 -0000 1.2.4.1
@@ -22,6 +22,9 @@
package org.jboss.remoting.loading;
+import org.jboss.remoting.serialization.ClassLoaderUtility;
+import org.jboss.logging.Logger;
+
/**
* @author <a href="mailto:tom.elrod at jboss.com">Tom Elrod</a>
*/
@@ -29,6 +32,9 @@
{
private ClassLoader userClassLoader = null;
+ protected static final Logger log = Logger.getLogger(RemotingClassLoader.class);
+ protected static final boolean isTrace = log.isTraceEnabled();
+
public RemotingClassLoader(ClassLoader remotingClassLoader, ClassLoader userClassLoader)
{
super(remotingClassLoader);
@@ -41,16 +47,36 @@
try
{
- loadedClass = super.loadClass(name);
+ loadedClass = Class.forName(name, false, getParent());
}
catch(ClassNotFoundException e)
{
+ if(isTrace)
+ {
+ log.trace("Could not load class (" + name + ") using parent remoting class loader (" + getParent() + ")");
+ }
if(userClassLoader != null)
{
- loadedClass = userClassLoader.loadClass(name);
+ try
+ {
+ loadedClass = Class.forName(name, false, userClassLoader);
+ }
+ catch (ClassNotFoundException e1)
+ {
+ if(isTrace)
+ {
+ log.trace("Could not load class (" + name + ") using parent remoting class loader (" + getParent() + ")");
+ }
+ }
}
}
+ if(loadedClass == null)
+ {
+ loadedClass = ClassLoaderUtility.loadClass(name, getClass());
+ }
+
return loadedClass;
}
+
}
\ No newline at end of file
1.3.4.1 +7 -3 JBossRemoting/src/main/org/jboss/remoting/loading/ClassByteClassLoader.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: ClassByteClassLoader.java
===================================================================
RCS file: /cvsroot/jboss/JBossRemoting/src/main/org/jboss/remoting/loading/ClassByteClassLoader.java,v
retrieving revision 1.3
retrieving revision 1.3.4.1
diff -u -b -r1.3 -r1.3.4.1
--- ClassByteClassLoader.java 30 Dec 2005 05:26:29 -0000 1.3
+++ ClassByteClassLoader.java 12 Jan 2007 17:19:47 -0000 1.3.4.1
@@ -40,7 +40,7 @@
*
* @author <a href="mailto:jhaynie at vocalocity.net">Jeff Haynie</a>
* @author <a href="mailto:tom at jboss.org">Tom Elrod</a>
- * @version $Revision: 1.3 $
+ * @version $Revision: 1.3.4.1 $
*/
public class ClassByteClassLoader extends ClassLoader
{
@@ -178,12 +178,12 @@
{
return cl;
}
- cl = ClassLoader.getSystemClassLoader().loadClass(className);
+ cl = Class.forName(className, false, ClassLoader.getSystemClassLoader());
if(cl != null)
{
return cl;
}
- cl = super.loadClass(className, true);
+ cl = Class.forName(className, false, getParent());
if(cl != null)
{
return cl;
@@ -383,6 +383,10 @@
try
{
+ if(!loaderClient.isConnected())
+ {
+ loaderClient.connect();
+ }
Object obj = loaderClient.invoke(marshallerMethodName, metadata);
if(obj != null)
1.2.4.2 +4 -4 JBossRemoting/src/main/org/jboss/remoting/loading/ObjectInputStreamWithClassLoader.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: ObjectInputStreamWithClassLoader.java
===================================================================
RCS file: /cvsroot/jboss/JBossRemoting/src/main/org/jboss/remoting/loading/ObjectInputStreamWithClassLoader.java,v
retrieving revision 1.2.4.1
retrieving revision 1.2.4.2
diff -u -b -r1.2.4.1 -r1.2.4.2
--- ObjectInputStreamWithClassLoader.java 11 May 2006 20:39:42 -0000 1.2.4.1
+++ ObjectInputStreamWithClassLoader.java 12 Jan 2007 17:19:47 -0000 1.2.4.2
@@ -33,7 +33,7 @@
*
* @author <a href="mailto:jhaynie at vocalocity.net">Jeff Haynie</a>
* @author <a href="mailto:tom at jboss.org">Tom Elrod</a>
- * @version $Revision: 1.2.4.1 $
+ * @version $Revision: 1.2.4.2 $
*/
public class ObjectInputStreamWithClassLoader extends ObjectInputStream
{
@@ -133,10 +133,10 @@
}
else
{
- // EJBTHREE-440
+ // EJBTHREE-440 & JBREM-508
try
{
- return cl.loadClass(v.getName());
+ return Class.forName(v.getName(), false, cl);
}
catch(ClassNotFoundException ex)
{
@@ -210,7 +210,7 @@
Class[] classObjs = new Class[interfaces.length];
for(int i = 0; i < interfaces.length; i++)
{
- classObjs[i] = cl.loadClass(interfaces[i]);
+ classObjs[i] = Class.forName(interfaces[i], false, cl);
}
try
{
More information about the jboss-cvs-commits
mailing list