Ich habe den vollständigen Satz von Demos für SOAP auf CodeCentral als Artikel 28789 veröffentlicht .
Diese enthalten alle einzelnen SOAP-Demos der Delphi 2007-Ära aus dem WebServices
Ordner, die jetzt für Delphi XE und XE2 aktualisiert wurden, einschließlich der Konvertierung der alten WAD-Server in neue INDY VCL-Server. Sie würden denken, dass das beeindruckend war, außer es ist nicht. Es ist wirklich einfach. Verwenden Sie einfach den Assistenten, um ein neues Projekt zu erstellen, und fügen Sie dann die Webdienstschnittstelle und die Implementierungseinheiten sowie alle anderen Einheiten, die zur alten Demo gehören, zum Projekt hinzu. Sobald sie dem Projekt hinzugefügt wurden, funktionieren sie einfach. Grundlegende Demo-SOAP-Server sind in Delphi sehr einfach zu erstellen. Sobald Sie eine funktionierende Demo haben, werden Sie feststellen, dass es ziemlich einfach ist, sie zu ändern und zu erweitern.
Die Demo, die die oben gestellte Frage am besten beantwortet, befindet sich im SOAPDataModule
Unterordner.
Die grundlegenden Probleme mit der Demo aus der Ära 2007 sind zwei:
Der WAD (Web App Debugger) ist weg. Sie müssen einen neuen Server mit dem Indy-Server erstellen, um optimale Demozwecke zu erzielen. So müssen Sie WAD (das nicht mehr vorhanden ist) verwenden oder eine ISAPI-Umgebung unter IIS einrichten, was für Demozwecke kaum ideal ist. Das neue Demo-Projekt, das ich erstellt habe, heißt SoapDMServerINDY und besteht aus einem Datenmodul (datamod_u.pas), einer VCL-Formular-Benutzeroberflächeneinheit ( IndyServerVCLFormUnit.pas
) und einem Indy Server-Webmodul namens IndyServerWebModule.pas
.
Die Delphi 2007-Demo ist dank der neuen Praxis, einen Debug / Win32-Unterordner zu haben, in dem sich die ausführbare Demo-Datei befindet, kaputt gegangen. Sie müssen weiter nach oben gehen. Ich habe den Demo-Server so repariert, dass er Sie mit einer Fehlermeldung warnt, wenn die Datendateien nicht gefunden werden können, und Sie vor dem mysteriösen "XML-Parsing-Fehler" bewahrt. Ich habe auch einige Fehlerprüfungen in einigen Demos hinzugefügt, damit Sie erfahren, dass Sie Interbase installieren müssen, damit diese Demo funktioniert, da für einige Demos Interbase installiert und ausgeführt werden muss und für einen Alias namens IBLOCAL vorhanden sein muss. und vorzugsweise eine Tabelle, die als EMPLOYEE
existierend bezeichnet wird.
Die Elemente dieser Demo sind ein Server ( SoapDMServerINDY , basierend auf dem Code von SOAPDMServerWAD) und der Client SOAPDMClient, der eine Verbindung zur Demo herstellt und zwei Seiten hat. Eine Seite zeigt den grundlegenden Datenzugriff über ein DBGrid + -Datensatz-Remoting und die zweite Seite zeigt, wie eine benutzerdefinierte SOAP-Methode aufgerufen wird.
So verwenden Sie die Demo: Sie müssen den Server starten, auf die Schaltfläche Start klicken, dann den Client starten und auf Verbinden klicken.