Struts 2, как ссылаться на значение с динамическим именем в стеке значений

Скажем, в наборе значений стоек 2 есть значение; когда мы кодируем jsp, мы не знаем, каково точное имя переменной этого значения, но мы знаем только, что имя переменной этого значения сохраняется в другом имени переменной, скажем, «XXX».

Вопрос в том, как получить значение с помощью «XXX», я пытаюсь это сделать, но это не работает.

<s:property value="${XXX}"/>

person acoolme    schedule 19.10.2011    source источник
comment
Нет ли способа реорганизовать ваше действие, чтобы в первую очередь стандартизировать способ сохранения переменной? Это было бы более простым решением.   -  person Vincent Ramdhanie    schedule 19.10.2011


Ответы (1)


Действие упорядочивает данные для представления, поэтому оно должно выполнять обработку для получения необходимых данных. Судя по звуку, действие может собрать соответствующие данные на карту.

Однако есть странные случаи, и у вас может быть один. Но прежде чем обращаться к этому, если у вас есть только имя переменной, где можно предположить, что настоящая переменная? Находится ли он в стеке значений (и если да, то что мешает вам получить к нему прямой доступ)? Если его нет в стеке значений, вам нужно включить оценку статического метода и создать соответствующий статический метод, поскольку вам предоставляется только имя переменной и предполагается, что это свойство java-бина, которое вам понадобится использовать отражение или apache beanutils.

В общем, лучше получить то, что вам нужно в действии для ваших просмотров.

Кроме того, чтобы установить значение в вашем jsp, вы знаете о теге set struts2 (это, вероятно, не то, что вам нужно, но был небольшой шанс, что это так, поэтому я включил его)? См.: http://struts.apache.org/2.2.3.1/docs/set.html

person Quaternion    schedule 20.10.2011