Концепция аутентификации Tomcat на основе форм заключается в том, что она перехватывает неаутентифицированные запросы на защищенные страницы и внутренне перенаправляет на отдельную страницу входа. Это также сохраняет исходный запрос страницы. После успешного входа в систему исходный запрос страницы воспроизводится и отображается защищенная страница.
То, чего вы пытаетесь достичь, - насколько я могу судить по вашему короткому описанию - нечто иное. В основном все ваши страницы общедоступны. При желании пользователь может войти в систему и затем получить персонализированные страницы.
Tomcat не поможет вам реализовать это. Когда вы используете действие j_security_check
, оно не сможет ничего сделать, потому что оно никогда не перехватывало запрос.
Вместо этого, возможно, проще проверить имя пользователя и пароль, если форма входа в систему отправлена. Если они в порядке, просто введите имя пользователя в свои данные сеанса. Аутентифицированный сеанс может быть легко распознан, поскольку он содержит имя пользователя в данных сеанса.
Возможно, существует даже способ повторно использовать области 1010 * Tomcat , например, такие как. возможность проверить имя пользователя и пароль по базе данных. Но я не знаю точно.