struts2 ognl извлекает данные из сеанса (вложенные теги свойств?)

У меня есть ситуация, когда я хотел бы получить данные из сеанса на jsp, используя OGNL. Данные в моем сеансе хранятся следующим образом:

/data/abc/-Name (ключ) -> ABC Inc. (значение)

Я могу легко получить это из сеанса, выполнив

<s:property value="#session['/data/abc/-Name']"/> 

Но, к сожалению, строка '/data/abc/' является динамической и хранится в моем экшене под переменной companyFolder.

Как использовать эту переменную для получения данных из сеанса... что-то вроде

<s:property value="#session['%{companyFolder}-Name']"/> // this didnt work
<s:property value="#session['<s:property value="%{companyFolder}"/>-Name']"/> // this didnt work

person sethu    schedule 26.11.2011    source источник


Ответы (1)


<s:property value="#session[companyFolder + '-Name']" />

Я бы, скорее всего, сделал это в действии, используя SessionAware. Это упрощает тестирование и позволяет избежать выполнения JSP, чтобы проверить, работает ли что-то.

person Dave Newton    schedule 26.11.2011