У меня была очень похожая необходимость доступа к HttpSession
в потоке.Вот как я это сделал:
Сначала взгляните на специальную переменную EL externalContext
:
externalContext
Это дает вам один из следующих вариантов:они:
org.springframework.webflow.context.ExternalContext
Интерфейс ExternalContext
предоставляет метод с именем getNativeRequest()
, который должен вернуть вам объект HttpRequest
.(по крайней мере в weblflow 2.0.x)
Вот javadoc: http://static.springsource.org/spring-webflow/docs/2.0.x/javadoc-api/org/springframework/webflow/context/ExternalContext.html#getNativeRequest()
Итак, это означает, что вы должны иметь возможность создать выражение, используя что-то вроде этого:
<evaluate expression="externalContext.nativeRequest.session" result="flowScope.information"/>
В качестве простого теста вы можете использовать такое выражение:
expression="externalContext.nativeRequest.session.id"
для передачи идентификатора сеанса методу.
Конечно, вы можете использовать аналогичный EL для передачи сеанса в методы и т. Д.