![]() |
[10.1 Berlin] Datasnap-Verbindung über HTTP nicht möglich
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:
Zitat:
|
AW: [10.1 Berlin] Datasnap-Verbindung über HTTP nicht möglich
Alternativ kannst du auch die entsprechenden Timeout-Werte in den DbxProperties auf 0 setzen oder leer machen, da sie ja eh nicht verwendet werden. Leider ist TDSHTTPNativeClient private, so daß eine abgeleitete Klasse davon, die den Fehler behebt, hier nicht in Frage kommt. Du kannst natürlich die gesamte Klassenimplementation kopieren, korrigieren (z.B. die entsprechenden Eigenschaften des FHTTPClient setzen) und dann in einer Ableitung von TDBXHTTPLayer instanzieren. Diese abgeleitete Layer-Klasse wird dann mittels TDBXCommunicationLayerFactory.RegisterLayer für HTTP registriert.
Wenn du mit den Defaultwerten von 60 Sekunden leben kannst, wäre das Leeren der DbxProperties noch der einfachste Weg. Schreibst du einen Bugreport? |
AW: [10.1 Berlin] Datasnap-Verbindung über HTTP nicht möglich
Zitat:
Delphi-Quellcode:
nehmen können.
class helper
(Tut mir leid, der musste jetzt sein). |
AW: [10.1 Berlin] Datasnap-Verbindung über HTTP nicht möglich
Zitat:
|
AW: [10.1 Berlin] Datasnap-Verbindung über HTTP nicht möglich
Und wenn man statt einer Exception einfach einen Hint ausgegeben hätte, müsste ich gar nichts tun, würde aber zur Designtime darauf hingewiesen, dass Timeouts nicht implementiert sind. Mal wieder prima gemacht :evil:
|
AW: [10.1 Berlin] Datasnap-Verbindung über HTTP nicht möglich
Zitat:
Timeouts sind nichtsdestotrotz implementiert - man kann die Werte nur nicht über die DbxProperties ändern, sondern muss mit den Defaultwerten Vorlieb nehmen. |
AW: [10.1 Berlin] Datasnap-Verbindung über HTTP nicht möglich
Endlich nutze ich das neue QC auch mal:
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:25 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz