} catch (InvocationTargetException e) {
throw new IllegalArgumentException(e.getTargetException());
} catch (InstantiationException e) {
if (isAbstractOrInterface(c)) {
// This is the same exception that is being used in the TypeSafetyPolicy
throw new InvalidEntityTypeException("Unable to legally create entity : abstract/interface class specified : " + c);
}
throw new IllegalArgumentException(e);
} catch (Exception e) {
throw new IllegalArgumentException(e);
}