Исправлено. Очень странный результат, но часть веб-службы Axis2 оказалась полной красной селедкой. Проблема заключалась в том, что я использовал другой экземпляр Chrome для вызова веб-службы (используя другое веб-приложение).
Это второе приложение работало с тем же URL-адресом, но с другим портом (8080 вместо 80 по умолчанию). Может показаться, что браузеры (не только Chrome) управляют сессиями на основе A. домена (например, www.stackoverflow.com или localhost в моем случае) и B. пути (то есть имени веб-приложения в Tomcat).
Он НЕ делает различий между доменами, работающими на разных портах, поэтому Chrome запутался, когда у меня было открыто два окна: одно указывало на localhost / webapp, а другое - на localhost: 8080 / webapp. Что касается Chrome, то это был один и тот же сайт, и поэтому каждый продолжал перезаписывать идентификатор сеанса другого.
Какой беспорядок!