1. 程式人生 > >spring整合了mybatis、shiro,寫的授權認證方法一直無法執行卻也不報錯的問題

spring整合了mybatis、shiro,寫的授權認證方法一直無法執行卻也不報錯的問題

今天發現一個奇怪的問題,就是在service實現類寫了這麼一個方法: @RequiresPermissions(“sys:user:update”) @Override public int validById(Integer id, Integer valid, String modifiedUser) { //1.引數合法性校驗 if(idnull||id<1) throw new IllegalArgumentException(“id值無效”); if(validnull||(valid!=0&&valid!=1)) throw new IllegalArgumentException(“使用者狀態值不合法”);

//2.執行狀態更新操作 int rows=sysUserDao.validById(id, valid, modifiedUser); if(rows==0)throw new ServiceException(“記錄可能已經不存在”); //3.驗證結果,並返回 return rows; } 按理說,寫了@RequiresPermissions註釋,會在前端頁面通過按鈕註冊事件呼叫到此方法的時候,會進入realm的protected AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection principals){}方法裡進行獲取使用者的許可權資訊。但是我這個方法一直不執行。在裡面寫的System.out.println(permissions);語句也無法列印。 最後發現竟然是它造成的: 在這裡插入圖片描述
這玩意的功能好像是自動釋出吧。不勾選的話就會造成一些錯誤。之前因為嫌它卡給它去掉了??反正勾上之後功能就正常了。