看板 java 關於我們 聯絡資訊
我在serlve將二惟array存在session 之後到jsp再取出來 int size = 0; int n =0; size = session.getAttribute("sized")==null?0:Integer.parseInt(session.getAttribute("sized").toString()); // out.println(size); String a[][] = new String[2][size]; a =(String[][])session.getAttribute("valuesd"); out.println("<table border = '1'><tr><td>Domain name</td><td>Alert numbers</td></tr>"); for(n = 0; n<size;n++){ out.println("<tr><td>"+a[0][n]+"</td>"); out.println("<td>"+a[1][n]+"</td></tr>"); } out.println("</table>"); //out.println(a.length); a = null; 但是會有 第一次load jsp 值印不出來 要重整網頁才印出來 我加了一個迴圈 想要判斷 array取到了再列印 while(a.length <=0){ } 但是會出現錯誤訊息 2008/9/4 銝鲳? 06:13:42 org.apache.catalina.core.StandardWrapperValve invoke ?湧??? Servlet.service() for servlet jsp threw exception java.lang.NullPointerException at org.apache.jsp.chart_002dnewall_jsp._jspService(chart_002dnewall_jsp.java:178) at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) at java.lang.Thread.run(Thread.java:595) 請問有什麼方法可以讓網頁第一次就取到session的值 或是讓out.print可以等到array assign ok再列印 -- refresh 因為會讓網頁其他部分的呈現跑掉 所以不能採用 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.241.25.133
TonyQ:if (xxx!=null){ /* run the body ....*/ }; 09/04 19:43
cklonger:請問XXX是什麼 這個code要寫在jsp還是javascript funtion 09/04 20:50
※ 編輯: cklonger 來自: 218.166.12.250 (09/04 20:53)
slalala:xxx應該是某instance 09/04 22:03
slalala:要不要寫個dispatcher 當session==null 導向error page? 09/04 22:05
TonyQ:我猜 xxx是 a , 因為裡面看起來只有a比較有可能產生NullPoin 09/04 23:23
cklonger:是a null沒錯 a是用來存session的矩陣 09/04 23:29
cklonger:有方法能知道a 已經存好值 因為一定要能存到 else要寫 09/04 23:31
TonyQ:if(a!=null){ /* run the body */ }; 09/04 23:33