Einzelnen Beitrag anzeigen

Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#1

[10.1 Berlin] Datasnap-Verbindung über HTTP nicht möglich

  Alt 25. Apr 2016, 10:11
Ich wollte gerade mein aktuelles Projekt testhalber auf 10.1 hochziehen. Dieses verwendet eine Datasnap-Verbindung über HTTP. Leider kommt diese nicht zustande, sondern bricht mit einer ENotImplemented-Exception ab. Nach langem Debuggen konnte ich auch die Ursache ermitteln: in der Unit Data.DBXHTTPLayer besitzt die Klasse TDBXHTTPLayer eine private Property vom Typ TDSHTTPClient. Innerhalb der Open-Methode von TDBXHTTPLayer werden Timeout-Werte für diese Property gesetzt. OK, der Setter ist recht unspektakulär:
Zitat:
Delphi-Quellcode:
procedure TDSHTTPClient.SetConnectTimeout(AMilisec: Integer);
begin
  // do nothing here
end;
Leider handelt es sich aber faktisch um eine Ableitung davon, nämlich TDSHTTPNativeClient (per ClassFactory instanziert, soweit ich sehen konnte). Hier ist der Setter überschrieben:
Zitat:
Delphi-Quellcode:
procedure TDSHTTPNativeClient.SetConnectTimeout(AMilisec: Integer);
begin
                                     
  raise ENotImplemented.Create('SetConnectTimeout');
end;
Für mich heißt das also: Originalunit ins Projektverzeichnis kopieren, dem Projekt hinzufügen und die Exceptions auskommentieren, oder kennt jemand noch einen anderen Weg? Try-Except dürfte nicht helfen, da dieser Block ja viel zu weit "außen" wäre, oder?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat