我想在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?
答案 0 :(得分:0)
最简单的解决方案是不将您的阵列存储到响应中并将其发送回服务器。而是使用session.setAttribute("allnames", al);
将您的列表存储到会话中,并以类似的方式获取它:ArrayList al=(ArrayList)request.getSession().getAttribute("allnames");
。您不必将阵列发送到客户端再返回。
但是如果你真的想,你可以将数组存储为隐藏的HTML输入字段列表,然后使用String[] al=request.getParameterValues('allnames');
从servlet获取它们。