Soap.InvokeRegistry.TInvokableClassRegistry.RegisterInterface
Delphi
procedure RegisterInterface(Info: PTypeInfo; const Namespace: InvString = ''; const WSDLEncoding: InvString = ''; const Doc: string = ''; const ExtName: InvString = '');
C++
void __fastcall RegisterInterface(System::Typinfo::PTypeInfo Info, const System::UnicodeString Namespace = System::UnicodeString(), const System::UnicodeString WSDLEncoding = System::UnicodeString(), const System::UnicodeString Doc = System::UnicodeString(), const System::UnicodeString ExtName = System::UnicodeString());
Eigenschaften
Typ | Sichtbarkeit | Quelle | Unit | Übergeordnet |
---|---|---|---|---|
procedure function |
public | Soap.InvokeRegistry.pas Soap.InvokeRegistry.hpp |
Soap.InvokeRegistry | TInvokableClassRegistry |
Beschreibung
Registriert ein aufrufbares Interface.
Rufen Sie RegisterInterface auf, um ein aufrufbares Interface in der Aufrufregistrierung zu registrieren. Normalerweise wird der Aufruf von RegisterInterface durch den WSDL-Import oder den Web-Dienst-Experten hinzugefügt. In Delphi wird dieser Aufruf in den Initialisierungsabschnitt der Unit eingefügt, die das aufrufbare Interface definiert. In C++ wird er in einer RegTypes-Methode aufgerufen, die die Direktive pragma startup verwendet.
Sobald ein aufrufbares Interface registriert wurde, kann es von Client-Anwendungen statisch für die Verwendung von THTTPRio gebunden werden. Für den Server müssen Sie außerdem die Implementierungsklasse mit der Methode RegisterInvokableClass registrieren, bevor der Server auf ankommende SOAP-Anforderungen reagieren kann.
PInfo ist ein Zeiger auf die Typinformationen für das Interface. Sie erhalten diese Typinformation von einem aufrufbaren Interface, indem Sie die Funktion TypeInfo (Delphi) bzw. den Operator __delphirtti (C++) aufrufen.
Namespace gibt einen Namespace an, der das Interface eindeutig bezeichnet. Wenn Namespace einen leeren String enthält, generiert RegisterInterface automatisch einen eindeutigen String, der als Namespace-URI verwendet wird. Beachten Sie, dass RegisterInterface einen SOAP-Action-Header auf Basis des Namespace des Interface generiert. Sie können diesen SOAP-Action-Header mit der Methode RegisterDefaultSOAPAction ändern.
WSDLEncoding gibt ein Codierattribut an, das im XML-Header eines WSDL-Dokuments erscheint, das die Definition dieses Interface (oder besser: des korrespondierenden Port-Typs) enthält. Das Codierattribut beschreibt den Zeichensatz für das WSDL-Dokument.
Doc ist ein String, der den Verwendungszweck des Interface beschreibt. Dieser String wird verwendet, wenn die Anwendung ein WSDL-Dokument veröffentlicht, die dieses Interface definiert.
ExtName ist der Name des Porttyps, der diesem Interface in einem WSDL-Dokument entspricht. Wenn die Namen des Porttyps und des Interface identisch sind, kann ExtName ein leerer String sein. ExtName kann für Porttypen in einem WSDL-Dokument eingesetzt werden, deren Name kein gültiger Object Pascal-Bezeichner ist (z.B. ein Schlüsselwort).
DefSOAPAction ist der SOAP-Aktions-Header, der für die Nachrichten verwendet werden soll, die Aufrufe von den Methoden dieses Interface repräsentieren. Wenn Sie keinen Standard-SOAP-Aktions-Header bereitstellen, verwendet Ihre Anwendung einen automatisch auf der Basis des Namespace dieses Interface generierten Header.