2013-05-07 2 views
0

JSP로 작성한 코드에서 다음과 같이 오류가 발생합니다. 나는 바람둥이를 사용하고 있습니다. 이 문제의 원인이 무엇인지 알고 싶습니다.Tomcat을 사용하는 JSP에서 NullPointerException이 발생했습니다.

test.jsp를

<%@page import="java.sql.Connection"%> 
<%@page import="java.sql.ResultSet"%> 
<%@page import="admin.User"%> 
<%@page import="admin.ConnectionManager"%> 
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" 
    pageEncoding="ISO-8859-1"%> 
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> 
<title> test </title> 
</head> 
<body> 

<div> 
     <table> 
      <% 
      ResultSet rs = User.loadAll(); 
       while (rs.next()) { 
      %> 

      <tr> 
       <TH>ID</TH> 
       <TH>Name</TH> 
       <TH>Surname</TH> 
       <TH>Email</TH> 

      </tr> 
      <tr> 
       <td> <%= rs.getInt(1) %> </td> 
       <td> <%= rs.getString(2) %> </td> 
       <td> <%= rs.getString(3) %> </td> 
       <td> <%= rs.getString(4) %> </td> 


      </tr> 
     </table> 
    </div> 

     <% 
      } 
     %> 
    </body> 
</html> 

HTTP 상태 500 - java.lang.NullPointerException이


type Exception report 

message java.lang.NullPointerException 

description The server encountered an internal error that prevented it from fulfilling this request. 

exception 

org.apache.jasper.JasperException: java.lang.NullPointerException 
    org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:502) 
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:430) 
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) 
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 


root cause 

java.lang.NullPointerException 
    org.apache.jsp.test_jsp._jspService(test_jsp.java:75) 
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388) 
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) 
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) 
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717) 


note The full stack trace of the root cause is available in the Apache Tomcat/6.0.36 logs. 

아파치 톰캣/6.0.36

+0

널 체크에서 while 루프를 랩핑하여 실제로 사용자로드에서 결과를 얻는 지 확인하십시오.'if (rs! = null) {... ' –

+0

null이 정확히 무엇입니까? 예외를 추적하십시오. – skuntsel

+0

Tomcat/work 디렉토리 아래에있는 test_jsp.java 파일을 점검하십시오. JSP 파일을 java로 변환하고 75 행에서 JSP 페이지에 삽입 한 고유 한 Java 코드를 인식합니다. –

답변

0

당신은 확인해야 아파치 톰캣이 로그하지만 User.loa 일 것이다. dAll()이 rs로 설정된 null을 반환하고 body 및 html이 닫히지 않았거나 코드를 잘못 복사 한 경우 rs.next()

에 NullPointerException이 발생합니다.

+0

예 내가 그들을 닫았습니다. 메서드를 공개 정적 ResultSet loadAll() { \t \t return query ("SELECT * FROM user"); \t} null을 반환하지 않기 위해 무엇을해야합니까? – arual

+0

아파치에 들어갈 때 Tomcat 로그에 로그 파일이 없습니다. Eclipse를 통해 내 앱을 개발했기 때문입니까? 이클립스에서 어떻게 확인할 수 있습니까? – arual

+0

로그가 있어야합니다. Tomcat을 시작/종료하는 데 Eclipse 플러그인을 사용하고 있습니까? 실제로 문제를 해결할 수 있었습니까? – nsawaya

관련 문제