code: protected ClassDescriptor discoverDescriptor(String className)
      {
          ClassDescriptor result = (ClassDescriptor) descriptorTable.get(className);
          if (result == null)
          {
              Class clazz;
              try
              {
                  clazz = ClassHelper.getClass(className, true);
              }
              catch (ClassNotFoundException e)
              {
                  throw new OJBRuntimeException("Class, " + className + ", could not be found.", e);
              }
              result = discoverDescriptor(clazz);
           }
          return result;
      }
docs: Starts by looking to see if the <code>className</code> is
  already mapped specifically to the descritpor repository.
  If the <code>className</code> is not specifically mapped we
  look at the <code>className</code>'s parent class for a mapping.
  We do this until the parent class is of the type
  <code>java.lang.Object</code>.  If no mapping was found,
  <code>null</code> is returned.  Mappings successfuly discovered
  through inheritence are added to the internal table of
  class descriptors to improve performance on subsequent requests
  for those classes.
  
  <br/>
  author <a href="mailto:weaver@apache.org">Scott T. Weaver</a>
  @param className name of class whose descriptor we need to find.
  @return ClassDescriptor for <code>className</code> or <code>null</code>
  if no ClassDescriptor could be located.