Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Web-Services in Visual FoxPro 9.0 deutschsprachige FoxPro User Group Rainer Becker Microsoft Visual FoxPro 9.0 WebCast WEB.

Ähnliche Präsentationen


Präsentation zum Thema: "Web-Services in Visual FoxPro 9.0 deutschsprachige FoxPro User Group Rainer Becker Microsoft Visual FoxPro 9.0 WebCast WEB."—  Präsentation transkript:

1 Web-Services in Visual FoxPro 9.0 deutschsprachige FoxPro User Group Rainer Becker Microsoft Visual FoxPro 9.0 WebCast WEB

2 Teil 10: Arbeiten mit WebServices Mittwoch, , 16:00 – 17:00 Uhr Mittwoch, , 16:00 – 17:00 Uhr Beschreibung: Gerne wird Visual FoxPro für die schnelle Anwendungsentwicklung von Desktop- Applikationen oder von Client/Server-Applikationen verwendet. Aber auch die Erstellung von WebServices stellt mit dieser leistungsfähigen Entwicklungsumgebung keinerlei Problem dar! Die schnellen Datenbank- und Stringfunktionen erlauben die leichte Erstellung von performanten Diensten für eine verteilte Anwendung. Beschreibung: Gerne wird Visual FoxPro für die schnelle Anwendungsentwicklung von Desktop- Applikationen oder von Client/Server-Applikationen verwendet. Aber auch die Erstellung von WebServices stellt mit dieser leistungsfähigen Entwicklungsumgebung keinerlei Problem dar! Die schnellen Datenbank- und Stringfunktionen erlauben die leichte Erstellung von performanten Diensten für eine verteilte Anwendung.

3 Rainer Becker dFPUG dFPUG Online-Angebote Online-Angebote Loseblattsammlung Loseblattsammlung VFP-Entwicklerkonferenz VFP-Entwicklerkonferenz VFP-Lokalisierung VFP-Lokalisierung Framework Visual Extend Framework Visual Extend MVP, MCP, ISV MVP, MCP, ISV Wizards & Builders GmbH Wizards & Builders GmbH

4 Wie bekomme ich VFP ? Update von 6.0, 7.0, 8.0 sowie VS 97 Update von 6.0, 7.0, 8.0 sowie VS 97 Nicht von VFP 5.0 oder früher Nicht von VFP 5.0 oder früher Internationale und US/Canada-Version Internationale und US/Canada-Version Preisunterschied durch Dollarverfall Preisunterschied durch Dollarverfall Technisch identisch Technisch identisch Kein Support / Marketingbudget für US-Version in BRD Kein Support / Marketingbudget für US-Version in BRD dFPUG bietet exklusiv Deutsche Version dFPUG bietet exklusiv Deutsche Version Benutzeroberfläche, Berichtsdesigner, Werkzeuge Benutzeroberfläche, Berichtsdesigner, Werkzeuge

5 Vortragsthemen Verwendbare WebServices Verwendbare WebServices Aufrufen von WebServices Aufrufen von WebServices Begriffe, Versionsgeschichte Begriffe, Versionsgeschichte Vorbereitungen Vorbereitungen SOAP-Toolkit SOAP-Toolkit IIS-Konfiguration IIS-Konfiguration Diverse weitere Hinweise Diverse weitere Hinweise Andere Möglichkeiten Andere Möglichkeiten

6 Vorbemerkungen Vorbereitend wird immer ein COM-Server benötigt Vorbereitend wird immer ein COM-Server benötigt siehe WebCast 9 Arbeiten mit COM-Server siehe WebCast 9 Arbeiten mit COM-Server bitte zuerst erfolgreich einen COM-Server erstellen… bitte zuerst erfolgreich einen COM-Server erstellen… und ggf. ein paar WebServices einfach mal aufrufen… und ggf. ein paar WebServices einfach mal aufrufen… Die Aufruflogik im Internet ist grundsätzlich unter- schiedlich! Deshalb sind Geschäftsobjekte nur bedingt geeignet & separate COM-Server oft besser! Die Aufruflogik im Internet ist grundsätzlich unter- schiedlich! Deshalb sind Geschäftsobjekte nur bedingt geeignet & separate COM-Server oft besser! WebServices müssen streng typisiert sein, was bei COM-Server nur optional ist, ggf PRG-Datei separat WebServices müssen streng typisiert sein, was bei COM-Server nur optional ist, ggf PRG-Datei separat Für das Deployment wird immer ein Windows- WebServer im Internet benötigt… Für das Deployment wird immer ein Windows- WebServer im Internet benötigt…

