result = (IPersistable) constructor.newInstance(in);
} catch (NoSuchMethodException err) {
// No valid constructor found, use empty
// constructor.
result = (IPersistable) theClass.newInstance();
result.deserialize(in);
} catch (InvocationTargetException err) {
// Error while invoking found constructor, use empty
// constructor.
result = (IPersistable) theClass.newInstance();
result.deserialize(in);