docs: protected Class<?> loadClass(String className) throws ClassNotFoundException {
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) {
              Tr.entry(tc, "loadClass", className);
          }
          Class<?> theClass = null;
          try {
              if (appClassloader != null) {
                  if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) {
                      Tr.debug(tc, "Class loader to be used " + appClassloader);
                  }
                  theClass = Class.forName(className, true, appClassloader);
              } else {
                  // Unexpected, so you need to use the context class loader
                  ClassLoader cl = getContextClassLoader();
                  if (TraceComponent.isAnyTracingEnabled() && tc.isDebugEnabled()) {
                      Tr.debug(tc, "appClassloader is null, so try using context class loader " + cl);
                  }
                  theClass = Class.forName(className, true, cl);
              }
          } catch (ClassNotFoundException cnfe) {
              Tr.error(tc, BVNLSConstants.BVKEY_CLASS_NOT_FOUND, new Object[] { ivBVContext.getPath(), className, cnfe });
              if (TraceComponent.isAnyTracingEnabled() && tc.isEventEnabled()) {
                  Tr.event(tc, "Unable to create a ValidationFactory", cnfe);
              }
              throw cnfe;
          }
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) {
              Tr.exit(tc, "loadClass", theClass);
          }
          return theClass;
  
      }