private void populateAuthentication(SecurityContext sc, String id) { try { UserDetails userDetails = userDetailsService.loadUserByUsername(id); sc.setAuthentication(new UsernamePasswordAuthenticationToken(userDetails, "", userDetails.getAuthorities())); } catch (UsernameNotFoundException e) { e.printStackTrace(); } }
@PreAuthorize("hasRole('USER')") @DeleteMapping(path = "/api/user/remove", produces = "application/json") public ResponseEntity<?> removeUser() { try { accountService.removeAuthenticatedAccount(); return new ResponseEntity<Object>(new RestResponse("User removed."), HttpStatus.OK); } catch (UsernameNotFoundException e) { e.printStackTrace(); return new ResponseEntity<Object>(new RestError(e.getMessage()), HttpStatus.OK); } }