Когда пользователь, не прошедший проверку подлинности, запросит некоторые ресурсы, он будет перенаправлен на страницу входа в систему, но j_security_check
сохранит исходный запрошенный ресурс. Если пользователь успешно зарегистрирован, он будет перенаправлен на этот ресурс.Как изменить исходную страницу запроса, используемую j_security_check?
Проблема в том, что иногда запрашиваемый ресурс является динамическим, поэтому он может и не существовать. У меня есть много мест в моем приложении с таким поведением, поэтому вместо проверки этого в каждом «обработчике ресурсов» (контроллере) мы пытаемся централизовать всю эту логику в фильтре, который перехватывает j_security_check
на страницу входа.
Теперь, как мы можем получить исходный запрошенный ресурс, хранящийся в механизме аутентификации на основе форм? Это зависит от поставщика?
Другой вариант:
Если я могу запустить фильтр перед j_security_check
я не могу изменять URL, но я могу отправить перенаправление пользователя с «действительным URL». Но как я могу выполнить фильтр до j_security_check
?
Это ресурсы: файлы, такие как изображения, pdf и т. Д. (Это CMS). Как я уже сказал, у нас есть один контроллер для каждого типа ресурса. Но у нас их так много, что мы пытаемся централизовать эту логику в одном фильтре. Я знаю, что для этого мы можем добавить «фронт-контроллер» с «сервисом для рабочего», но с фильтром мы можем добавить эту функцию без изменения какого-либо модуля («фильтр перехвата»). Возможно, мы пропустили что-то в дизайне, поэтому я начну еще один рассказ об этом, но даже с архитектурным решением я нашел интересным, зная, как работать с j_security_check :-D – ggarciao