我从servlet收到一个Arraylist。 这是我的JSP页面的代码
<%
String bgcolor="";
int count=0;
List viewList = new ArrayList();
Iterator viewItr;
Iterator itr;
if(request.getAttribute("userList")!=null && request.getAttribute("userList")!="")
{
List<Zone> userList = (List<Zone>)request.getAttribute("userList");
itr = userList.iterator();
while(itr.hasNext())
{
if(count%2==0)
{
bgcolor = "#C8E2D1";
}
else
{
bgcolor = "#EAF8EF";
}
viewList = (ArrayList)itr.next();
int id = Integer.parseInt(viewList.get(0).toString());
viewItr = viewList.iterator();
%>
<tr style="background-color:<%=bgcolor%>;">
<%
while(viewItr.hasNext())
{
%>
<td><%=viewItr.next()%></td>
<%
}
count++;
%>
我收到一个错误,它说bean.Zone不能被转换为arraylist,
错误在第**viewList = (ArrayList)itr.next();**
行
谢谢你的帮助
答案 0 :(得分:2)
我认为你有区域对象,不是Arraylist 。这就是你无法施展的原因。
您已经在迭代区域列表,并且需要转换为区域对象。
Zone viewList = new Zone();
viewList = (Zone)itr.next();
答案 1 :(得分:1)
这里有几个错误。
request.getAttribute("userList")!=""
在if
中出错了。你不应该将List与空字符串进行比较。
List<Zone>
,所以当你调用itr.next()时,你会得到一个Zone
而不是一个ArrayList。所以你的第二个while
在这里无效。您可能需要从Zone
获取并显示属性。