Can anyone explain me the difference between HttpServletRequest's getUserPrincipal() and getRemoteUser().
As per the api,
getRemoteUser(): Returns the login of the user making this request, if the user has been authenticated, or null if the user has not been authenticated.
getUserPrincipal: Returns a java.security.Principal object containing the name of the current authenticated user.
The Principal class has a method getName() that returns the name of the principal.
I would like to know under what scenarios these two methods of HttpServletRequest should be used and why.
The reason why i ask is because i need to get the userid of the user who has logged into the application. The application i'm developing is not a dummy application. It is to be used by real people in real scenario. so i need to know the feature of these two methods before i use any one of them.