2018.4.24开发遇到的问题

1. 碰到了一个极其奇怪的问题

No constructor found in javax.management.relation.Role matching [java.lang.Integer, java.lang.String]

结果发现是引用的Role包出错了,我是不是傻子???

2. 又遇到另外一个问题:

我在切面中抛出自己创建的异常,最后用spring boot的统一异常处理代码来处理异常,结果发现总是没办法获取到异常。报错如下:

java.lang.reflect.UndeclaredThrowableException  

结果发现,其实是代理模式(Proxy)搞得鬼,Proxy给我们的异常外面添加了一层外套,然后自己定义的代码就没办法识别它了,所以我是这样解决的。

     @ExceptionHandler(value = Exception.class)
     @ResponseBody
     public ModelAndView handler( Exception e){
       
       ModelAndView modelAndView = new ModelAndView();
       RequestException requestException = (RequestException) e.getCause();//通过getCause()函数来获取最初的造成异常的原因,这样就能正确的处理我们自己定义的异常了,真的是很秀啊
        
       modelAndView.addObject("error",requestException.getError().errorMessage);
       modelAndView.setViewName("html/error");
       return modelAndView;
           
     }

 

转载于:https://www.cnblogs.com/cjjjj/p/8929094.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值