docs: @Override
  	protected Class<?> resolveClass(ObjectStreamClass desc) throws IOException, ClassNotFoundException {
          String name = desc.getName();
  
  		try {
  			ClassLoader cl = Thread.currentThread().getContextClassLoader();
  			return Class.forName(name, false, cl);
  		} catch (Throwable ex) {
  			logger.debug("Cannot access thread context ClassLoader!", ex);
  		}
  		
  		try {
  			ClassLoader cl = MultiClassLoaderObjectInputStream.class.getClassLoader();
  			return Class.forName(name, false, cl);
  		} catch (Throwable ex) {
  			logger.debug("Cannot access application ClassLoader", ex);
  		}
  		
  		try {
  			ClassLoader cl = ClassLoader.getSystemClassLoader();
  			return Class.forName(name, false, cl);
  		} catch (Throwable ex) {
  			logger.debug("Cannot access system ClassLoader", ex);
  		}
  
          return super.resolveClass(desc);
      }