Jsp 从bean传递数组

Jsp 从bean传递数组,jsp,javabeans,Jsp,Javabeans,我的JSP中有这段代码 <c:forEach var="i" begin="0" end="9"> var g=<jsp:getProperty name="header" property="apn[i]" />; 当我运行我的JSP时,我得到了这个错误 org.apache.jasper.JasperException: Cannot find any information on property 'apn[i]' in a bean of type 'com.B

我的JSP中有这段代码

<c:forEach var="i" begin="0" end="9">
var g=<jsp:getProperty name="header" property="apn[i]" />;
当我运行我的JSP时,我得到了这个错误

org.apache.jasper.JasperException: Cannot find any information on property 'apn[i]' in a bean of type 'com.Bean.DetailsBean'.

我哪里做错了

您需要使用JSP EL来访问数组

<c:forEach var="i" begin="0" end="9">
var g=${header.apn[i]}

var g=${header.apn[i]}

但是,我不确定您是否想要这样的效果,因为它将在全局范围内创建9个
g
变量。

为什么不使用不带范围的for循环版本:

<c:forEach items="${header.apn}" var="apn">
    <c:out value="${apn}" />
</c:forEach>

为此,您不必知道数组的大小。对开始和结束索引进行硬编码是一个坏主意。

我得到了一个错误“类型DetailsBean的方法配置(HttpServletResponse)未定义”
<c:forEach items="${header.apn}" var="apn">
    <c:out value="${apn}" />
</c:forEach>