Срок действия странной страницы портлета JSR168 истекает
У меня странная проблема и мне не повезло в отладке.
Мне было поручено написать JSR168-совместимый портлет для поиска в базе данных. Когда вы открываете портлет, вы получаете 6 полей поиска по различным критериям для поиска в нескольких тысячах записей. После того, как вы нажмете кнопку поиска, появится другая страница (она сохранит первую страницу и использует <jsp: include>
для второй страницы, чтобы пользователи могли видеть / изменять свои условия поиска) с результатами поиска. На странице результатов поиска пользователь может щелкнуть один из результатов (который перенаправляет на новую страницу) и получить более подробную информацию о нем.
Все это работает. Проблема в том, когда пользователь хочет искать снова.
Когда я разработал это, я использовал LifeRay, установленный на моей локальной машине. Все отлично работает в IE, Firefox и Chrome. Однако, когда я развернул его на нашем портале разработки (IBM WebSphere), он не совсем работает в IE. В Firefox/Chrome, когда пользователь находится на странице подробной информации, он может нанести ответный удар по своему браузеру, и он загружает кэшированную версию результатов поиска. Идеально, потому что этот контент редко меняется.
Однако в IE, когда они нажимают кнопку "Назад" в подробном представлении, мы получаем "Сообщение об истечении срока действия веб-страницы". Я испробовал все настройки кэширования в настройках портала для портлета, а также для страницы, но мне не повезло.
У кого-нибудь есть идеи?
2 ответа
Также есть настройки на уровне портала. Проверьте следующую ссылку http://publib.boulder.ibm.com/infocenter/wpdoc/v6r0/index.jsp?topic=/com.ibm.wp.ent.doc/wps/adbakbut.html
Вы можете попробовать настроить некоторые из этих параметров, как того требуют ваши портлеты.
"Сообщение об истечении срока действия веб-страницы" в IE означает, что вы выполнили POST. Вы можете попробовать использовать GET, у которого не должно быть этой проблемы по команде "назад".
Вам следует установить WebSphere Portal на компьютере разработчика и выполнить локальное тестирование, прежде чем переходить в другую среду.