为了账号安全,请及时绑定邮箱和手机立即绑定

Exception 强转 BusinessException 不成功 java.lang.ClassCastException: java.lang.NullPointerException cannot be cast to com.dmsc.error.BusinessException at com.dmsc.conrtoller.UserConrtoller.handlerException(UserConrtoller.java:46) ~[classes/:na]

@ExceptionHandler(Exception.class)  

@ResponseStatus(HttpStatus.OK)

@ResponseBody

public Object handlerException(HttpServletRequest repuest,Exception ex){

BusinessException businessException = (BusinessException) ex;

CommonReyurnType type = new CommonReyurnType();

/* Map<String, Object> map  = new HashMap<>(); 

map.put("errcode", businessException.getErrCode());

map.put("errmsg", businessException.getErrMsg());*/

type.setStatus("fail");

type.setData(ex);

return type;

}


正在回答

5 回答

UserServiceImpl.java的改成這樣就行了
UserDo userDo = userDoMapper.selectByPrimaryKey(id);
if(userDo==null){
    return null;
}
UserPasswordDo userPasswordDo = userPasswordDoMapper.selectByUserId(userDo.getId());
if (userPasswordDo==null){
    return null;
}
return convertFromDataobject(userDo,userPasswordDo);}


2 回复 有任何疑惑可以回复我~
#1

qq_忘了怎样洒脱_KLVX57

BusinessException businessException = (BusinessException)ex; 我这一步获得的ex一直是null,就一直很纳闷,找了好久,在impl里面加了像你一样的两个判空,就不会了,非常感谢!!!!!
2020-03-08 回复 有任何疑惑可以回复我~
#2

qq_忘了怎样洒脱_KLVX57

可是我还有一个疑惑,为什么第一个判空注释了,但是第二个判空留着了,为什么ex还是null呢
2020-03-08 回复 有任何疑惑可以回复我~
#3

qq_忘了怎样洒脱_KLVX57 回复 qq_忘了怎样洒脱_KLVX57

我已经知道了,哈哈,只注释第一个,到了查询密码的时候,那就是空指针异常了
2020-03-08 回复 有任何疑惑可以回复我~

我也是这个问题

0 回复 有任何疑惑可以回复我~

同样问题

0 回复 有任何疑惑可以回复我~
#1

瑾凉丶

convertFromModel方法中Model转换成viewObject方法中,Model当空时候没有判空,导致转换报错,并没有走到下面抛异常方法。报错报的也是转换异常造成的
2019-07-09 回复 有任何疑惑可以回复我~

解决问题了么?

同样这个问题

0 回复 有任何疑惑可以回复我~
#1

瑾凉丶

convertFromModel方法中Model转换成viewObject方法中,Model当空时候没有判空,导致转换报错,并没有走到下面抛异常方法。报错报的也是转换异常造成的
2019-07-09 回复 有任何疑惑可以回复我~

传参的时候没传ex,你看看ex是不是null

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

Exception 强转 BusinessException 不成功 java.lang.ClassCastException: java.lang.NullPointerException cannot be cast to com.dmsc.error.BusinessException at com.dmsc.conrtoller.UserConrtoller.handlerException(UserConrtoller.java:46) ~[classes/:na]

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信