если вы используете httpServletRequest.setAttribute (); тогда атрибут будет привязан к этому объекту запроса,
в то время как в httpServletSession.setAttribute();
свяжет attr. в сессии.
поэтому, если вы хотите, чтобы область этих данных использовалась для сеанса, используйте session
или если вам нужна область этих данных для простого запроса использования request
Например:
Имя пользователя вошедшего в систему пользователя должно быть общим для сеанса, поэтому оставьте его в session
while, сообщение об ошибке, которое вы даете пользователю при рассмотрении случая сбоя аутентификации, необходимо для этого запроса только после того, как нам не нужно, поэтому оставьте его в request