Witam wszystkich forumowiczów.
Zwracam się z dość złożonym pytaniem, odnośnie aplikacji webowej w technologii JavaEE na serwerze Tomcat.
Mam taką sytuację: w aplikacji mając formularz logowania na stronie głównej (t.j. index.jsp) używając walidacji tomcata - form based authentication co powoduje użycie w atrybucie action="j_secutiry_check", gdzie odbywa się walidacja, następnie w pliku web.xml zdefiniowane są strony(lub serwlety) do których dostęp jest chroniony. Chciałbym, aby przekierowanie na owe strony nastąpiło własnie z tej strony głównej gdzie jest formularz(index.jsp) (bo wiem, ze idzie zrobić odnośnik typu"zaloguj" po którym pokaże się osobna strona z formularzem i wtedy przekieruje mnie na żądana stronę), ale mi właśnie chodzi o to, żeby działo się to na stronie głównej. Dzieje się tak, że jeżeli wpisze wartości do formularzy i kliknę zaloguj to przenosi mnie pod link .../j_secutiry_check który wyrzuca błąd przekierowania: „HTTP Status 400 - Invalid direct reference to form login page”, a jeżeli sam, ręcznie wpiszę link: .../login (tak nazywa sie serwlet odpowiedzialny za przekierowanie) to wtedy wypełniając formularz i logujac sie, prawidłowo przekierowuje mnie na żądaną stronę, więc moje pytanie brzmi: Czy jest możliwe rozwiązanie tego problemu używając tomcat-a? Z góry proszę nie odsyłajcie mnie na stacka, ponieważ nie znalazłem tam rozwiązania nie musząc używać glassfish-a, a jestem uparty i bardzo chciałbym zrobić aby działało logowanie ze strony głównej, z góry dziękuję za odpowiedzi i konstruktywną krytykę jeszcze podsyłam linki z fragmentami kodu:
fragment pliku index.jsp: https://pastebin.com/HMQnD0Pk
fragment pliku web.xml: https://pastebin.com/QFMdQaP0
Plik serwletu: https://pastebin.com/SCyWUns8