Java 启动连接池时出现NullPointerException

Java 启动连接池时出现NullPointerException,java,db2,Java,Db2,我在context.xml中设置了数据库连接信息 <Context> <WatchedResource>WEB-INF/web.xml</WatchedResource> <WatchedResource>${catalina.base}/conf/web.xml</WatchedResource> <Resource name="jdbc/*(my username)*"

我在
context.xml
中设置了数据库连接信息

<Context>
    <WatchedResource>WEB-INF/web.xml</WatchedResource>
    <WatchedResource>${catalina.base}/conf/web.xml</WatchedResource>

        <Resource 
        name="jdbc/*(my username)*" 
        factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
        auth="Container" 
        type="javax.sql.DataSource"
        removeAbandoned="true" 
        removeAbandonedTimeout="30" 
        maxACtive="100"
        maxIdle="30" 
        maxWait="10000" 
        username= *(my username)*
        password= *(my password)*
        driverClassName="com.ibm.db2.jcc.DB2Driver" 
        url="jdbc:db2://(my server host):50000/*(my username)*">
    </Resource>
</Context>
我用Eclipse的透视数据库开发测试了数据库连接,我能够连接并完成所有查询

另外,它在输出中给了我这个错误

SEVERE: Unable to create initial connections of pool.
java.sql.SQLException: No suitable driver found for jdbc:db2://db2.cecsresearch.org:50000/(my username)

尽管我在lib文件夹和类路径中有jar库文件。

但是
nullpointer
只是由以下问题引起的:

java.sql.SQLException: No suitable driver found for jdbc:db2://db2.cecsresearch.org:50000/(my username)
将数据库驱动程序放入
$CATALINA_HOME/lib
应该可以解决这个问题

有关更多信息,请查看

driverClassName(String)
要使用的JDBC驱动程序。驾驶员必须能够从同一位置接近 类加载器为tomcat-jdbc.jar


您也可以检查。

请从下载DB2 Java驱动程序并将其添加到tomcat/lib目录。然后重新启动Tomcat,您就可以开始了

您的数据源是否正在自动连接到connectionPool类中?我看到的是类中的数据源为null,因此出现了错误。然后问题就变成了,数据源在哪里被设置来保存XML文件中的数据源?我试图下载两个库jar文件(commons-dbcp2,commons-pool2)并将它们放在WEB-INF/lib下,但错误仍然是一样的。如前所述,您应该将JAR放入tomcat lib文件夹($CATALINE_HOME/lib),而不是应用程序lib文件夹(WEB-INF/lib)。因此,如果您的tomcat安装在/tmp/apache-tomcat-9.0.34,那么您应该将jdbc驱动程序JAR放在/tmp/apache-tomcat-9.0.34/lib中。
java.sql.SQLException: No suitable driver found for jdbc:db2://db2.cecsresearch.org:50000/(my username)