好奇怪啊。昨天也是这样的问题,但后来又好了,现在又出现这样的问题了不知道是为什么啊?
session是在另一个jsp里设的。
String flag="";
session.setAttribute("flag","dbsucc");
===============错误描述如下======================org.apache.jasper.JasperException: An exception occurred processing JSP page /index.jsp at line 2623:    
24: <%
25: 
26: String s = session.getAttribute("flag").toString();
27: if(s!=null&&!"".equals(s))
28:   if (s.equals("dbsucc")) 
29:     out.print("<font color = red>数据库配置成功</font>");
Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:515)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:426)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)root causejava.lang.NullPointerException
org.apache.jsp.index_jsp._jspService(index_jsp.java:78)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:384)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

解决方案 »

  1.   

    我在想是不是有这种可能:
    你这里是在index.jsp读session,而session的设置是在比如a.jsp中那么模拟以下流程:
    index.jsp ==>异常,因为session的attribute还没有set
    然后你去访问a.jsp,session set进去了,你再去访问index.jsp,OK了,因为session中的attribute已被set你检查下是不是这个原因
      

  2.   

    的确index.jsp里没有set。
    但如果要set的话,比如说
     session.setAttribute("flag","a");
    这样的话,每次访问index.jsp页面的时候,flag都为a了,就得不到我要的从另一个页面传个参数过来的效果了~另一个页面实行了页面跳转。我是想用session来做个标记的~
    String flag="";
    session.setAttribute("flag","dbsucc");
    response.sendRedirect("index.jsp");
      

  3.   

    Object o = session.getAttribute("flag"); 
    String s = null;
    if (o != null) s = o.toString();
    if(s!=null&&!"".equals(s)) 
      if (s.equals("dbsucc")) 
        out.print(" <font color = red>数据库配置成功 </font>"); 
    ...
      

  4.   

    因为你引用null是没有toString的,你这样调用将得到NullPointerException
    因此要么保证该值绝对不为null,要么就处理null