Свойство выходного параметрического компонента с тегами Struts

Я получил боб beanName и переменная paramName который содержит имя свойства, которое будет использоваться так, чтобы:

<s:textfield name="%{'beanName.' + paramName}"/>

выходы (данные paramName == "year" а также beanName.getYear() == 1976):

<input type="text" name="beanName.year" value="1976" >

Как я должен использовать <s:property> вывести одно и то же значение свойства?

Я полагаю, что:

<s:push value="beanName">
   <s:property value="%{paramName}"/>
</s:push>

сделал бы это, но он просто пишет paramName значение.

1 ответ

Решение

Вам нужно оценить paramName сначала, прежде чем использовать его, чтобы получить значение из боба.

Используйте квадратные скобки для этого:

<s:property value="beanName[paramName]" />

OGNL в первую очередь получает значение paramName а затем получает значение от beanName с этой разрешенной переменной.

Другие вопросы по тегам