2013-01-01 11 views
10

Próbuję uzyskać dostęp do serwera MS SQL 2005 z pliku serwletu. Używam sterownika JDBC 4.0. Dodałem już pliki JAR sqljdbc.jar i sqljdbc4.jar do mojego folderu Tomcat /lib.HTTP Status 500 - Java Runtime Environment (JRE) w wersji 1.7 nie jest obsługiwany przez ten sterownik.

Ale gdy kod działa Otrzymuję błąd

HTTP status 500 - Java Runtime Environment (JRE) w wersji 1.7 nie jest obsługiwany przez ten sterownik. Użyj biblioteki klas sqljdbc4.jar, która zapewnia obsługę JDBC 4.0.

Jak to się dzieje i jak mogę to rozwiązać?

Mój kod to:

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 
Connection conn = conn = DriverManager.getConnection("jdbc:sqlserver://localhost;databaseName=school;user=sa;password=123"); 
PrintWriter pwOut = res.getWriter(); 
pwOut.println("Connected"); 
Statement st = conn.createStatement(); 
String searchCriteria = req.getParameter("txtSearch"); 
ResultSet rs = st.executeQuery("select * from student"); 
res.setContentType("text/html"); 

Odpowiedz

23

komunikat Błąd jest całkiem jasne. Tomcat używa złego sterownika.

Podajesz, że skopiowałeś sqljdbc.jarisqljdbc4.jar do folderu Tomcat lib. To najprawdopodobniej jest przyczyną twojego problemu.

Ty tylko potrzebujesz sqljdbc4.jar w przeciwnym razie Tomcat podnosi niewłaściwy.

próby usunięcia sqljdbc.jar z Tomcat lib folderu

1

Oto mój kod, aby połączyć Java do Microsoft SQL Server 2012

wystarczy sqljdbc4.jar korzystające z oficjalnej strony internetowej firmy Microsoft. Oto link:

http://download.microsoft.com/download/0/2/A/02AAE597-3865-456C-AE7F-613F99F850A8/sqljdbc_4.0.2206.100_enu.exe

Zawiera 2 pliki jar, a ja staram się używać sqljdbc4.jar. To jest kod, którego używam do połączenia:

package com.Sql.ConnectDB; 

import java.sql.*; 
public class DbClass { 

    public static void main(String[] args) { 
     // TODO Auto-generated method stub 
     try{ 
      **String url="jdbc:sqlserver://localhost;databaseName=Student";**//important 
      String user="username"; 
      String pass="password"; 
      **Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");**//important 
      Connection con=DriverManager.getConnection(url,user,pass); 
      System.out.println("Conneccted Successfully"); 
     }catch(Exception e){ 
      e.printStackTrace(); 
     } 
    } 

} 
Powiązane problemy