@Override
    @SuppressWarnings("rawtypes")
    @FFDCIgnore(ClassNotFoundException.class)
    public Class loadClass(String name, String codebase, ClassLoader loader) throws ClassNotFoundException {
        try {
            return super.loadClass(name, codebase, loader);
        } catch (ClassNotFoundException e) {
            // Fix #2: use context class loader to allow _Intf_Stub to be
            // loaded from a different loader than Intf (or to be dynamically
            // generated if needed).
            ClassLoader contextClassLoader = threadContextAccessor.getContextClassLoaderForUnprivileged(Thread.currentThread());
            if (contextClassLoader != loader && name.endsWith("_Stub")) {
                if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled())
                    Tr.debug(tc, "retrying with " + contextClassLoader);
                try {
                    return contextClassLoader.loadClass(name);
                } catch (ClassNotFoundException e2) {
                }
            }
            throw e;
        }
    }
@ Override @ SuppressWarnings ( "rawtypes" ) @ FFDCIgnore ( ClassNotFoundException . class ) public Class loadClass ( String name , String codebase , ClassLoader loader ) throws ClassNotFoundException { try { return super . loadClass ( name , codebase , loader ) ; } catch ( ClassNotFoundException e ) { ClassLoader contextClassLoader = threadContextAccessor . getContextClassLoaderForUnprivileged ( Thread . currentThread ( ) ) ; if ( contextClassLoader != loader && name . endsWith ( "_Stub" ) ) { if ( TraceComponent . isAnyTracingEnabled ( ) && tc . isDebugEnabled ( ) ) Tr . debug ( tc , "retrying with " + contextClassLoader ) ; try { return contextClassLoader . loadClass ( name ) ; } catch ( ClassNotFoundException e2 ) { } } throw e ; } }
FIXME: remove after fixing 152839