Einzelnen Beitrag anzeigen

Maliko

Registriert seit: 20. Jun 2019
91 Beiträge
 
Delphi 10.3 Rio
 
#1

OracleConnection.Logon crashed in Windows Dienst

  Alt 2. Okt 2020, 12:32
Delphi-Version: 10.3 Rio
Huhu,

ich bin gerade echt am Verzweifeln. Und zwar habe ich einen Dienst geschrieben, welcher einen DataSnap-Rest-Server zur Verfügung stellt. Der Server selbst funktioniert auch einwandfrei (zumindest solange kein SSL aktiviert ist, aber das ist ein anderes Problem was ich mir zu gegebener Zeit anschauen werde), sobald ich allerdings versuche eine Verbindung zur Datenbank aufzubauen bekomme ich nur noch ein 500 Internal Server Error zurück.

Durchs setzen von Try-Except-Blöcken habe ich herausgefunden, dass das Problem die TOracleSession.Logon ist. Sobald die Procedure versucht wird aufzurufen rennt er in die Exception. Ich hab den Code auch einfach mal in einen anderen Server geworfen, der in einer Konsolenanwendung läuft, um Debuggen zu können, nur dort läuft er problemlos durch. Ich bin grad echt überfragt was da fehlt.

Hat vielleicht jemand von euch eine Ahnung was ich falsch mache und berücksichtigen muss, wenn ich versuche über TNS eine Verbindung zu Oracle über einen Windows-Dienst aufzubauen? Anbei auch noch der Code zum Verbindungsaufbau:

Delphi-Quellcode:
constructor TSessionManager.Create;
var mLog : TLogDatei;
begin
  FconfigIni := TIniFile.Create(ChangeFileExt(Application.ExeName, '.ini'));

  try
    FConnection := TOracleSession.Create(nil);
    FConnection.LogonDatabase := FconfigIni.ReadString('Datenbank', 'Database', 'db');
    FConnection.LogonUsername := FconfigIni.ReadString('Datenbank', 'Username', 'user');
    FConnection.LogonPassword := FconfigIni.ReadString('Datenbank', 'Password', 'pass');

    try
      FConnection.LogOn;
    except

    end;
  finally
    FconfigIni.Free;
  end;
end;
Vielen Dank auf jedem Fall schon einmal im Vorraus. Ich weiß nämlich grad echt nicht mehr weiter.

Viele Grüße
Maliko
  Mit Zitat antworten Zitat