if (rmiBeanType != null) {
this.type = (Type) rmiBeanType.newInstance();
processedTypeMap.put(baseClass, this.type);
this.type.populateMetaData(configurator, processedTypeMap);
} else {
throw new MetaDataPopulateException("there is no type class for rmi class "
+ baseClass.getName());
}
} catch (NoSuchMethodException e) {
throw new MetaDataPopulateException("No getBeanClass method is not defined for " +
" rmi bean class " + baseClass.getName());
} catch (InvocationTargetException e) {
throw new MetaDataPopulateException("No getBeanClass method is not defined for " +
" rmi bean class " + baseClass.getName());
}
} else {
this.type = new TypeImpl(baseClass);
// we have to do this before calling to populate meta data
// to avoid cirecular references
processedTypeMap.put(baseClass, this.type);
this.type.populateMetaData(configurator, processedTypeMap);
}
} catch (IllegalAccessException e) {
throw new MetaDataPopulateException("Can not instataite class "
+ this.javaClass.getName(), e);
} catch (InstantiationException e) {
throw new MetaDataPopulateException("Can not instataite class "
+ this.javaClass.getName(), e);
}
}