Note that there are some explanatory texts on larger screens.

plurals
  1. POJava Null Pointer Exception for JDBC Connection
    primarykey
    data
    text
    <p>I am trying to run a web application that gets a specific length of numbers from a user and checks that against a database (so if the user made a typo, it will makes suggestions as to what key the user actually meant). The problem I am running into is the application won't connect to the database, I get this error: </p> <hr> <blockquote> <p>java.lang.NullPointerException<br> at Validator.Validate.checkIDs(Validate.java:410)<br> at Validator.Validate.getAllValidIds(Validate.java:203)<br> at Python.WebServlet.processRequest(WebServlet.java:70)<br> at Python.WebServlet.doPost(WebServlet.java:247)<br> at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)<br> at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)<br> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)<br> at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)<br> at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)<br> at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)<br> at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)<br> at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)<br> at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)<br> at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)<br> at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)<br> at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:987)<br> at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:579)<br> at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:1805)<br> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)<br> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)<br> at java.lang.Thread.run(Thread.java:662)</p> </blockquote> <hr> <p>Line 410 in Validator.Validate is:</p> <pre><code>Statement stmt = Conn.createStatement(); </code></pre> <p>Where Conn is a java.sql.Connection variable</p> <p>Line 203 is a call to the method that does the ^ statement</p> <hr> <blockquote> <p>java.lang.ClassNotFoundException: com.mysql.jdbc.Driver<br> at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1701)<br> at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1546)<br> at java.lang.Class.forName0(Native Method)<br> at java.lang.Class.forName(Class.java:169)<br> at Validator.Validate.dbConnect(Validate.java:394)<br> at Validator.Validate.getAllValidIds(Validate.java:193)<br> at Python.WebServlet.processRequest(WebServlet.java:70)<br> at Python.WebServlet.doPost(WebServlet.java:247)<br> at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)<br> at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)<br> at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)<br> at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)<br> at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)<br> at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)<br> at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)<br> at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)<br> at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)<br> at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)<br> at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)<br> at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)<br> at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:987)<br> at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:579)<br> at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:1805)<br> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)<br> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)<br> at java.lang.Thread.run(Thread.java:662) </p> </blockquote> <hr> <p>This is the error I get on my server, if I run it on my local machine it works just fine (it validates the ID). What could be the problem here? Cannot it not locate the com.mysql.jdbc.Driver class? Is that class the issue?</p> <p>Thanks for the advice/help in advance!</p> <h2>NOTE:</h2> <p>The Validator class is an external jar that is in my class path. It calls on another jar in its class path the contains the com.mysql.jdbc classes, as you can see in the following pictures</p> <p><img src="https://i.stack.imgur.com/wB9qT.png" alt="Libraries currently in my netbeans project"></p> <hr> <p>The BugValidator jar contains the mysql-connector jar which has the Drivers class</p> <p><img src="https://i.stack.imgur.com/LM56M.png" alt="Contents of the BugValidator jar"></p> <hr> <p><img src="https://i.stack.imgur.com/vn5T3.png" alt="Contents of mysql-connector-java-5.1.7-bin.jar"></p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload