6
java.lang.ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver

アプリケーションをTomcatにデプロイしようとすると、上記の例外が発生しました。しかし、奇妙なことは、私は単純なメインメソッドで試しましたが、それはうまくいきます。助けてください???

私は次のことをしました:

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
String connectionUrl = "jdbc:microsoft:sqlserver://localhost:1433;" + "database=DBName;" + "user=UserName;" + "password=Password";
connection = DriverManager.getConnection(connectionUrl);
4

5 に答える 5

10

com.microsoft.sqlserver.jdbc.SQLServerDriverクラスを含む jar ファイルを war ファイルのWEB-INF/libフォルダーに追加する必要があります。

于 2013-03-14T20:29:15.707 に答える
3

明確にするために、クラスパスに関するTomcatのドキュメントを読むか、sqljdbc.jarを$CATALINA_HOME/libに置いて、すべてのアプリケーションからアクセスしてください。

于 2013-03-14T20:33:57.197 に答える
2

ビルド パスに JAR(sqlserverjdbc.jar) がありますが、クラスを含む jar ファイルを追加する必要があります。com.microsoft.sqlserver.jdbc.SQLServerDriver を war ファイルの WEB-INF/lib フォルダーにコピーします。

于 2014-01-07T12:36:58.103 に答える
2

2014 年 5 月 15 日 3:09:43 PM org.apache.tomcat.jdbc.pool.ConnectionPool init SEVERE: プールの初期接続を作成できません。java.sql.SQLException: org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver の com.microsoft.sqlserver.jdbc.SQLServerDriver (PooledConnection.java:254) org.apache.tomcat.jdbc.pool.PooledConnection.connect で(PooledConnection.java:182) org.apache.tomcat.jdbc.pool.ConnectionPool.createConnection(ConnectionPool.java:701) で org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:635) で。 ..

私の Web アプリケーションにはWEB-INF/lib/sqljdbc4.jarがあるため、非常に不可解です。

エラー メッセージから、どうやら Tomcat にも jar ファイルが必要です。

jar ファイルをCATALINA_HOME/lib/sqljdbc4.jarにコピーすると、エラーはなくなりました。

于 2014-05-15T09:17:50.047 に答える
0

Web アプリを実行しているため、MS SQL Server ドライバー (または任意の DB のドライバー) を 2 つの場所に保存する必要があります。WAR となるアプリ内で、App Server の LIB ディレクトリに保存される 2 つ目のコピーが必要です。したがって、Tomcat で実行している場合は、/opt/tomcat/lib または C:\DEV\tomcat7\lib に配置します。

于 2015-03-04T20:01:30.190 に答える