下面是我程序中的一部分代码   
我在image.jsp中int rgb=random.nextInt(3);
session.setAttribute("rgb",rgb);  然后在zhuce.jsp中 <img src="image.jsp" width="60" height="20"/><br/>
   请输入上面图片
<%
HttpSession sessionrgb=request.getSession();
            String str=(String)sessionrgb.getAttribute("rgb");
if(str.equals("0")){
out.print("红");
}
if(str.equals("1")){
out.print("绿");
}
if(str.equals("2")){
out.print("蓝");
} %>
   色的字:
结果访问zhuce.jsp时就出错了  下面是错误提示Status 500 - An exception occurred processing JSP page /zhuce.jsp at line 47 44: <% 45: HttpSession sessionrgb=request.getSession(); 46: String str=(String)sessionrgb.getAttribute("rgb"); 47: if(str.equals("0")){ 48: out.print("绾�); 49: } 50: if(str.equals("1")){ Stacktrace:

解决方案 »

  1.   

    <%
    HttpSession sessionrgb=request.getSession();
      String str=(String)sessionrgb.getAttribute("rgb");
    if(str.equals("0")){
    %>红
    <%
    }
    if(str.equals("1")){
    %>
    绿
    <%
    }
    if(str.equals("2")){
    %>

    <%
    }
     %>
      

  2.   

    没用哦  我测试了是第二行报的错-------String str=(String)sessionrgb.getAttribute("rgb");我在想是不是还没缓存到服务器呢?  因为我的session是在image.jsp中设置的
      

  3.   

    你要确保你的image.jsp是比zhuce.jsp先执行的
      

  4.   

    String str=(String)sessionrgb.getAttribute("rgb");
    改成String str =sessionrgb.getAttribute("rgb").toString();
    能行吗?
      

  5.   

    int rgb=random.nextInt(3);
    session.setAttribute("rgb",rgb);   中session 是httpSession吗?
    在zhuce.jsp不用新建httpSession。直接session.getAttribute("rgb");
      

  6.   

    image.jsp比zhuce.jsp中获取session的值时更先执行的 
      

  7.   

    我想用debug   怎么用呢?
      

  8.   

    String str=(String)sessionrgb.getAttribute("rgb");这里就错了。
    这是自动解封装问题。
    改成这样应该可以的:
    <%
    HttpSession sessionrgb=request.getSession();
       int str=(int)sessionrgb.getAttribute("rgb");
     if(str==0){
     out.print("红");
     }
    if(str==1){
     out.print("绿");
     }
    if(str==2){
     out.print("蓝");
     }  %>
      

  9.   

    你已经放到session里面了,难道不是直接session调用么- -还要new一个新的干嘛- -