Author: trustin
Date: Thu Dec 6 18:45:54 2007
New Revision: 601962
URL: http://svn.apache.org/viewvc?rev=601962&view=rev
Log:
Fixed issue: DIRMINA-488 (ClassLoader is not used to load the class in
ByteBuffer.getObject)
* Overridden resolveClass in IoBuffer.getObject(...) as advised
Modified:
mina/branches/1.0/core/src/main/java/org/apache/mina/common/ByteBuffer.java
mina/branches/1.1/core/src/main/java/org/apache/mina/common/ByteBuffer.java
mina/trunk/core/src/main/java/org/apache/mina/common/AbstractIoBuffer.java
Modified:
mina/branches/1.0/core/src/main/java/org/apache/mina/common/ByteBuffer.java
URL:
http://svn.apache.org/viewvc/mina/branches/1.0/core/src/main/java/org/apache/mina/common/ByteBuffer.java?rev=601962&r1=601961&r2=601962&view=diff
==============================================================================
--- mina/branches/1.0/core/src/main/java/org/apache/mina/common/ByteBuffer.java
(original)
+++ mina/branches/1.0/core/src/main/java/org/apache/mina/common/ByteBuffer.java
Thu Dec 6 18:45:54 2007
@@ -1512,6 +1512,15 @@
"Unexpected class descriptor type: " + type);
}
}
+
+ protected Class resolveClass(ObjectStreamClass desc) throws
IOException, ClassNotFoundException {
+ String name = desc.getName();
+ try {
+ return Class.forName(name, false, classLoader);
+ } catch (ClassNotFoundException ex) {
+ return super.resolveClass(desc);
+ }
+ }
};
return in.readObject();
} catch (IOException e) {
Modified:
mina/branches/1.1/core/src/main/java/org/apache/mina/common/ByteBuffer.java
URL:
http://svn.apache.org/viewvc/mina/branches/1.1/core/src/main/java/org/apache/mina/common/ByteBuffer.java?rev=601962&r1=601961&r2=601962&view=diff
==============================================================================
--- mina/branches/1.1/core/src/main/java/org/apache/mina/common/ByteBuffer.java
(original)
+++ mina/branches/1.1/core/src/main/java/org/apache/mina/common/ByteBuffer.java
Thu Dec 6 18:45:54 2007
@@ -1524,6 +1524,16 @@
"Unexpected class descriptor type: " + type);
}
}
+
+ @Override
+ protected Class<?> resolveClass(ObjectStreamClass desc) throws
IOException, ClassNotFoundException {
+ String name = desc.getName();
+ try {
+ return Class.forName(name, false, classLoader);
+ } catch (ClassNotFoundException ex) {
+ return super.resolveClass(desc);
+ }
+ }
};
return in.readObject();
} catch (IOException e) {
Modified:
mina/trunk/core/src/main/java/org/apache/mina/common/AbstractIoBuffer.java
URL:
http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/common/AbstractIoBuffer.java?rev=601962&r1=601961&r2=601962&view=diff
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/common/AbstractIoBuffer.java
(original)
+++ mina/trunk/core/src/main/java/org/apache/mina/common/AbstractIoBuffer.java
Thu Dec 6 18:45:54 2007
@@ -1524,6 +1524,16 @@
"Unexpected class descriptor type: " + type);
}
}
+
+ @Override
+ protected Class<?> resolveClass(ObjectStreamClass desc) throws
IOException, ClassNotFoundException {
+ String name = desc.getName();
+ try {
+ return Class.forName(name, false, classLoader);
+ } catch (ClassNotFoundException ex) {
+ return super.resolveClass(desc);
+ }
+ }
};
return in.readObject();
} catch (IOException e) {