// otherwise invoke the java.lang.Object no args constructor. However, that will fail
// on the most recent versions of the JDK (1.6.0_u34 and 1.7.0_u5 and newer). For the
// newer JDK's, there is NOTHING we can do and the proxy will fail.
Constructor<?> cons = superclassClass.getDeclaredConstructor();
if (!Modifier.isPrivate(cons.getModifiers())) {
methodAdapter.invokeConstructor(Type.getType(superclassClass), new Method("<init>", Type.VOID_TYPE, NO_ARGS));
} else {
methodAdapter.invokeConstructor(OBJECT_TYPE, new Method("<init>", Type.VOID_TYPE, NO_ARGS));
}
} catch (Exception e) {
methodAdapter.invokeConstructor(OBJECT_TYPE, new Method("<init>", Type.VOID_TYPE, NO_ARGS));