在提交表单时,将ArrayList从JSP页面发送到servlet

时间:2014-04-14 15:16:31

标签: jsp servlets

我想在JSP页面上提交表单时从JSP页面检索ArrayList到servlet。我正在尝试以下代码:

Pass.jsp的代码是:

<form action="GetListServlet">
<%
    ArrayList al=new ArrayList();
    al.add("Naman");
    al.add("Gupta");
    request.setAttribute("allnames", al); 
%>
<input type="submit" value="Show List"></form>
doGet()的{​​{1}}方法是: -

GetListServlet

但我得到protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { ArrayList al=(ArrayList)request.getAttribute("allnames"); System.out.print(al.get(0)); }

有谁能告诉我如何在servlet页面上获得jsp页面的arraylist?

1 个答案:

答案 0 :(得分:0)

最简单的解决方案是将您的阵列存储到响应中并将其发送回服务器。而是使用session.setAttribute("allnames", al);将您的列表存储到会话中,并以类似的方式获取它:ArrayList al=(ArrayList)request.getSession().getAttribute("allnames");。您不必将阵列发送到客户端再返回。

但是如果你真的想,你可以将数组存储为隐藏的HTML输入字段列表,然后使用String[] al=request.getParameterValues('allnames');从servlet获取它们。