![]() |
Webservice programmieren - wie?
Hallo!
Wir haben heute in der Arbeit eine Datenbank mit Positionskoordinaten für Russland geliefert bekommen. Mithilfe dieser Datenbank müssen wir eine Funktion für die Umkreissuche programmieren. Diese Aufgabe habe ich erhalten. Die wichtigste Voraussetzung ist, dass diese Funktion von überall aufgerufen werden kann. Die Funktion soll ganz einfach funktionieren: man übermittelt eine PLZ-Index und den Umkreis und als Antwort bekommt man eine ARRAY (wichtig!) mit allen zutrefenden Postleitzahlen. Zur Verfügung steht ein mächtigen Server mit Windows Server 2003 und IIS 7 drauf. Da habe ich sofort an ein Webservice gedacht. Nun habe ich keine Ahnung wie und mit welchen Mitteln ein Webservice erstellt wird... Was brauche ich? Wie fange ich an? Was soll ich beachten? Und die wichtigste Frage: kann ich das mit dem normalen Delphi programmieren, ohne gleich auf .NET umsteigen zu müssen? |
Re: Webservice programmieren - wie?
Wie meinst du das mit dem Array?
|
Re: Webservice programmieren - wie?
Du könntest auch eine ISAPI-Dll programmieren.
|
Re: Webservice programmieren - wie?
Zitat:
Nirrgenndsss... Installier' dir den ![]() Da fügst du einfach mal das hier ein und fürhst sie im Browser aus oder importierst sie in irgendeine Sprache in irgendeiner IDE.
Delphi-Quellcode:
<%@ WebService Language="Chrome" Class="SimpleWebService" %>
namespace; interface uses System.Collections.Generic, System.Web.Services.*; type [WebServiceBinding(ConformsTo := WsiProfiles.BasicProfile1_1)] SimpleWebService = public class public [WebMethod] method BleistiftWebMethod : List<IrgendwelcheDaten>; end; IrgendwelcheDaten = public class public property Eigenschaft1 : String; property Eigenschaft2 : nullable Integer; end; implementation method SimpleWebService.BleistiftWebMethod : List<IrgendwelcheDaten>; begin result := new List<IrgendwelcheDaten>(); result.Add(new IrgendwelcheDaten(Eigenschaft1 := 'test1', Eigenschaft2 := 1)); result.Add(new IrgendwelcheDaten(Eigenschaft1 := 'test2', Eigenschaft2 := 2)); result.Add(new IrgendwelcheDaten(Eigenschaft1 := 'test3', Eigenschaft2 := 3)); end; end. |
Re: Webservice programmieren - wie?
Zitat:
Die Frage ob ein WebService die beste Lösung ist kann aufgrund deiner Vorgaben nicht getroffen werden (Auch wenns Wahrscheinlich ist). Diese Entscheidung kann erst nach Definition/Finden einer Architektur und eines passenden Design von Klassen/"Aufgabenblöcken" mit der Wahl der verwendeten Klassenbibliothek/Sprache/Framework sein. Wenn alles andere im System in Java entwickelt wurde ist und deine Komponente nur von einr andere (Java) Komponente auf dem gleichen Rechner aufgerufen wird ist ein WebServer evtl. fehl am platz/unpassend. |
Re: Webservice programmieren - wie?
Zitat:
Die Funktion bekommt als Parameter eine PLZ und eine Zahl für den Umkreis. Zurück werden alle PLZ als strings geliefert, die der Anfrage ensrprechen. Diese strings werden in eine Array gepackt und als result ausgegeben. Zitat:
Zitat:
Zu der Architektur kann ich nicht viel sagen, weil da nicht viel zu sagen ist. Ganz einfach: Ich habe einen Windows Server 2003 mit IIS 7 drauf. Auf einem anderen lokalen Windows-Server läuft einen MS SQL Server 2005. Dort haben wir in einer Datenbank mehrere Tabellen mit den Daten. So. Die Aufgabe lautet wie folgt: Erstellen einer Funktion, die alle PLZs in einem bestimmten Umkreis zurückgibt. Zwei Parameter: PLZ = string Umreis = integer Ausgabe als Array. Ich habe bereits alle Datenbankanfragen implementiert und habe am Ende eine Array mit den Daten. Nur wie stelle ich diese jetzt zur Verfügung? |
Re: Webservice programmieren - wie?
Die von Robert vorgeschlagener Quelltext illustriert doch schon ganz anschaulich, wie ein Webservice aufgebaut ist, unter .NET.
Und falls du nicht "nur" den kostenlosen Chrome Compiler einsetzen willst, so kannst du noch leichter unter Delphi 2006 oder Visual Studio 2005 ein Webservice erstellen. Lad dir doch mal z.B. die kostenlose Turbo Explorer für .NET runter und erstelle darin ein Webservice Projekt, und du wirst sehen wie leicht das gehen... |
Re: Webservice programmieren - wie?
Warum das Ganze nicht in PHP oder so umsetzen?
Solange du eine Schnittstelle zur Datenbank hast (und afaik hat PHP ne MSSQL-Schnittstelle) dürfte das kein Problem sein. Man muss ja nicht gleich mit Kanonen auf Spatzen schießen. :P Einziges Manko wäre jetzt noch, dass du null Plan von PHP hast. Aber wenn du schon keinen Schimmer von Web-Services hast, nimmt sich das nicht viel. :P Oder du verwendest das Beispiel von Elvis. |
Re: Webservice programmieren - wie?
Ich würde dafür auch zu PHP (oder Perl, Ruby etc.) tendieren.
Vorteile: - nicht an M$-Plattformen gebunden - von jedem Rechner mit Browser und HTTP-Zugriff auf den Server aufzurufen - PHP ist recht einfach zu erlernen und unterstützt ab der Version 5 auch die OOP (alles vorher waren eher Krückenlösungen) - Du kannst auf die PHP-VCL zurückgreifen |
Re: Webservice programmieren - wie?
Zitat:
Du hast die Nachteile vergessen:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:07 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