Struts 2, как ссылаться на значение с динамическим именем в стеке значений - PullRequest
0 голосов
/ 19 октября 2011

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

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

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

1 Ответ

0 голосов
/ 20 октября 2011

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

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

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

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

...