Probleme mit Tomcat 5.5.25 und MySQL Connector

Konobi

Mitglied
Hallo,

eigendlich ist es ja eine einfache Sache, aber irgendwie tut das bei mir nicht mehr funktionieren nach der Migration auf Tomcat5.5.

Ich benutze:

System: Debian
WebServer: Tomcat 5.5.25
JDK: 1.5.0.10
MySQL: MySQL 5.0.32-Debian_7etch1-log

Habe es schon mit verschiedenen MySQL Connectoren ausprobier:

mysql-connector: 5.0.8, 3.1.14 und 5.1 (der ja nicht funktioniert da kein Tomcat6)

Die getesteten Connectoren habe ich in die Ordner kopiert:

$CATALINA_HOME/common/lib
und
$JAVA_HOME/jre/lib/ext

aber ich habe noch kein erfolg erzielt.
Denn Tomcat starte ich auch mit der Option: TOMCAT5_SECURITY=no

Meine DBConnect klasse sieht so aus:

Code:
public class DBConnect {
	private String username = "XXXXXXXXX" ;
	private String passwort = "XXXXXXXX" ;
	private String db_url ="jdbc:mysql://localhost:4001/kdlist" ;
	private String Treiber = "com.mysql.jdbc.Driver" ;
	private Connection MyConnect = null ;
	private protokoll log = new protokoll() ;

	public Connection getdbConnect() {
		String Aufruf = "getDBConnect( )" ;
      log.protokollZeile( Aufruf, "START") ;
//			if (MyConnect == null) {
	        try {
		        log.protokollZeile( Aufruf, "Initialisierung der Datenbank Treiber") ;
	      		Class.forName( Treiber );
	      	} catch ( Exception e) {
	      		log.protokollZeile( Aufruf, "Fehler : " + e.getMessage()) ;
			}
	       	try {
	       		log.protokollZeile( Aufruf, "Verbindungsaufbau zu Datenbank");        	
	       		MyConnect = DriverManager.getConnection(db_url, username, passwort);  		
	       		log.protokollZeile( Aufruf, "Fehler : " + MyConnect.toString()) ;	
	       	} catch ( Exception e) {
	   	      	log.protokollZeile( Aufruf, "Fehler getConnection() : " + e.getMessage()) ;
	       	}
	        log.protokollZeile( Aufruf, "ENDE") ;
		//} else {
		// 	log.protokollZeile(Aufruf, "Connection zur DB besteht noch! --> " + MyConnect);
		//}
     	return MyConnect;
	}

Dann hatte ich noch die Variante ausprobiert:

Code:
MysqlDataSource con = new MysqlDataSource();
  		con.setUser("XXXXX");
  		con.setPassword("XXXX");
  	        con.setPortNumber(4001);
  		con.setServerName("localhost");
  		con.setDatabaseName("kdlist");

Brachte auch keinen Erfolg.

Beim Ausführen sehe ich immer die gleich Meldung in der Catalina.out:

10/31/07 8:47 PM >> loginOK( ) ----> START
10/31/07 8:47 PM >> getDBConnect( ) ----> START
10/31/07 8:47 PM >> getDBConnect( ) ----> Initialisierung der Datenbank Treiber
10/31/07 8:47 PM >> getDBConnect( ) ----> Verbindungsaufbau zu Datenbank
10/31/07 8:47 PM >> getDBConnect( ) ----> Fehler getConnection() : No suitable driver
10/31/07 8:47 PM >> getDBConnect( ) ----> ENDE
10/31/07 8:47 PM >> loginOK( ) ----> Fehler : java.lang.NullPointerException
10/31/07 8:47 PM >> loginOK( ) ----> ENDE


ich habe die mysql_Connector.jar sogar schon in meinen WEB-INF/lib Verzeichnis kopiert. Erbrachte jedoch auch kein Resultat.

Könnte der Fehler vielleich mit der Tomcat-Version in zusammenhang stehen?
Oder habe ich generell was falsch Konfiguriert.
Oder fällt euch sonst irgendetwas ein?

Mit freundlichem Gruß

Konobi
 
Zuletzt bearbeitet:
Bei mir sieht eine Verbindung zur Datenbank immer so in der Art aus:
Java:
Class mySQLdriverClass = Class.forName(config.getString("db.driver.mysql"));
DriverManager.registerDriver((Driver) mySQLdriverClass.newInstance());
mySQLCon = DriverManager.getConnection(config.getString("db.url.mysql")
               , config.getString("db.user.mysql"), config.getString("db.pwd.mysql"));

Wobei 'config' ein PropertyResourceBundle ist.


Gruss
 
Ich probiere das mal mit dem:

Code:
Class mySQLdriverClass = Class.forName("com.mysql.jdbc.Driver");
DriverManager.registerDriver((Driver) mySQLdriverClass.newInstance());

Aber nach meinen Verständnis her sollte meine Version auch funktionieren.

Kann das vielleicht daran liegen, dass ich der MySQL Datenbank nicht erlaube TCP Connection anzunehmen? Aber eigendlich ist das ja keine TCP Verbindung.

Mit freundlichem Gruß

Konobi
 
Zuletzt bearbeitet:
Zurück