[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