试试:
<%
for(int i=0;i<MAX_FILE && fileName[i]!=null;i++){
%>
<jsp:param name="file<%=i%>" value="<%=fileName[i]%>"/>
<jsp:param name="file<%=i%>save" value="<%=fileSave[i]%>"/>
<%
}
%>
不行就用session了

解决方案 »

  1.   

    应该是不行的,forward里面不要插入<%%>代码
      

  2.   

    这样吧
    <%response.sendRedirect("addCampaign.jsp?"+paramName+"="+paramValue);%>你的写法确实没见过
      

  3.   

    先把值insert到你的request中,然后再forward
      

  4.   

    to: haroyy(天平)
    <%
    for(int i=0;i<MAX_FILE && fileName[i]!=null;i++){
    %>
    <jsp:param name="file<%=i%>" value="<%=fileName[i]%>"/>
    <jsp:param name="file<%=i%>save" value="<%=fileSave[i]%>"/>
    <%
    }
    %>
    这样是不行的。
    ==========================
    似乎只能用session了。
    <jsp:param>是怎么一会事?为什么不能动态生成??
    小弟初学不解……
      

  5.   

    不好意思,我错了:)
    我的理解是这样的:
    jsp页面经过一次编译成java文件
    如果照你说的动态生成的话,就至少要经过两次编译了
    第一次先把<jsp:param name="file<%=i%>"中的<%=i%>编译成1、2 ==
    第二次才把<jsp:forward>编译成redirect
    事实上他们应该是同时进行的,所以肯定不行的还是用session吧
      

  6.   

    编译后的servlet,有这么一段:
    =======================
    String s12 = "addCampaign.jsp";
    String as3[][] = {
        {
            "inf_id", StringUtils.valueOf(i)
        }, {
            "page", StringUtils.valueOf(j)
        }, {
            "cam_id", StringUtils.valueOf(k)
        }, {
            "fun", StringUtils.valueOf(l)
        }, {
            "cam_hatcher_d", StringUtils.valueOf(s10)
        }, {
            "cam_file1", StringUtils.valueOf(as[0])
        }, {
            "cam_file1save", StringUtils.valueOf(as1[0])
        }
    };
    String s13 = httpservletrequest.getCharacterEncoding() != null ? httpservletrequest.getCharacterEncoding() : "ISO-8859-1";
    s12 = HttpParsing.makeURI(s12, as3, s13);
    pagecontext.forward(s12);
    return;
    ==============================
    它似乎是把s12,as3,s13连接成一个url,然后再跳转