Обновление до Struts 2.3.15.1 не устанавливает значения HashMap для класса действий
Я обновился с 2.1.6 до 2.3.15.1 из-за исправлений безопасности, доступных в последней версии. Однако теперь значения полей формы не проводятся в классе Action. В основном я заселяюHashMap
props
из JSP в класс Action, когда форма отправлена. Когда я обновил версию Struts до 2.3.15.1, это не работает. Там не было никакого изменения кода. Когда я отладил код, я заметил, чтоsetProps
метод не вызывается. Разве это не разрешено? Есть ли обходной путь? Как только я возвращаю изменения в библиотеку стоек, все работает отлично. Пожалуйста помоги.
Вот как выглядит мой код:
Класс действий:
private Map<String, Wall> props;
public void prepare(){
//fill up props map here.
}
public String view(){
return INPUT;
}
public String save(){
myService.setProps(props);
return INPUT;
}
public void setProps(Map<String, Wall> props) {
this.props = props;
}
public Map<String, Wall> getProps() {
return props;
}
JSP:
<s:iterator value="props.entrySet()" id="prop" status="propStatus">
<s:textfield name="props['%{#prop.key}'].value" value="%{#prop.value.value}" />
</s:iterator>