cglib/src/main/java/net/sf/cglib/proxy/MethodProxy.java
public Object invokeSuper(Object obj, Object[] args) throws Throwable {
        try {
            init();
            FastClassInfo fci = fastClassInfo;
            return fci.f2.invoke(fci.i2, obj, args);
        } catch (InvocationTargetException e) {
            throw e.getTargetException();
        }
    }
public Object invokeSuper(Object obj, Object[] args) throws Throwable {
        try {
            init();
            FastClassInfo fci = fastClassInfo;
            return fci.f2.invoke(fci.i2, obj, args);
        } catch (InvocationTargetException e) {
            throw e.getTargetException();
        }
    }
Invoke the original (super) method on the specified object.
@param obj the enhanced object, must be the object passed as the first
argument to the MethodInterceptor
@param args the arguments passed to the intercepted method; you may substitute a different
argument array as long as the types are compatible
@see MethodInterceptor#intercept
@throws Throwable the bare exceptions thrown by the called method are passed through
without wrapping in an <code>InvocationTargetException</code>