7 Verwendbare WebServices Statt einen WebService selbst anzubieten, kann man erstmal auch nur auf einen solchen zugreifen, z.B.: Statt einen WebService selbst anzubieten, kann man erstmal auch nur auf einen solchen zugreifen, z.B.: FoxWiki (http://fox.wikis.com) FoxWiki (http://fox.wikis.com)http://fox.wikis.com Universal Thread (http://www.universalthread.com) Universal Thread (http://www.universalthread.com)http://www.universalthread.com ProFox (http://www.leafe.com) ProFox (http://www.leafe.com)http://www.leafe.com FoxCentral (http://www.foxcentral.com) FoxCentral (http://www.foxcentral.com)http://www.foxcentral.com Google, Amazon, eBay, FedEx, WhoIs, CurrencyConverter, BabelFish, Headline News Google, Amazon, eBay, FedEx, WhoIs, CurrencyConverter, BabelFish, Headline News dFPUG-Portal (in Vorbereitung) dFPUG-Portal (in Vorbereitung) dFPUG-Forum (in Vorbereitung) dFPUG-Forum (in Vorbereitung)

8 Und schon wieder: die TaskPane!

9 Client für WebServices Interaktives Testen mit Taskpane Interaktives Testen mit Taskpane Einbindung in eigene Formulare: Einbindung in eigene Formulare: Öffnen des Formulars Öffnen des Formulars Öffnen der Toolbox Öffnen der Toolbox Drag & Drop der Klasse WebService auf das Formular Drag & Drop der Klasse WebService auf das Formular Anwählen der Klasse mit der Maus Anwählen der Klasse mit der Maus Rechte Maustaste für Generatoren (Builder) Rechte Maustaste für Generatoren (Builder) Aufruf des XML WebService Builders Aufruf des XML WebService Builders

10 WebService-Klase im Formular

11 Parameter eingeben Parameter eingeben Ergebnisse als XML Ergebnisse als XML Ergebnisse in Grid Ergebnisse in Grid Testen:

12 Zuordnung Parameter/Ausgabe

13 Wechsel des WS / komplexe Daten

14 Soviel zum Aufruf von WS Seit Visual FoxPro 8.0 gibt es umfangreiche Werkzeuge, die den Entwickler beim Aufruf eines WebServices unterstützen… Seit Visual FoxPro 8.0 gibt es umfangreiche Werkzeuge, die den Entwickler beim Aufruf eines WebServices unterstützen… Bevor man einen eigenen WebService baut, ist es recht sinnvoll, sich das kurz einmal anzuschauen… Bevor man einen eigenen WebService baut, ist es recht sinnvoll, sich das kurz einmal anzuschauen… Allerdings ist das alleine schon ein Vortrag oder WebCast… Allerdings ist das alleine schon ein Vortrag oder WebCast… Details finden sich in diversen Artikeln sowie im Updatebuch zu Visual FoxPro 8.0! Details finden sich in diversen Artikeln sowie im Updatebuch zu Visual FoxPro 8.0!

15 Begriffserläuterungen WSDL: Web Service Description Language WSDL: Web Service Description Language XML-Beschreibung der XML-Beschreibung der WSML: Web Service Meta Language WSML: Web Service Meta Language COM-Referenz, siehe Programme\MSSOAP\SOAP.CHM COM-Referenz, siehe Programme\MSSOAP\SOAP.CHM UDDI: Universal Description, Discovery, Integration UDDI: Universal Description, Discovery, Integration Verzeichnis von verfügbaren Webdiensten Verzeichnis von verfügbaren Webdiensten SOAP: Simple Object Access Protocoll SOAP: Simple Object Access Protocoll SOA: Service Oriented Architecture SOA: Service Oriented Architecture

16 Versionsgeschichte Einführung von WebServices in: Visual FoxPro 7.0 mit SOAP-Toolkit 2.0 Einführung von WebServices in: Visual FoxPro 7.0 mit SOAP-Toolkit 2.0 Aktuell: Visual FoxPro 9.0 mit SOAP-Toolkit 3.0 Aktuell: Visual FoxPro 9.0 mit SOAP-Toolkit 3.0 Lifecycle-Support Lifecycle-Support Visual FoxPro 9.0 bis 2014 Visual FoxPro 9.0 bis 2014 SOAP-Toolkit bis 2013 (NUR für VFP!) SOAP-Toolkit bis 2013 (NUR für VFP!) Weiterentwicklung auf Basis von INDIGO Weiterentwicklung auf Basis von INDIGO kommt mit WinFX als AddOn für XP sowie in Vista kommt mit WinFX als AddOn für XP sowie in Vista kapselt VFP-WebServices komplett in.NET kapselt VFP-WebServices komplett in.NET

17 Sinnvolle WebServices in Apps Beispiele aus dem Framework Visual Extend 9.5: Beispiele aus dem Framework Visual Extend 9.5: Posten von Nachrichten in Support-Forum Posten von Nachrichten in Support-Forum Senden von Fehlermeldungen in Fehlerdatenbank Senden von Fehlermeldungen in Fehlerdatenbank Registrierung von Anwendern (Testversion) Registrierung von Anwendern (Testversion) Bestellung von Anwendern (Testverison auf Vollversion) Bestellung von Anwendern (Testverison auf Vollversion) Download von Updates Download von Updates Bei temporärer Nichtverfügbarkeit eines Internet- zugangs oder des WebServices alternativ … Bei temporärer Nichtverfügbarkeit eines Internet- zugangs oder des WebServices alternativ … Für Taskpane kein WebService notwendig… Für Taskpane kein WebService notwendig…

18 Vorbereitung des COM-Servers Erstellungsoption: Multi-Threaded COM-Server Erstellungsoption: Multi-Threaded COM-Server Mindestens 1x OLEPUBLIC Mindestens 1x OLEPUBLIC 1 WebService je OLEPUBLIC 1 WebService je OLEPUBLIC Max. 1 Webservice Max. 1 Webservice

19 WebService-Erstellung Projektinfo Servers: Projektinfo Servers: Multi-Use Multi-Use Project Name Project Name Multi-Threaded und Multi Use: zwingend notwendig für Internet-Betrieb wg. Hauptspeicher! Multi-Threaded und Multi Use: zwingend notwendig für Internet-Betrieb wg. Hauptspeicher!

20 WebService Publisher Wizard Aufruf des WebService- Builders im Projekt Aufruf des WebService- Builders im Projekt Kontrolle Pfadangabe Kontrolle Pfadangabe Ggf. Auswahl Klasse Ggf. Auswahl Klasse Ggf. weitere Optionen Ggf. weitere Optionen

21 Erweiterte Optionen Eventuell erweiterte Optionen einstellen: Umstellung ASP Eventuell erweiterte Optionen einstellen: Umstellung ASP ProjectHook ProjectHook Wsphook in _webservices Wsphook in _webservices Speichert unter FOXWS.DBF in _FOXCODE Speichert unter FOXWS.DBF in _FOXCODE IntelliSense-Script erzeugen lassen IntelliSense-Script erzeugen lassen

22 Virtuelle Verzeichnisse im IIS Wird automatisch angelegt Wird automatisch angelegt Unterschied zwischen Pfad und virtuellem Verzeichnis UND Startzverzeichnis! Unterschied zwischen Pfad und virtuellem Verzeichnis UND Startzverzeichnis! Kann leider hier nicht hinreichend behandelt werden Kann leider hier nicht hinreichend behandelt werden

23 Ergebnisse des Builders.WSDL (Description).WSDL (Description).WSML (Meta/COM).WSML (Meta/COM) Ggf. zusätzliche ASP-Seite Ggf. zusätzliche ASP-Seite wird direkt aufgerufen wird direkt aufgerufen ProjectHook für Neugenerierung ProjectHook für Neugenerierung

24 Anmeldung bei IntelliSense Eintragen der Klasse unter Types / Web Services im IntelliSense- Manager Eintragen der Klasse unter Types / Web Services im IntelliSense- Manager

25 Ansprechen von WebServices IntelliSense erzeugt entsprechenden Code: IntelliSense erzeugt entsprechenden Code: und zeigt aufrufbare Methoden zur Auswahl an… und zeigt aufrufbare Methoden zur Auswahl an…

26 Was geht schief? Mögliche Probleme (OLE-Fehlermeldungen): Mögliche Probleme (OLE-Fehlermeldungen): bei Pfaden: Windows/System32 (Runtime) bei Pfaden: Windows/System32 (Runtime) CD JUSTPATH( _VFP.ServerName) CD JUSTPATH( _VFP.ServerName) Probleme mit SOAPISAP.DLL (installieren oder ASP) Probleme mit SOAPISAP.DLL (installieren oder ASP)

27 Registrierung Listener (1) Registrierung der SOAPISAP.DLL für performantere ISAPI-Listener: Registrierung der SOAPISAP.DLL für performantere ISAPI-Listener: 1.Default-Website, Eigenschaften, Home Directory 2.Button Configuration 3.Auswählen der Endung.WSDL

28 Registrierung Listener (2) Auswahl von C:\Program Files\Common Files\MSSoap\Binaries\soapisap.dll Auswahl von C:\Program Files\Common Files\MSSoap\Binaries\soapisap.dll Falls nicht sichtbar: INI usw. wählen und ändern Falls nicht sichtbar: INI usw. wählen und ändern nicht auf XP… nicht auf XP…

29 Alternativer Aufruf: SOAP-Client Statt Installation der Klassen von Visual FoxPro kann man auch direkt mit dem SOAP-Client zugreifen Statt Installation der Klassen von Visual FoxPro kann man auch direkt mit dem SOAP-Client zugreifen Codebeispiel: Codebeispiel: lows = NEWOBJECT("MSSOAP.SoapClient30") lows.MSSoapInit("http://dlabsoftuh.homeip.net/webservi ces/dlabsoft.wsdl") ? lows.zeittest() Wesentlich einfachere Zugriffsmöglichkeit! Wesentlich einfachere Zugriffsmöglichkeit!

30 Minimale Sicherheit einbauen Internet Informationsdienste Internet Informationsdienste Eigenschaften virtuelles Verzeichnis Eigenschaften virtuelles Verzeichnis Reiter Verzeichnissicherheit Reiter Verzeichnissicherheit Abschalten anonymer Zugriff Abschalten anonymer Zugriff Einschalten Standardauthentifizierung Einschalten Standardauthentifizierung Erweiterung im Codebeispiel: Erweiterung im Codebeispiel: lows.ConnectorProperty("AuthUser") = "username" lows.ConnectorProperty("AuthPassword")= "password"

31 Typdeklaration wichtig! Korrekte Typdefinition für Parameter und Returnwert Korrekte Typdefinition für Parameter und Returnwert Nur programmatisch vollständig möglich, siehe COM Nur programmatisch vollständig möglich, siehe COM FUNCTION getnews (ldDate as Date) as String FUNCTION getnews (ldDate as Date) as String Neupublizierung über Wizard notwendig damit aus Neupublizierung über Wizard notwendig damit aus die richtige Definition wird: die richtige Definition wird:

32 COM-Server indirekt aufrufen Ggf. aus dem Programm den COM-Server aufrufen Ggf. aus dem Programm den COM-Server aufrufen DEFINE CLASS MyCOMInterface AS Custom OLEPUBLIC FUNCTION MyMethod (MyParm AS String) AS String LOCAL o AS myclass LOCAL o AS myclass o = CREATEOBJECT("myclass") o = CREATEOBJECT("myclass") RETURN o.MyMethod(MyParm) RETURN o.MyMethod(MyParm)ENDDEFINE Dadurch kann man COM-Server beliebig oft ändern, ohne den WebService neu publizieren zu müssen… Dadurch kann man COM-Server beliebig oft ändern, ohne den WebService neu publizieren zu müssen…

33 Neuerstellung: Freigabe der DLL Computerverwaltung Restart IIS Computerverwaltung Restart IIS oder: IISRESET auf dem DOS-Prompt oder: IISRESET auf dem DOS-Prompt oder: KILL.EXE um DLL abzuschiessen oder: KILL.EXE um DLL abzuschiessen

34 Es geht für manche Verwendungszwecke auch EINFACHER! In manchen Fällen reicht vielleicht auch eine einfachere Lösung: Hinweise auf diverse Beispiele auf

35 Erstellen von AFP-Seiten Verwendung von Visual FoxPro als Skriptsprache in HTML-Seiten mit Active FoxPro Pages (AFP/AFX): Verwendung von Visual FoxPro als Skriptsprache in HTML-Seiten mit Active FoxPro Pages (AFP/AFX): Diverse Aufrufbeispiele auf Diverse Aufrufbeispiele auf Erzeugung von formatierten Tabellen mit Parametern Erzeugung von formatierten Tabellen mit Parametern Rückgabe von RSS Rückgabe von RSS Rückgabe von XML Rückgabe von XML

36 Webanwendungen: VFX–AFX Wizard Internet-Formulare per Mausklick! Internet-Formulare per Mausklick!Voraussetzungen: VFX 9.5 und VFP 9.0 SP1 VFX 9.5 und VFP 9.0 SP1 AFX AFX Ähnlich ASP, aber VFP basiert Ähnlich ASP, aber VFP basiert IIS IIS FoxPro-Variante in AFX enthalten FoxPro-Variante in AFX enthaltenSkalierbarkeit: über AFP für viele parallele User / Interneteinsatz über AFP für viele parallele User / Interneteinsatz

37 Querverweise (Artikel) Erstellen von Webdiensten mit Visual FoxPro Erstellen von Webdiensten mit Visual FoxPro Programmieren Sie Ihre Daten Programmieren Sie Ihre Daten Suchen mit Webdiensten Suchen mit Webdiensten Veröffentlichen Ihres ersten Webdienstes Veröffentlichen Ihres ersten Webdienstes Veröffentlichen Ihres ersten Webdienstes Veröffentlichen Ihres ersten Webdienstes Veröffentlichen Ihres ersten Webdienstes Veröffentlichen Ihres ersten Webdienstes Websuche mit VFP und Google Websuche mit VFP und Google Arbeiten mit Web-Diensten in VFP7 (New18) Arbeiten mit Web-Diensten in VFP7 (New18) Erweiterungen bei COM und Webdiensten in VFP 8.0 Erweiterungen bei COM und Webdiensten in VFP 8.0 Whats New in Visual FoxPro 7.0 Chapter 15 Whats New in Visual FoxPro 7.0 Chapter 15

38 Querverweise (Vorträge) E-WRAP.PDF I wish I had a Web Service E-WRAP.PDF I wish I had a Web Service D-SOAP Web Services mit VFP und SOAP D-SOAP Web Services mit VFP und SOAP D-WEBS Sichere WebServices (Security) D-WEBS Sichere WebServices (Security) E-SERV Using Web Services with VFP 7.0 E-SERV Using Web Services with VFP 7.0 D-SERV Three-Tier Architektur & die Webservices von VFP7 D-SERV Three-Tier Architektur & die Webservices von VFP7 E-FATX Internet enabling Fat Client applications with XML E-FATX Internet enabling Fat Client applications with XML D-IUPD Internet-Features für 'alte' Applikationen D-IUPD Internet-Features für 'alte' Applikationen NET Chapter 12 XML Web Services NET Chapter 12 XML Web Services E-SERV Using SQL-Server XML Services E-SERV Using SQL-Server XML Services

39 Weiterführendes Material Visual FoxPro 9.0 Visual FoxPro 9.0 Updatebuch Updatebuch Roadshow-CD Roadshow-CD Lokalisierungs-CD Lokalisierungs-CD Visual FoxPro 8.0 Visual FoxPro 8.0 Updatebuch Updatebuch Deutsche Hilfedatei Deutsche Hilfedatei Online-Angebote der dFPUG Online-Angebote der dFPUG Forum, Portal, eNewsletter, Homepage, Wiki Forum, Portal, eNewsletter, Homepage, Wiki

40 Vielen Dank! Fragen an oder (besser) Besuchen Sie unsere Webseiten:

41 Riddle of the day ? CHRTRAN(CHRTRAN('S6O1 W2S634G 5789', '6789', 'TIME()'), '12345','PAINT()')


Herunterladen ppt "Web-Services in Visual FoxPro 9.0 deutschsprachige FoxPro User Group Rainer Becker Microsoft Visual FoxPro 9.0 WebCast WEB."

Ähnliche Präsentationen


Google-Anzeigen