как установить значение текстового поля, которое будет использоваться в итераторе - PullRequest
0 голосов
/ 20 января 2012
private Integer[] routeId; private String[] routeName;

Я объявил этот массив и установщик получателя.Теперь я хочу установить его значения в итераторе следующим образом:

Iterator<Object> iter=tManager.getApprovedTourPlan(staffId,9).iterator();  
 tourList=new ArrayList<TourPlan>();  
 int i=0;  while(iter.hasNext())  { 
                Object[] tour = (Object[]) iter.next();   
                TourPlan tp=new TourPlan();    
                tp.setRouteId(0);
                tp.setRouteName("asd");  
                tourList.add(tp);
       }

А на jsp я буду использовать:

 <s:iterator list="tourList" var="tour"> <s:property
     name="#tour.routeId"> <s:property name="#tour.routeName">
 </s:iterator>

Но когда я установлю значения:

tp.setRouteId(0);  
tp.setRouteName("asd");

Я не могу установить значения, потому что они принимают массив.Пожалуйста, скажите мне, как справиться с этим.

1 Ответ

1 голос
/ 22 января 2012

Из того, что я получаю, все, что вам нужно, это вложенные итераторы, они будут выглядеть примерно так

<s:iterator value="lstBean" id="lstBean" status="outerStat">
        <s:textfield value="%{name}" name="lstBean[%{#outerStat.index}].name"/>
        <s:textfield value="%{amt}" name="lstBean[%{#outerStat.index}].amt"/>
        <s:textfield value="%{id}" name="lstBean[%{#outerStat.index}].id"/>
        <s:iterator value="%{lstString}" status="myStat">
            <s:textfield name="lstBean[%{#outerStat.index}].lstString[%{#myStat.index}]"/>
        </s:iterator>
    </s:iterator>

и

class XBean
{
    private ArrayList<String> lstString=new ArrayList<String>();
    private String name;
    private Double amt;
    private Integer id;
}

Примеры

http://www.onlinexamples.com/showfullexample.action?idexamples=10&title=Nested%20Iterators%20Example

http://www.onlinexamples.com/showfullexample.action?idexamples=11&title=Iterator%20over%20an%20array/list%20of%20objects/beans

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...