HTML <iframe>
в основном инструктирует веб-браузеру отправлять новый HTTP-запрос на указанный src
URL-адрес и вставлять его ответ. Он не выполняется по запросу родительской страницы JSP на веб-сервере. Таким образом, передача объектов в качестве атрибута запроса не будет работать. Сеанс будет работать только в том случае, если он уже установлен до , когда вы запрашиваете родительскую страницу JSP.
Я не понимаю, почему вы используете <iframe>
таким образом. Это очень плохой подход, когда единственной целью является включение фрагментов страницы, которые находятся на том же сервере, что и родительская страница. <iframe>
полезен только тогда, когда вы хотите встроить внешний контент в вашу веб-страницу.
Замените их включениями на стороне сервера, например <jsp:include>
, и все будет работать так, как вы изначально хотели.
<jsp:include page="jsp2.jsp" />
<jsp:include page="jsp3.jsp" />
Они будут включены в тот же HTTP-запрос и, следовательно, будут иметь доступ к его атрибутам. Преимущества большие. Ваша проблема будет немедленно решена, SEO будет значительно улучшено (контент <iframe>
не индексируется как часть родительской страницы), а также удобен для пользователей (более предсказуемое и надежное поведение веб-сайта, когда есть ссылки и формы внутри <iframe>
). * * тысячу двадцать-один