如何使用Struts从动态表单中接收所有字段?

时间:2016-01-20 10:26:49

标签: forms dynamic struts-1

我发现自己遇到了以下问题:

我有一个使用logic:iterate生成的页面,其中显示了当前的主管和服务助手。 该页面也可以作为一种形式,人们可以添加他们可能的替代品,但你永远不知道有多少人在那里。

由于我目前正在使用的环境,它必须没有JSTL,所以很多选项都没有了;无法让DynaActionForm为此工作。

1 个答案:

答案 0 :(得分:0)

由于我找不到任何东西,但我已经得到了答案,我决定创建这个来回答可能有同样问题的人。

代码:

public ActionForward post(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
    String[] tot;

    try {       
        Enumeration<?> fieldsForm = request.getParameterNames();

        while(fieldsForm.hasMoreElements()) {
            String current = (String) fieldsForm.nextElement();
            tot = request.getParameterValues(current);

            System.out.println("Field name is: " + current);
            for (i=0; i<tot.length; i++) {
                // do whatever you need to do; contents are in tot[i]
                System.out.println("Value " + i + " is: " + tot[i]);
            }
    }
    catch (Exception ex) {
        ex.printStackTrace();
        System.err.println(ex.getMessage());
    }
}