файлы cookie сессий сервлетов - PullRequest
0 голосов
/ 29 февраля 2012

У меня есть веб-сайт, на котором один сервлет JAVA подключается к системе аутентификации пользователя, а вторая страница JSP в iframe подключается к другому серверу (Apache Tomcat). Эти двое создают сессию, когда подключаются к серверам. Но когда я запускаю соединение с iframe, мой JSESSIONID сохраняется в том же файле cookie, который был создан первым сервлетом. Так что теперь я не могу подключиться к серверу авторизованного пользователя, потому что файл cookie, созданный в первую очередь, был изменен с помощью iframe, и теперь у меня есть все данные с двух серверов в одном файле cookie. Как я могу решить эту проблему? Я не могу переписать URL в базовый sessionID, потому что я не знаю, где он находится в этих приложениях. Может быть, я могу каким-то образом заставить Tomcat сохранять информацию о сеансе в другом файле cookie, и один сервлет будет получать информацию из одного файла cookie, а другой - из второго? Но как я могу это сделать?

1 Ответ

0 голосов
/ 29 февраля 2012

Кажется, у вас есть несколько экземпляров Tomcat, которые имеют одно и то же доменное имя, и у вас есть конфликт cookie сеанса.Чтобы решить эту проблему, вы можете изменить путь Cookie в конфигурации Tomcat

<Context ... sessionCookiePath="/some_path_1" > for Tomcat 1
<Context ... sessionCookiePath="/some_path_2" > for Tomcat 2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...