在Action中代码如下
List list=null;
list=dao.getAll();
request.setAttribute("aa",list);
return mapping.findForward("shows");shows所指的Jsp页面代码如下
<%
  List list=null;
  list=(List)request.getAttribute("aa");
if(list.size()>0&&list!=null){
 for(int i=0;i<list.size();i++){
  Aa a=(Aa)list.get(i)
}
}
%>在Struts的配置文字中
<action/>
标签中设置
scope="request"
但是却报异常
如果把Action中的代码
request.setAttribute("aa",list);
改为
request.getSession.setAttribute("aa",list);
在Jsp页改取值从session中可以取到,但从request中取的话却报异常
空指针异常。。
查过了变量名没有写错能想的办法我都试了就是找不着原因晕死。。

解决方案 »

  1.   

    在Jsp页改取值从session中可以取到,但从request中取的话却报异常 
    空指针异常。。 那是当然的你这个判断:if(list.size()>0&&list!=null)
      

  2.   

    不说问题,只说代码
    if(list.size()>0&&list!=null) ==> if(null != list && list.size()>0)
    这样会好些,养好习惯。
      

  3.   

    forward的redirect属性是true还是默认??
      

  4.   

    这个不是request和session的问题,也不是配置文件的问题,问题出在list=dao.getAll()里。也许你根本没取到值呢?我用的时候都是session="resquest" ,也是用request.setAttribute();都可以呢