我在jsp中有一个属性,如下所示

   <html:text property="sequenceNumbersMap[0]"  styleId="sequenceNumbersMap[0]" value="0"/>
   <html:text property="sequenceNumbersMap[1]"  styleId="sequenceNumbersMap[1]" value="1"/>
   <html:text property="sequenceNumbersMap[2]"  styleId="sequenceNumbersMap[2]" value="2"/>
   <html:text property="sequenceNumbersMap[3]"  styleId="sequenceNumbersMap[3]" value="3"/>


并且ActionForm具有类似的属性

地图sequenceNumbersMap;

getter/setter

public Map<Integer, Integer> getSequenceNumbersMap() {
        return sequenceNumbersMap;
    }

    public void setSequenceNumbersMap(Map<Integer, Integer> sequenceNumbersMap) {
        this.sequenceNumbersMap = sequenceNumbersMap;
    }


但是当我尝试提交jsp时,出现以下异常:

java.lang.IllegalArgumentException: Property 'sequenceNumbersMap' is not indexed


有人可以帮我解决这个问题吗?

谢谢

最佳答案

映射没有顺序,因此sequenceNumbersMap[i]并不代表任何意义。如果您打算将值映射到i而不是在地图中获取第i个项目(这又没有意义),则可以使用sequenceNumbersMap.get(i)来实现。

10-07 17:18