2010-11-18 4 views
0

Нечетный этот. У меня есть приложение сервлета, работающее под Tomcat с Axis2. Приложение также предоставляет веб-сервис (через Axis2).Сбой при потере пароля при доступе к веб-службе Axis2

Теперь Tomcat обрабатывает управление сеансом без проблем, как обычно, при вызове веб-службы случайным образом все сеансы выглядят недействительными. Кроме того, afaik, это происходит только в Chrome! В следующий раз, когда клиент Chrome сделает запрос, ему будет передан новый сеанс Tomcat.

Это происходит после каждого вызова веб-службы, но не влияет на сеансы в Firefox или Safari.

Любые идеи? Для меня это крайне затруднительно.

Заранее благодарен

ответ

0

Исправлено. Очень странный результат, но часть Axis2/web service была полной красной селедкой. Проблема заключалась в том, что я использовал другой экземпляр Chrome для вызова веб-службы (используя другое веб-приложение).

Это приложение было запущено по этому же URL-адресу, но на другом порту (8080 вместо 80 по умолчанию). Казалось бы, браузеры (а не только Chrome) управляют сеансами на основе A. домена (например, www.stackoverflow.com или localhost в моем случае) и B. пути (то есть имя веб-приложения в Tomcat).

Это не делает различия между доменами, работающими на разных портах, поэтому Chrome стал путаным, когда у меня было два открытых окна, один указал на localhost/webapp, а другой указал на localhost: 8080/webapp. Что касается Chrome, это был тот же сайт, и поэтому каждый из них переписывал идентификатор сеанса другого.

Какой беспорядок!

Смежные вопросы