Я работаю с сервлетами Murach Java и JSP 3rd edition и испытываю трудности с проектом ch12email (который можно скачать с murach.com).Моя проблема заключается в том, что при запуске приложения и вводе данных в форму и отправку я получаю следующую ошибку HTTP Status 500:
java.lang.NullPointerException
murach.data.ConnectionPool.getConnection(ConnectionPool.java:32)
murach.data.UserDB.emailExists(UserDB.java:80)
murach.email.EmailListServlet.doPost(EmailListServlet.java:39)
javax.servlet.http.HttpServlet.service(HttpServlet.java:661)
javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
Вот где происходит ошибка:
public Connection getConnection() {
try {
return dataSource.getConnection();
} catch (SQLException e) {
System.out.println(e);
return null;
}
}
И конструктор этого класса:
private ConnectionPool() {
try {
InitialContext ic = new InitialContext();
dataSource = (DataSource) ic.lookup("java:/comp/env/jdbc/murach");
//dataSource = (DataSource) ic.lookup("jdbc/murach");
} catch (NamingException e) {
System.out.println(e);
}
}
Однако я могу подключиться к базе данных в Netbeans и просматривать или редактировать данные в базе данных.Это тег Resource в файле context.xml для информации о пользователе и пароле базы данных:
<Resource name="jdbc/murach" auth="Container"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/murach"
username="root" password="67890"
maxActive="100" maxIdle="30" maxWait="10000"
logAbandoned="true" removeAbandoned="true"
removeAbandonedTimeout="60" type="javax.sql.DataSource" />
Я не совсем уверен, какая информация понадобится для полного устранения этой проблемы, поэтому, пожалуйста, дайте мне знатьлюбая информация поможет, и я обязательно ее предоставлю!