2013-04-10 2 views
0

У меня есть класс MyClass нижеОтправка объектов и списки struts1

public class MyClass { 
    private int fieldOne;  //with getter, setter 
    private String fieldTwo;  //with getter, setter 
} 

Я следующие два поля в моей форме боба

private MyClass myObject;   //with getter, setter 
private ArraList<MyClass>myList;  //with getter, setter 

Использование struts1 Я хочу представить объект и список объектов из формы веб-страницы.

В struts2 мы можем получить объект и список в действии, как показано ниже (учитывая, что поля не находятся в классе действий, а не в виде bean-компонента). Когда представлены следующие поля, struts2 инициирует myObject и myList для меня с представленными значениями. (Параметры перехватчик является магом за сценой в struts2.)

<!-- Object --> 
<input type="text" name="myObject.fieldOne" value="1" /> 
<input type="text" name="myObject.fieldTwo" value="Two" /> 
... 
<!-- List --> 
<input type="text" name="myList[0].fieldOne" value="1" /> 
<input type="text" name="myList[0].fieldTwo" value="Two" /> 

<input type="text" name="myList[1].fieldOne" value="10" /> 
<input type="text" name="myList[1].fieldTwo" value="Twenty" /> 

Есть ли способ, чтобы выполнить такую ​​магию в struts1?

ответ

1

AFAIR, то же самое будет работать в Struts1, при условии, что список в вашем bean-компоненте формы содержит список, который уже имеет нужный размер. То есть если последний текст ввода имеет имя myList[7].fieldOne, список должен иметь размер 8 по крайней мере и, таким образом, быть предварительно заполнен с помощью 8 MyClass экземпляров. STruts будет делать только formBean.getMyList().get(7).setFieldOne(10).

Для получения более подробной информации см. http://struts.apache.org/development/1.x/struts-taglib/indexedprops.html.

Смежные вопросы