[jboss-cvs] javassist/src/main/javassist/util/proxy ...
Shigeru Chiba
chiba at is.titech.ac.jp
Sat Apr 4 13:05:51 EDT 2009
User: chiba
Date: 09/04/04 13:05:51
Modified: src/main/javassist/util/proxy SerializedProxy.java
Log:
for fixing JASSIST-75
Revision Changes Path
1.4 +16 -3 javassist/src/main/javassist/util/proxy/SerializedProxy.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: SerializedProxy.java
===================================================================
RCS file: /cvsroot/jboss/javassist/src/main/javassist/util/proxy/SerializedProxy.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- SerializedProxy.java 26 Mar 2009 12:20:43 -0000 1.3
+++ SerializedProxy.java 4 Apr 2009 17:05:51 -0000 1.4
@@ -17,6 +17,10 @@
import java.io.Serializable;
import java.io.ObjectStreamException;
+import java.security.AccessController;
+import java.security.PrivilegedActionException;
+import java.security.PrivilegedExceptionAction;
+import java.security.ProtectionDomain;
/**
* A proxy object is converted into an instance of this class
@@ -52,9 +56,18 @@
* @return loaded class
* @throws ClassNotFoundException for any error
*/
- protected Class loadClass(String className) throws ClassNotFoundException {
+ protected Class loadClass(final String className) throws ClassNotFoundException {
+ try {
+ return (Class)AccessController.doPrivileged(new PrivilegedExceptionAction(){
+ public Object run() throws Exception{
ClassLoader cl = Thread.currentThread().getContextClassLoader();
- return cl.loadClass(className);
+ return Class.forName(className, true, cl);
+ }
+ });
+ }
+ catch (PrivilegedActionException pae) {
+ throw new RuntimeException("cannot load the class: " + className, pae.getException());
+ }
}
Object readResolve() throws ObjectStreamException {
More information about the jboss-cvs-commits
mailing list