Google资深架构师 2021-04-22 23:24 采纳率: 25%
浏览 2063

Cannot evaluate com.sun.proxy.$Proxy5.toString()

 

手写spring框架的时候,在JdkDynamicAopProxy的时候报了Method threw 'java.lang.ClassCastException' exception. Cannot evaluate com.sun.proxy.$Proxy5.toString()

在我执行完这一行的时候报了上面的错误

  • 写回答

4条回答 默认 最新

  • Google资深架构师 2021-04-23 19:36
    关注
    package com.john.mvcframework.aop;
    
    import com.john.mvcframework.aop.intercept.JMethodInvocation;
    import com.john.mvcframework.aop.support.JAdvisedSupport;
    
    import java.lang.reflect.InvocationHandler;
    import java.lang.reflect.Method;
    import java.lang.reflect.Proxy;
    import java.util.List;
    
    /**
     * @author : yumin
     * @date : 2021-04-20 20:51
     **/
    public class JJdkDynamicAopProxy implements JAopProxy, InvocationHandler {
    
        //AdvisedSupport中保存着aop的配置信息以及代理对象的信息
        private JAdvisedSupport advised;
    
        public JJdkDynamicAopProxy(JAdvisedSupport advised) {
            this.advised = advised;
        }
    
        @Override
        public Object getProxy() {
            return getProxy(this.getClass().getClassLoader());
        }
    
        @Override
        public Object getProxy(ClassLoader classLoader) {
            return Proxy.newProxyInstance(classLoader, this.advised.getTargetClass().getInterfaces(), this);
        }
    
        @Override
        public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
            List<Object> chain = this.advised.getInterceptorsAndDynamicInterceptionAdvice(method, this.advised.getTargetClass());
    
            JMethodInvocation mi = new JMethodInvocation(proxy, this.advised.getTarget(), method, args, this.advised.getTargetClass(), chain);
            return mi;
        }
    
    }
    
    评论

报告相同问题?

悬赏问题

  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?
  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