exception org.apache.jasper.JasperException: An exception occurred processing JSP page /deleteSong.jsp at line 3936:   </tr>
37:   <%
38:  List songList =(List)(request.getAttribute("songList"));
39:  out.println(songList.size());
40:   for(int i=0;i<songList.size();i++)
41:   {
42:   SongDTO song=new SongDTO();
这是怎么回事?我明明数据库中有数据,而且用DAO都获取了
DAO:
public static List findAllSongs()

{
List songList=new ArrayList();
Connection con = null;
  Statement stat=null;
  ResultSet rs=null;
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con = DriverManager.getConnection("jdbc:odbc:music","sa","");
stat=con.createStatement();
String queryString="select * from song";
rs=stat.executeQuery(queryString);
while(rs.next())
{
SongDTO song=new SongDTO();
song.setSgID(rs.getString("sgID"));
song.setSgName(rs.getString("sgName"));
song.setSingerID(rs.getString("singerID"));
song.setStID(rs.getString("stID"));
song.setSlID(rs.getString("slID"));
songList.add(song);
}

} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

return songList;

}
以下代码是:
  <tr>
   <form action="servlet/HandleDeleteSong" method="post"> 
    <td><%=song.getSgID()%></td>
    <td><%=song.getSgName() %></td>
    <td><%=song.getSingerID()%></td>
    <td><%=song.getStID() %></td>
    <td><%=song.getSlID()%></td>
     <td><a href="(deleteSongById)?sgID=<%=song.getSgID() %>">删除</a></td>
       </form>
  </tr>
  <%
  }   %>

解决方案 »

  1.   

    HandleDeletesong.java public void doPost(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {

    response.setContentType("text/html;charset=gb2312");
    List songList=new ArrayList();
    SongDAO song=new SongDAO();
    songList=SongDAO.findAllSongs();

    session.setAttribute("songList",songList);
    RequestDispatcher rd=request.getRequestDispatcher("deleteSong.jsp");
    rd.forward(request,response);
    }
      

  2.   

    request.getAttribute("songList")
    没有一个叫sonList的属性,所以返回null
      

  3.   

    request.getAttribute("songList")
    没有一个叫songList的属性,所以返回null
      

  4.   

    你后台是session.setAttribute("songList",songList);
    前台怎么是request.getAttribute呢?
    前台改成
    List songList =(List)request.getSession().getAttribute("songList");
      

  5.   

    SongDAO song=new SongDAO();
    songList=SongDAO.findAllSongs();session.setAttribute("songList",songList);哦不是设置了吗?怎么说没有呢????
      

  6.   

    你在servlet中设置的存储放在了session中了,在页面上又有request取.
      

  7.   

     List songList =(List)(request.getAttribute("songList"));
    提示LIST为原始类型,要List<E>引用参数化,什么意思?
    并说这是个断点
      

  8.   

    List<SongDTO> songList = new ArrayList<SongDTO>();
      
     songList =(List<SongDTO>)(request.getAttribute("songList"));
    我改了啊
    可是还是有问题的
    类型安全:未经检查的从 Object 到 List 的强制类型转换
      

  9.   

    楼主Debug 一下
    看看返回的songList 是不是null