2013-04-05 69 views
0

我的動作類有一個對象數組這樣,JSTL正從對象數組值

Object[] varCount = (Object[]) countList.get(0); 

和我的調試顯示varCount值。我把這個對象數組中的模型如下:

model.put("varCount ", varCount); 

和JSP我迭代如下:

<c:forEach var="varCount " items="${model.varCount }" varStatus="loop"> 
    <tr> 
    <td align="center">&nbsp;<c:out value="${varCount[0]}"/></td> 
</tr> 
    </c:forEach> 

,我得到了FOLL錯誤:

Wrapped exception: 
javax.servlet.jsp.JspException: An error occurred while evaluating custom action attribute "value" with value "${varCount [0]}": Unable to find a value for "0" in object of class "java.math.BigDecimal" using operator "[]" (null) 
    at org.apache.taglibs.standard.tag.common.core.ImportSupport.acquireString(ImportSupport.java:306) 
    at org.apache.taglibs.standard.tag.common.core.ImportSupport.doEndTag(ImportSupport.java:16 

如何獲得價值?

回答

1

使用這樣獲得的所有對象數組

<c:forEach var="item" items="${model.varCount }" varStatus="loop"> 
<tr> 
<td align="center">&nbsp;<c:out value="${item}"/></td> 
    </tr> 
</c:forEach> 
+0

我必須獲取從0到10的所有元素。 – JNPW 2013-04-05 13:29:52

+0

當您迭代Object數組時,每次迭代都會從數組中獲取單個對象。我認爲每個對象都是這個數組中的一個BigDecimal。 – IndoKnight 2013-04-05 13:31:21

+0

哦,你好。謝謝。讓我嘗試。 – JNPW 2013-04-05 13:33:31

1

model.varCount是一個數組或對象,包含BigDecimal的實例。

forEach循環遍歷此數組的所有元素。在每次迭代中,當前元素都存儲在varCount頁面屬性中。當前元素是BigDecimal的一個實例。 varCount[0]因此沒有意義。