Я работаю над проектом, который обращается к PostgreSQL с помощью драйвера jdbc, обрабатывает эти данные через промежуточное ПО и, наконец, отображает / обновляет через страницы jsp.Используя Eclipse, я создал динамический веб-проект.Затем я написал код для всех внутренних и промежуточных программ.Я могу получить доступ к базе данных из статического контекста (я имею в виду основной метод Java-источников).Я также могу использовать свои ресурсы Java (например, отображение) из jsp, если я не вызываю какие-либо методы, которые обращаются к базе данных.Но когда я пытаюсь получить доступ к базе данных, она не работает и выдает исключение нулевого указателя.
<jsp:useBean id="user" class="dbActionManagement.UserData" scope="session"/>
<jsp:setProperty name="user" property="*"/>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>next page</title>
</head>
<body>
You entered<BR>
Name: <%= user.getUsername() %><BR>
Email: <%= user.getEmail() %><BR>
Age: <%= user.getAge() %><BR>
</body>
</html>
Это дает мне:
SEVERE: Servlet.service ()для сервлета [jsp] в контексте с путем [/ GNYSweb] выдало исключение [java.lang.NullPointerException] с первопричиной java.lang.NullPointerException в dbActionManagement.OfficerManager.getTotalPoint (OfficerManager.java:494) в dbActionManUserserserUserData.java:28) в org.apache.jsp.NextPage_jsp._jspService (NextPage_jsp.java:80) в org.apache.jasper.runtime.HttpJspBase.service (HttpJspBase.java:70) в javax.servlet.hpt.service (HttpServlet.java:722) в org.apache.jasper.servlet.JspServletWrapper.service (JspServletWrapper.java:419) в org.apache.jasper.servlet.JspServlet.serviceJspFile (JspServlet).apache.jasper.servlet.JspServlet.service (JspServlet.java:334) в javax.servlet.http.HttpServlet.service (HttpServlet.java:722) в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:304) в org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:210) в org.apache.catalina.core.StandardWrapperValve.invoke (стандартный).catalina.core.StandardContextValve.invoke (StandardContextValve.java:164) в org.apache.catalina.authenticator.AuthenticatorBase.invoke (AuthenticatorBase.java:462) в org.apache.catalina.core.ostalin.Hore.: 164) в org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:100) в org.apache.catalina.valves.AccessLogValve.invoke (AccessLogValve.java:562) в org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:118) в org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:395) в org.apache.coyote.http11.Http11Processor.process (Http: or50).apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process (Http11Protocol.java:188) в org.apache.tomcat.util.net.JIoEndpoint $ SocketProcessor.run (JIoEndpoint.java:302) в java.util.concurrent.ThreadPoolExecutor $ Worker.runTask (неизвестный источник) в java.util.concurrent.ThreadPoolExecutor $ Worker.run неизвестно (неизвестно)at java.lang.Thread.run (Неизвестный источник)
Также для этого я использую Java-класс - UserData и метод getUserName ()
public String getUsername() {
int a = new OfficerManager().getTotalPoint("a");
return new Integer(a).toString();
}
По умолчанию для OfficerManagerКонструктор и getTotalPoint
public int getTotalPoint(String officerId){
int point = 0;
ResultSet results = null;
try {
if(DBConnection.db.isClosed()){ // problem is caused by this line
DBConnection.connect();
}
Statement sql = DBConnection.db.createStatement();
String sqlText = "select point from officers ";
sqlText += " where sicilno = '" + officerId + "'";
results = sql.executeQuery(sqlText);
} catch (SQLException e) {
e.printStackTrace();
}
if(results != null)
try {
while(results.next()){
point = (int) results.getDouble("point");
}
} catch (SQLException e) {
e.printStackTrace();
}
return point;
}
Я добавил драйвер jdbc postgreSQL в мой путь сборки.Также я включил этот же драйвер jdbc в папку lib Tomcat.Также я использую экземпляр Tomcat v7.0 на локальном хосте, расположение которого - [метаданные рабочего пространства]