code: private Object getPlainDBObject(ClassDescriptor cld, Identity oid) throws ClassNotPersistenceCapableException
      {
          Object newObj = null;
  
          // Class is NOT an Interface: it has a directly mapped table and we lookup this table first:
          if (!cld.isInterface())
          {
              // 1. try to retrieve skalar fields from directly mapped table columns
              newObj = dbAccess.materializeObject(cld, oid);
          }
  
          // if we did not find the object yet AND if the cld represents an Extent,
          // we can lookup all tables of the extent classes:
          if (newObj == null && cld.isExtent())
          {
              Iterator extents = getDescriptorRepository().getAllConcreteSubclassDescriptors(cld).iterator();
  
              while (extents.hasNext())
              {
                  ClassDescriptor extCld = (ClassDescriptor) extents.next();
  
                  newObj = dbAccess.materializeObject(extCld, oid);
                  if (newObj != null)
                  {
                      break;
                  }
              }
          }
          return newObj;
      }
docs: Retrieve an plain object (without populated references) by it's identity
  from the database
  
  @param cld the real {@link org.apache.ojb.broker.metadata.ClassDescriptor} of the object to refresh
  @param oid the {@link org.apache.ojb.broker.Identity} of the object
  @return A new plain object read from the database or <em>null</em> if not found
  @throws ClassNotPersistenceCapableException