【发布时间】:2012-07-07 18:53:20
【问题描述】:
我在 Tomcat 上遇到了一个可怕的问题,由于这个问题,我已经放弃了这个项目一个多月了……但我仍然需要解决它并继续这个项目。 ..
所以它给我这个错误:
java.sql.SQLException:找不到适合 jdbc 的驱动程序:sqlserver://isd.ktu.lt:1433;DatabaseName=LN2012_bakDB2 java.lang.NullPointerException
问题是相同的应用程序在桌面版本 perfectlz 中运行,但是当涉及到应该在服务器上运行的版本(NetBeans 7.1.2 中的 Tomcat 7.0.22.0)时,它只会抛出错误.它似乎没有加载池驱动程序或者我什至不知道......
这是负责的部分:
public DatabaseConnection(Parameters params) {
// parameters and the output
this.gui = params.getGui();
// activate database pool
connectionPool = new GenericObjectPool(null);
connectionFactory = new DriverManagerConnectionFactory(params.getDbAdr(), params.getDbUser(), params.getDbPass());
poolableConnectionFactory = new PoolableConnectionFactory(connectionFactory, connectionPool, null, null, false, true);
driver = new PoolingDriver();
driver.registerPool("GenTreeDatabase", connectionPool);
//driver.registerPool("jdbc:apache:commons:dbcp:GenTreeDatabase", connectionPool);
}
public void openConn() {
if (allowOutput) gui.print("Getting connection to database");
try {
con = DriverManager.getConnection("jdbc:apache:commons:dbcp:GenTreeDatabase");
if (con != null) {
if (allowOutput) gui.print("Connection to database was successful");
}
} catch (SQLException ex) {
gui.err(specificError + "Error getting connection to database - " + ex);
}
}
它发生在它试图获取连接的时候,然后它得到一个空指针异常,因为连接没有成功检索。
我对 Tomcat 并不熟悉,直到现在,Netbeans 都很好地处理了 Tomcat…… 问题是我讨厌这样的错误......如果你在三天内不解决它,你会很沮丧,不想回到那个状态,你感觉就像撞墙...... 现在我尝试了很多关于它的谷歌搜索,但它仍然没有太大帮助...... 所以如果有人能帮我解决这个问题,我会非常高兴。谢谢。 :)
【问题讨论】:
-
Tomcat 目录中的数据库驱动程序(例如 sqljdbc4.jar)在哪里?
-
@MartinWilson 它位于 C:\Program Files\Apache Software Foundation\Apache Tomcat 7.0.22\lib
-
@home 如何获得 stracktrace?
标签: java tomcat apache-commons-dbcp jdbc-pool