Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Web-Services in Visual FoxPro 9.0

Ähnliche Präsentationen


Präsentation zum Thema: "Web-Services in Visual FoxPro 9.0"—  Präsentation transkript:

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

2 Teil 10: Arbeiten mit WebServices
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.

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

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

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

6 Vorbemerkungen Vorbereitend wird immer ein COM-Server benötigt
siehe WebCast 9 Arbeiten mit COM-Server bitte zuerst erfolgreich einen COM-Server erstellen… 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! 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…

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

8 Und schon wieder: die TaskPane!

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

10 WebService-Klase im Formular

11 Testen: Parameter eingeben Ergebnisse als XML Ergebnisse in Grid

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… Bevor man einen eigenen WebService baut, ist es recht sinnvoll, sich das kurz einmal anzuschauen… Allerdings ist das alleine schon ein Vortrag oder WebCast… Details finden sich in diversen Artikeln sowie im Updatebuch zu Visual FoxPro 8.0!

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

31 Typdeklaration wichtig!
Korrekte Typdefinition für Parameter und Returnwert Nur programmatisch vollständig möglich, siehe COM FUNCTION getnews (ldDate as Date) as String Neupublizierung über Wizard notwendig damit aus <message name='hwpclass.getnews'> </message> die richtige Definition wird: <part name='ldDate' type='xsd:dateTime'/>

32 COM-Server indirekt 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 o = CREATEOBJECT("myclass") RETURN o.MyMethod(MyParm) ENDDEFINE Dadurch kann man COM-Server beliebig oft ändern, ohne den WebService neu publizieren zu müssen…

33 Neuerstellung: Freigabe der DLL
Computerverwaltung Restart IIS oder: IISRESET auf dem DOS-Prompt 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): <% FoxPro-Code %> Diverse Aufrufbeispiele auf Erzeugung von formatierten Tabellen mit Parametern Rückgabe von RSS Rückgabe von XML

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

37 Querverweise (Artikel)
02-16 Erstellen von Webdiensten mit Visual FoxPro 06-15 Programmieren Sie Ihre Daten 06-32 Suchen mit Webdiensten 06-35 Veröffentlichen Ihres ersten Webdienstes 1 06-36 Veröffentlichen Ihres ersten Webdienstes 2 06-37 Veröffentlichen Ihres ersten Webdienstes 3 07-16 Websuche mit VFP und Google 01-03 Arbeiten mit Web-Diensten in VFP7 (New18) Erweiterungen bei COM und Webdiensten in VFP 8.0 Whats New in Visual FoxPro 7.0 Chapter 15

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

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

40 Fragen an hotline@dfpug.de oder (besser) http://forum.dfpug.de
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"

Ähnliche Präsentationen


Google-Anzeigen