【发布时间】:2014-03-16 07:24:15
【问题描述】:
我有一个 Room 类的 ArrayList。我需要将它从 jsp 发送到 servlet。
似乎html或jsp可以将值发送到servlet的唯一方法是通过表单,我尝试的方法是将其作为隐藏参数传递,如下所示:
<input type="hidden" name="allRooms" value="<%=request.getAttribute("allRooms") %>" />
但在我提交此表单的 servlet 中,我收到以下编译错误“字符串无法转换为列表”:
List<Room> allRooms=(List<Room>)request.getParameter("allRooms");
只需先将参数转换为 Object 类型,然后将其转换为 List,如下所示会给出相同的异常,但这次是运行时异常:
Object a=(Object)request.getParameter("allRooms");
List<Room> allRooms=(List<Room>)a;
是否有任何方法可以将 List 传递给 servlet,否则我必须将其设置为 JSP 中的会话变量?
提前致谢。
【问题讨论】:
-
请理解jsp输出HTML。当浏览器提交表单时,它会发送一个带有 HTML 中文本值的 http 请求。此时不涉及 Java 对象。
标签: java jsp servlets arraylist