try {
Constructor c = Class.forName(fullyQualifiedClassName).getConstructor(Properties.class);
invoiceTypeProcessUnit = (InvoiceTypeProcessUnit) c.newInstance(properties);
} catch (ClassNotFoundException e) {
throw new FailedToCreateObjectException(e.getMessage(), e);
} catch (NoSuchMethodException e) {
throw new FailedToCreateObjectException(e.getMessage(), e);
} catch (InvocationTargetException e) {
throw new FailedToCreateObjectException(e.getMessage(), e);
} catch (InstantiationException e) {
throw new FailedToCreateObjectException(e.getMessage(), e);
} catch (IllegalAccessException e) {
throw new FailedToCreateObjectException(e.getMessage(), e);
}
return invoiceTypeProcessUnit;
}