Das Notes Forum

Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: MX96 am 27.03.11 - 12:15:21

Titel: Verbindung zu MSSQL mit JDBC Type 4
Beitrag von: MX96 am 27.03.11 - 12:15:21
Hallo zusammen,

ich bin gerade dabei den Zugriff auf eine MSSQL 2005 DB aus Notes heraus zu realisieren.
Das ganze soll in Java realisiert werden, da dann ausser dem eingebundenen JDBC-Treiber
keine weiteren Sourcen oder Einstellungen notwendig sind. Ich verwende den JDBC type 4 Treiber
von Microsoft (Microsoft SQL Server JDBC Driver 3.0). Das entsprechende jar-File habe in
eine Java-Bibliothek einer Notes-DB eingebunden (Edit Project) und den entsprechenden Java-Code
integriert.
Folgend Code verwende ich zum Verbinden (ist erstmal nur zum Test ob das Ganze überhaupt funktioniert)

try
{
  // Treiber registrieren 
  new com.microsoft.sqlserver.jdbc.SQLServerDriver();
}
// Fehler beim Registrieren abfangen
catch(Exception e)
{
  e.printStackTrace();
  System.out.println(e.getMessage());
}


try
{
  // Verbindung herstellen
  con = DriverManager.getConnection("jdbc:sqlserver://192.168.0.10 \\SQLEXPRESS;user=sa;password=kennwort;");
  // Prüfen ob Verbindung hergestellt werden konnte
  if(con!=null)
   System.out.println("Connection Successful!");
}
// Fehler beim Registrieren und Verbinden abfangen
catch(Exception e)
{
  e.printStackTrace();
  System.out.println(e.getMessage());
}


Führe ich den Code manuell vom Notes Client aus funktioniert der Zugriff ohne Probleme.
Binde ich das Ganze in einen Agenten ein und lasse es zeitgesteuert laufen, dann erhalte ich die Fehlermeldung
"Socket-Verbindung mit {0} nicht zulässig".

Zunächst hatte ich gedacht, dass der Agent den eingebundenen JDBC-Treiber nicht finden oder laden kann.
Aber der Fehler wird aus dem zweiten try-Block geworfen, also beim Herstellen der Verbindung.

Bin im Moment etwas ratlos, da es wohl nicht am Registrieren des Treibers liegt, sondern am Herstellen
der Verbindung, was aber bei manueller Ausführung funktioniert.

Wäre über jeden Hinweis dankbar. Vielleicht hat jemand ja schonmal ein ähnliches Problem
bzw. eine ähnlich Fehlermeldung gehabt.



Danke

Karsten
Titel: Re: Verbindung zu MSSQL mit JDBC Type 4
Beitrag von: heini_schwammerl am 27.03.11 - 12:57:04
Evtl. mal testweise in den Einstellungen des Agenten mehr Rechte vergeben. Socket Verbindungen sind mit den Default Einstellungen wahrscheinlich unterbunden damit da nicht jemand heimlich nach Hause telefonieren kann.
Titel: Re: Verbindung zu MSSQL mit JDBC Type 4
Beitrag von: MX96 am 27.03.11 - 18:39:41
Hallo,

das klingt gut. Werde das morgen gleich mal testen.
Könnte denn auch der Windows-.Account mit dem der Domino-Server auf dem Windows-Server läuft da vielleicht noch das Problem sein. Bisher hatte ich das ausgeschlossen, da beim manuellen Ausführen auf dem Client ja mein Account benutzt wird und der auch nicht explizit am MSSQL-Server berechtigt wurde.

Danke nochmal für den Tipp mit den Agenten-Sicherheitseinstellungen.

Gruß

Karsten
Titel: Re: Verbindung zu MSSQL mit JDBC Type 4
Beitrag von: MX96 am 28.03.11 - 21:38:42
Hallo,

danke nochmal für den Tipp. Hab heute die Sicherheitseinstellung des Agenten auf Stufe 2 gesetzt und schon lief der Zugriff auf MSSQL .

Danke und Gruß.

Karsten