Доступ к сеансу в методе проверки Spring

Я переношу свое приложение Struts на Spring. Во время миграции я наткнулся на метод проверки Struts, который необходимо перенести в Spring. Метод проверки Struts принимает параметры как сопоставление ActionMapping, запрос HttpServletRequest и использует сеанс объекта req, созданный в методе проверки Struts. Но метод проверки Spring принимает только параметры: Object target, Errors errors . Итак, как я могу создать объект сеанса в методе проверки Spring? Любая помощь приветствуется.

Спасибо!


person Soham    schedule 27.11.2017    source источник
comment
сопоставление метода с методом может быть неправильным подходом к переносу приложения с одной платформы на другую. Я бы рекомендовал создать простое приложение helloworld в Spring и перенести функциональность, а не методы. Вы также можете ознакомиться с руководством по проверке ввода пружинной формы здесь: spring.io/guides /gs/проверка ввода-формы   -  person Prashant Saraswat    schedule 28.11.2017


Ответы (1)


Вы можете получить сеанс, выполнив следующие действия.

ServletRequestAttributes attr = (ServletRequestAttributes) RequestContextHolder.currentRequestAttributes();
HttpSession session = attr.getRequest().getSession();

Я согласен с Прашантом в том, что миграция «один к одному» может быть не лучшим путем, но без дополнительного контекста трудно сказать.

person Sean Carroll    schedule 28.11.2017
comment
Я согласен со всеми вами, я не делаю сопоставление один к одному из Struts в Spring, я рефакторинг кода, где это необходимо, во время миграции, но объект сеанса был обязательным в методе проверки, так как некоторая проверка должна выполняться с помощью сеанса атрибуты. @Sean Carrol: Спасибо за решение, запустим код и посмотрим, работает ли он. Спасибо! - person Soham; 28.11.2017