diff --git a/src/main/java/fr/plil/sio/web/mvc/SecurityServiceImpl.java b/src/main/java/fr/plil/sio/web/mvc/SecurityServiceImpl.java index ebdc49b..f143f14 100644 --- a/src/main/java/fr/plil/sio/web/mvc/SecurityServiceImpl.java +++ b/src/main/java/fr/plil/sio/web/mvc/SecurityServiceImpl.java @@ -3,6 +3,7 @@ package fr.plil.sio.web.mvc; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.security.core.Authentication; import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.security.core.userdetails.UserDetails; import org.springframework.stereotype.Service; @@ -14,10 +15,18 @@ public class SecurityServiceImpl implements SecurityService{ @Override public String findLoggedInUsername() { - Object userDetails = SecurityContextHolder.getContext().getAuthentication().getPrincipal(); - if (userDetails instanceof UserDetails) { - return ((UserDetails)userDetails).getUsername(); + Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); + + if(authentication == null) { + return null; } + + Object principal = authentication.getPrincipal(); + + if (principal instanceof UserDetails) { + return ((UserDetails)principal).getUsername(); + } + logger.warn("cannot find logged user"); return null; } -- libgit2 0.21.2