java 中报错 ~[classes/:na]

java 中报错 ~[classes/:na]

java.lang.NullPointerException: null
	at org.asu.pro.bean.Hr.getAuthorities(Hr.java:31) ~[classes/:na]
	at org.springframework.security.authentication.dao.AbstractUserDetailsAuthenticationProvider.createSuccessAuthentication(AbstractUserDetailsAuthenticationProvider.java:225) ~[spring-security-core-5.3.2.RELEASE.jar:5.3.2.RELEASE]
	at org.springframework.security.authentication.dao.DaoAuthenticationProvider.createSuccessAuthentication(DaoAuthenticationProvider.java:137) ~[spring-security-core-5.3.2.RELEASE.jar:5.3.2.RELEASE]
	at org.springframework.security.authentication.dao.AbstractUserDetailsAuthenticationProvider.authenticate(AbstractUserDetailsAuthenticationProvider.java:197) ~[spring-security-core-5.3.2.RELEASE.jar:5.3.2.RELEASE]
	at org.springframework.security.authentication.ProviderManager.authenticate(ProviderManager.java:199) ~[spring-security-core-5.3.2.RELEASE.jar:5.3.2.RELEASE]
	

主要需要值得注意的是NullPointerException空指针异常,去getAttributes()方法中:

List<SimpleGrantedAuthority> authorities = new ArrayList<>();
for(Role role:roles){
    
    
    authorities.add(new SimpleGrantedAuthority(role.getName()));
}
return authorities;

空指针异常报错的是第31行,也就是:

for(Role role:roles){
    
    }

那么就是其中的roles是空的,里面没有值所以会报这个错误,也就是前面忘了进行赋值。

猜你喜欢

转载自blog.csdn.net/suandyanr/article/details/106905874