JSP1:<%
String[] path = null;
%><%
session.setAttribute("picnum",path.length);
session.setAttribute("paths",path);
%>在另一个jsp页面中如何将path取出来呢,求教。String[] picpath = session.getAttribute("picnum");
这样写好像不行的

解决方案 »

  1.   

    1,    String[] path = null; path为null
    2,    session.getAttribute("picnum"); 返回的是对象 需要强制转型
    3,    session.setAttribute("picnum",path.length); 中保存的是数组长度 
           而你String[] picpath = session.getAttribute("picnum");把它当字符串数组来取
      

  2.   

    页面间传的是String 或Object要这样
    String[] picpath = (String[])session.getAttribute("picnum");
      

  3.   

    把数组 转成List  然后放到session里
      

  4.   

    string[] a;
    request.setAttribute("a",a);
    string[] a=(string[])request.getAttribute("a");
      

  5.   

    需要强转或转成List再放到数组里。
      

  6.   

    String[] picpath = session.getAttribute("picnum");
    为何不这样去呢
    String[] picpath = session.getAttribute("paths");
    <%
        String[] path = null;%><%
        session.setAttribute("picnum",path.length);    session.setAttribute("paths",path);
    %>
    path 为何不给对象值呢 你这样用 他不报空指针异常么就你这样写 你又想得到啥呢? 建议:
    <%
        String[] path = {"1","2","3"};
    %><%
        session.setAttribute("picnum",path.length);
        session.setAttribute("paths",path);
    %><%
    String[] picpath = session.getAttribute("paths");
    %>感觉 你还需要多看看书
      

  7.   

    楼主可能省略中间的代码了,并不是想真的传null值第二个jsp这里强制转换下就可以了
    String[] picpath = (String[])session.getAttribute("picnum");
      

  8.   

    为什么要强转?该怎么传就怎么传。无非是考虑一个作用域的问题。跟数据类型有关系么?获取的时候只需要将object类型转成上面的基本数据类型就可以了。他回来还是数组。
      

  9.   

    session.getAttribute("picnum");
    有没有发现他取的 不是数组 而是数组的大小
      

  10.   

    试问一下在jsp1中,执行到第二段代码,下面还会再执行吗?
      

  11.   

    楼上意思 他把session给清空过