public static Class[] getInstantiableSubclasses(Class superclass)
throws IOException, ClassNotFoundException {
ArrayList instantiableSubclasses = new ArrayList();
List classes = findClassesThatExtend(superclass);
Set<String> uniq = new HashSet<String>(classes);
classes.clear();
classes.addAll(uniq);
Collections.sort(classes);
for (Iterator iter = classes.iterator(); iter.hasNext();) {
String className = (String) iter.next();
try {