ASP.NET Web Services anlegen

Größe: px
Ab Seite anzeigen:

Download "ASP.NET Web Services anlegen"

Transkript

1 First Kapitel 2 KAPITEL 2 ASP.NET Web Services anlegen Mit dem.net Framework kann man einen einfachen Web Service schnell zum Laufen bringen. In wenigen Minuten und mit noch weniger Code-Zeilen können Sie einen einfachen»hello World«-Service bauen; dazu brauchen Sie kein Wissen über HTTP, SOAP, WSDL oder irgendeine der diversen Technologien, die die Grundlagen für Web Services bilden. Tatsächlich müssen Sie als Benutzer des Microsoft Visual Studio.NET zum Anlegen eines einfachen»hello World«-Service nur ein neues Visual C#- oder Visual Basic- ASP.NET Web Service-Projekt anlegen und die Kommentarzeichen vor dem Beispiel- Code der Vorlage entfernen. In diesem Kapitel lernen Sie einiges über ASP.NET, die neue Microsoft-Technologie zum Erzeugen von Webanwendungen und -Services, und erfahren, wie Sie die.net-plattform und Visual Studio.NET zum Anlegen einiger einfacher Web Services benutzen. Wir werden auch über einige Eigenschaften von.net sprechen, die Sie auf den Weg zur Entwicklung wohldokumentierter, skalierbarer Web Service-Anwendungen bringen. Am Ende dieses Kapitels werden Sie solide Kenntnisse darüber haben, wie.net Web Services unterstützt und wie Sie die.net-plattform benutzen, um Web Services anzulegen. Wir beginnen mit dem unvermeidlichen»hello World«-Beispiel als Web Service. Einen Web Service anlegen:»hello World«In diesem Abschnitt werden Sie einen einfachen Web Service in der Tradition von»hello World«anlegen. Durch dieses kurze Beispiel sehen Sie, wie leicht das Anlegen eines funktionierenden Web Services mit ASP.NET (mit einem Texteditor oder mit VS.NET) ist, und Sie lernen die grundlegenden Technologien hinter.net Web Services kennen. Einen Web Service mit Inline-Code anlegen Zwar bietet Visual Studio.NET für.net-entwicklungen eine integrierte Entwicklungsumgebung mit großer Funktionsvielfalt, aber diese ist zum Anlegen von.net Web Ser- 21

2 vices nicht erforderlich. Sie können Anwendungen auch mit Ihrem Lieblings-Texteditor und den mit dem.net Framework SDK gelieferten Kommandozeilenwerkzeugen anlegen. Hier benutzen wir Notepad als Texteditor, aber Sie können den Editor benutzen, der Ihnen am angenehmsten ist (Emacs oder vi). Wenn Sie sich entscheiden, mit einem Texteditor zu entwickeln, müssen Sie all Ihren Code in einer oder mehreren Textdateien unterbringen, jeder die Dateinamenserweiterung.asmx geben und sie in ein IIS-Verzeichnis auf einem Server oder einer Workstation legen, auf dem beziehungsweise auf der das.net Framework installiert ist. Sobald Sie den Code in einem vom IIS-Webserver verwalteten Verzeichnis speichern, ist er startklar das war s! Wie Sie die Datei auf Ihren Webserver bekommen, ist Ihr Problem. Wenn der IIS lokal auf Ihrer Workstation läuft (und Sie das.net Framework installiert haben), ist das mit dem Speichern der Datei an einem geeigneten Ort auf Ihrer lokalen Festplatte (z.b. c:\inetpub\wwwroot\) erledigt. Wenn Sie einen Remote-Server benutzen (in diesem Fall braucht das.net Framework nicht lokal installiert zu werden), müssen Sie vielleicht FTP oder eine Netzwerkfreigabe benutzen (dazu später mehr). Sobald Sie einen Texteditor und einen Speicherort gewählt haben, müssen Sie nur noch den Code schreiben. Beispiel 2-1 zeigt den Code für eine C#-Version des allgegenwärtigen»hello World«-Beispiels; anders als die Desktop-Version liefert diese die bekannte Nachricht durch eine Methode namens HelloWorld() über das Internet. Um dem Compiler die Klasse und die Methode als Web Service kenntlich zu machen, benutzt dieser Code eine spezielle Schreibweise. Er enthält auch eine ASP.NET-Direktive am Beginn der Datei. Um eine C#-Version des HelloWorld-Web Service anzulegen, geben Sie den Code aus Beispiel 2-1 genau wie abgedruckt ein und speichern die Datei unter dem Namen Hello- World.asmx auf Ihrem Webserver unterhalb des c:\inetpub\wwwroot-ordners (oder unterhalb des Ordners, der der Web-Wurzelordner Ihres Systems ist). Beispiel 2-1: HelloWorld: C#-Web Service Links WebService Language="C#" Class="ProgWS.Ch02.HelloWorldService" %> using System.Web.Services; namespace ProgWS.Ch02 { public class HelloWorldService: WebService { [WebMethod] public string HelloWorld() { return "Hello World"; } } } 22 Kapitel 2: ASP.NET Web Services anlegen

3 Rechts In den folgenden Abschnitten erklären wir die Standardelemente dieses Web Service und zeigen dann, wie er getestet wird. Die WebService-Direktive Beispiel 2-1 beginnt mit der WebService-Direktive, einer ASP.NET-Anweisung, die angibt, daß der folgende Code ein Web Service ist: WebService Language="C#" Class="ProgWS.Ch02.HelloWorldService" %> Die WebService-Direktive ähnelt der Page-Direktive, mit der die meisten.aspx-seiten beginnen. Damit der HelloWorld-Web Service funktioniert, müssen Sie zwei Attributen der WebService-Direktive Werte zuweisen: Language und Class. Das erforderliche Language-Attribut läßt.net wissen, in welcher Programmiersprache die Klasse geschrieben wurde. Wie Sie schon vermuten werden, sind die gültigen Werte für das Language-Attribut zur Zeit C#, VB und JS für JScript.NET. Das Class-Attribut ist ebenfalls erforderlich und nennt ASP.NET den Namen der als Web Service offenzulegenden Klasse. Weil eine Web Service-Anwendung mehrere Klassen enthalten kann, von denen einige vielleicht keine Web Services sind, müssen Sie.NET die offenzulegenden Klassen nennen; dieser Schritt entspricht dem Deklarieren einer Main()-Methode, um den Eintrittspunkt einer.net-konsolenanwendung oder -Komponente anzugeben. Beachten Sie, daß Sie dieses Attribut auch dann setzen müssen, wenn Ihr Web Service nur eine Klasse enthält. Die using-direktive:.net-namensräume importieren Die nächste Zeile des Beispiels ist eine using-anweisung, die den Compiler anweist, den System.Web.Services-Namensraum in den lokalen Namensraum aufzunehmen. In C# sieht diese Direktive so aus: using System.Web.Services; Diese Direktive erlaubt Ihnen die Verwendung von Objekten aus dem System.Web. Services-Namensraum, ohne den vollständigen Namen angeben zu müssen. Diese Anweisung ist optional, aber ohne sie müßte bei jeder Verwendung eines Objekts aus diesem Namensraum der vollständige Name angegeben werden. Ein Beispiel zeigt die nächste Zeile, die unsere Klassendeklaration enthält. Mit der using-anweisung sieht das in C# so aus: using System.Web.Services; public class HelloWorldService: WebService Einen Web Service anlegen:»hello World«23

4 Ohne die using-anweisung müßte der vollständige Name angegeben werden: public class HelloWorldService: System.Web.Services.WebService Links Das Importieren eines Namensraums gibt Ihnen keinen Zugriff auf Namensräume, die darin verschachtelt zu sein scheinen. Mit anderen Worten: Wenn Sie den System.Web-Namensraum importieren würden, könnten Sie auf die System.Web.Services.WebService-Klasse nicht als Services.Web- Service zugreifen. Obwohl es so»scheint«, als ob ein Namensraum wie System.Web.Services im System.Web-Namensraum verschachtelt sei, trifft das nicht zu. Sie sind in zwei verschiedenen Assemblies implementiert, die außer einer teilweisen Namensgleichheit wenig miteinander zu tun haben. Die scheinbar hierarchische Natur der Namensräume des.net Frameworks existiert nur als organisatorische Annehmlichkeit in der Namensgebung und hat keinen Einfluß auf die Klassenstruktur. Das namespace-schlüsselwort.net erlaubt Ihnen und Microsoft empfiehlt Ihnen, für die Klassen einer Anwendung einen eigenen Namensraum zu verwenden. In C# wird das mit dem namespace-schlüsselwort und der folgenden Syntax getan: namespace name {... type declaration... } In Beispiel 2-1 wird die HelloWorldService-Klasse mit der folgenden Anweisung in den ProgWS.Ch02-Namensraum aufgenommen: namespace ProgWS.Ch02 { } Namensräume können Definitionen für Klassen, Interfaces, Strukturen, Enumerationen und Delegates sowie andere Namensräume enthalten. Außerdem muß der Quelltext für die Objekte eines Namensraums nicht in derselben Datei enthalten sein er kann über mehrere Dateien verteilt sein. Für Java-Programmierer: Ein Namensraum ist einem Package ähnlich. Allerdings existieren für einen Namensraum, anders als für ein Package, keine Anforderungen an die Verzeichnisstruktur; denn es wird davon ausgegangen, daß der gesamte Quelltext im selben Verzeichnis oder im Global Assembly Cache liegt. Namensräume bieten eine Möglichkeit zur Organisation von Code-Teilen, die von anderen Entwicklern geschrieben und gewartet werden. Wenn die Klassendefinitionen Ihres Web Service in einem Namensraum liegen, müssen Sie diesen wie in Beispiel 2-1 in Ihrer WebService-Direktive zusätzlich zum Klassennamen angeben: 24 Kapitel 2: ASP.NET Web Services anlegen

5 Rechts WebService Language="C#" Class="ProgWS.Ch02.HelloWorldService" %> Diese Zeile weist ASP.NET an, nach der Klasse HelloWorldService im Namensraum ProgWS.Ch02 zu suchen. Die WebService-Klasse Der Kern von Beispiel 2-1 ist eine Klasse namens HelloWorldService. Diese Klasse ist eine Unterklasse von System.Web.Services.WebService. Durch Ableiten von der WebService- Klasse erhält ein Web Service direkten Zugang zu den in ASP.NET eingebauten Objekten wie Application und Session, genauso wie jede andere ASP.NET-Anwendung. Das Ableiten von der WebService-Klasse ist beim Anlegen eines.net Web Service zwar üblich, aber keinesfalls notwendig. Sie können die bisherigen Beispiele so umschreiben, daß sie diese Ableitung nicht benutzen, und Ihr Service wird problemlos laufen. Wenn Sie allerdings ohne die Ableitung von WebService den Zugriff auf die Application- und Session-Objekte benötigen, müssen Sie das System.Web.HttpContext-Objekt explizit angeben, wie wir in einem späteren Kapitel zeigen werden. Das WebMethod-Attribut Die HelloWorldService-Klasse legt eine einzelne Methode offen, die öffentliche Methode HelloWorld, die keine Argumente erwartet und einen String mit dem Text»Hello World«zurückgibt. Um eine Methode als Teil eines Web Service offenzulegen, müssen Sie sie mit dem WebMethod-Attribut kennzeichnen, was den Compiler anweist, sie auch als Webmethode zu behandeln. Jede mit dem WebMethod-Attribut gekennzeichnete Methode muß als public definiert sein. Als Web Service offengelegte Klassen folgen denselben objektorientierten Regeln wie alle anderen Klassen; deshalb sind als private, protected oder internal gekennzeichnete Methoden nicht erreichbar und erzeugen einen Fehler beim Versuch, sie durch das WebMethod-Attribut offenzulegen. Weitere Details finden Sie später unter»das WebMethod-Attribut«in diesem Kapitel. Das Interessante an diesem einfachen Beispiel ist, daß Sie aus einer beliebigen Methode einen vollwertigen Web Service gemacht haben. Sie könnten genausogut eine Methode benutzt haben, die einen Datensatz aus einer Datenbank liefert, oder eine Methode, die ein COM-Objekt kapselt. Außerdem könnten Sie jede der vom.net Framework unterstützten Sprachen zur Implementierung benutzt haben und dann, wie Sie später noch sehen werden, jede.net- oder jede beliebige andere Sprache in einer Client-Anwendung verwenden. Durch Ableitung von der System.Web.Services.WebService-Klasse können Sie die Vorteile einer API nutzen, die Sie vom darunterliegenden SOAP/XML-Nachrichtenaustausch isoliert. Um diesen Web Service zum Laufen zu bringen, müssen Sie ihn nur auf den Webserver kopieren, so wie Sie es mit jeder anderen Ressource tun würden, egal ob es eine Grafik, eine HTML-Datei, eine ASP-Seite oder andere Ressource ist. Sobald Sie das getan haben, kann der Web Service von einer Client-Anwendung benutzt werden; diesen Prozeß wer- Einen Web Service anlegen:»hello World«25

6 den wir in Kapitel 3 detailliert behandeln. Diese Einfachheit der Installation ist der Hauptvorteil des Inline-Codes; der vielleicht größte Nachteil ist die Vermischung von Oberflächen-Code und Geschäftslogik in derselben Datei, was die Organisation der Arbeit in großen Projekten erschweren kann. Im Folgenden sehen wir uns an, wie Visual Studio.NET zum Anlegen und Installieren dieses Web Service benutzt werden kann, ohne diese integrierte Entwicklungsumgebung zu verlassen, indem wir den sogenannten Code-Behind-Ansatz benutzen. Links Assemblies Wir haben gesagt, daß ein Namensraum ein Behälter für Typen wie Klassen, Interfaces, Strukturen und Enumerationen ist. Wir haben auch gesagt, daß der Quelltext für die Objekte eines Namensraums nicht in derselben Datei enthalten sein muß, sondern über mehrere Dateien verteilt sein kann. Wenn der zu einem Namensraum gehörende Quelltext in eine Bibliothek kompiliert wird, nennt man diese Bibliothek eine verwaltete (engl. managed) DLL oder geläufiger eine Assembly. Assemblies sind die Bausteine von.net- Anwendungen und die grundlegende Einheit bei Verteilung und Installation. Sie bilden eine Sammlung von Typen und Ressourcen, die der CLR (Common Language Runtime) die Informationen liefern, die sie über die Typ-Implementierungen braucht. Ihr Inhalt kann von anderen Anwendungen durch Visual Studio.NET oder einen.net-kommandozeilen-compiler genutzt werden.»hello World«mit Visual Studio.NET anlegen Während Notepad ein adäquates Werkzeug zum Anlegen einfacher Web Services ist, bietet Microsofts neue Entwicklungsumgebung, Visual Studio.NET (VS.NET), eine Menge Funktionalität zum Anlegen komplexer Web Services. Visual Studio.NET bietet auch die schnellste Möglichkeit, um einen Web Service zum Laufen zu bringen; abgesehen von der nötigten Zeit für das vollständige oder teilweise Installieren der mehr als 1,8 GByte (komprimiert) großen Installationsdateien, die zum Betrieb von Visual Studio.NET erforderlich sind. Dieser Abschnitt führt Sie durch den Prozeß des Anlegens eines»hello World«-Service mit Visual Studio.NET. VS.NET für das Web Service-Projekt konfigurieren Um die Automatismen in VS.NET nutzen zu können, müssen Sie es erst zur Kommunikation mit Ihrem Webserver konfigurieren. Sie können entweder FrontPage-Erweiterungen oder Universal Naming Convention-(UNC-)Dateifreigaben benutzen. Zur Vereinfachung gehen wir davon aus, daß Sie IIS auf Ihrer lokalen Workstation installiert haben. Im Folgenden beschreiben wir, was Sie zur Konfiguration von VS.NET für Ihren ersten Web Service tun müssen. Wir besprechen FrontPage-Erweiterungen und UNC-Dateifrei- 26 Kapitel 2: ASP.NET Web Services anlegen

7 Rechts gaben später in diesem Kapitel noch detaillierter (siehe den Abschnitt»Einen Web Service installieren«). Microsoft FrontPage-Servererweiterungen sind am leichtesten zu konfigurieren und eine gute Wahl für die einfachen Web Services der nächsten beiden Kapitel. FrontPage-Erweiterungen können als Teil von IIS installiert oder alternativ von der MSDN-Website unter heruntergeladen werden In diesem Beispiel benutzen wir Windows 2000 Workstation, IIS 5 und FrontPage 2000 Servererweiterungen in der Version Obwohl jede Version der Erweiterungen ihren Zweck erfüllen wird, unterscheiden sich die Konfigurationsprozesse deutlich, und die hier dargestellten Schritte werden mit Ihrer Version vielleicht nicht funktionieren. Nachdem Sie die FrontPage-Servererweiterungen auf Ihrem lokalen Computer (dem Computer, auf dem der IIS läuft) installiert haben, öffnen Sie den Internetdienste-Manager über das Menü START PROGRAMME VERWALTUNG und können jetzt ein Front- Page-Web konfigurieren. Klicken Sie mit der rechten Maustaste auf STANDARDWEBSITE und wählen Sie ALLE TASKS SERVERERWEITERUNGEN KONFIGURIEREN aus dem Menü. Sie werden von einem Assistenten durch die kurze Konfiguration geführt. Sobald die Servererweiterungen installiert worden sind, können Sie ein Web Service-Projekt in Visual Studio.NET anlegen. In Windows XP erreichen Sie Verwaltung und den IIS-Manager über die Systemsteuerung. Ein C#-Web Service-Projekt anlegen Benutzern von Visual Studio 6.0 wird die Oberfläche von Visual Studio.NET so bekannt vorkommen, daß sie ohne große Hilfestellung mit der Arbeit beginnen können. Wir werden aber im Folgenden Benutzern helfen, die Visual Studio noch nicht kennen. Benutzer ohne Erfahrung mit Visual Studio.NET können sich auch auf seine umfangreiche eingebaute Hilfe verlassen. Um einen neuen Web Service anzulegen, starten Sie Visual Studio.NET und wählen entweder die NEUES PROJEKT-Schaltfläche auf der Startseite oder klicken auf DATEI NEU PROJEKT in der Hauptmenüleiste von Visual Studio.NET. Das Visual Studio-Projektmodell ist das gleiche wie in früheren Versionen: Eine Datei kann Teil eines Projekts sein und ein Projekt Teil einer Projektmappe. Eine Projektmappe ist der äußerste Behälter und enthält ein oder mehrere Projekte. Nachdem Sie eine der Alternativen zum Anlegen eines Projekts gewählt haben, sehen Sie das Fenster aus Abbildung 2-1. Hier haben Sie die Möglichkeit, eine Vielzahl von Projekttypen aus Vorlagen anzulegen. Unter VISUAL C#-PROJEKTE finden Sie eine Vorlage zum Anlegen eines ASP.NET Web Service. Obwohl unsere Beispiele die Sprache C# nutzen, steht Ihnen dieselbe Option als Einen Web Service anlegen:»hello World«27

8 Links Abbildung 2-1: Ein neues Visual Studio-Projekt anlegen Visual Basic-Projekt zur Verfügung, und es existieren ähnliche Optionen für verwaltetes C++. Zusätzlich zum Wählen einer Projekt-Sprache und -Vorlage müssen Sie einen Projektnamen und einen Speicherort angeben. Der Speicherort für den HelloWorldService sollte die URL des IIS-Webservers sein, den Sie gerade für die Arbeit mit FrontPage- Erweiterungen konfiguriert haben (z.b. In diesem Beispiel benutzen wir den Projektnamen»HelloWorldService.«Sobald Sie auf OK klicken, legt die IDE (Integrated Development Environment) eine neue Projektmappe und ein neues Projekt an und bestückt dieses mit mehreren Dateien. Die IDE wird unter dem IIS auch ein virtuelles Verzeichnis mit dem gleichen Namen anlegen wie der Projektname, in diesem Fall HelloWorldService. Die Projektmappe und das Projekt Die Inhalte Ihres neuen Projekts erscheinen im Fenster des Projektmappen-Explorers, das, wie in Abbildung 2-2 zu sehen ist, auf der rechten Seite der VS.NET-IDE erscheinen sollte. Wenn der Projektmappen-Explorer nicht zu sehen ist, können Sie ihn durch Wahl von PROJEKTMAPPEN-EXPLORER im ANSICHT-Menü öffnen (oder durch Drücken von STRG- ALT-L). Wenn Sie ein neues Projekt anlegen, ohne den Namen einer bestehenden Projektmappe anzugeben, erzeugt VS.NET eine neue unter dem gleichen Namen wie Ihr Projekt. In Abbildung 2-2 können Sie sehen, daß in diesem Fall eine Projektmappe namens HELLO- 28 Kapitel 2: ASP.NET Web Services anlegen

9 Rechts Abbildung 2-2: Der Visual Studio.NET-Projektmappen-Explorer WORLDSERVICE angelegt wurde; sie enthält ein Projekt, das ebenfalls HELLOWORLDSER- VICE heißt. Visual Studio.NET erzeugt automatisch auch mehrere Assembly-Verweise und einige Dateien, die (wie in Abbildung 2-3 zu sehen ist) auch im Projektmappen-Explorer erscheinen. In diesem Beispiel hat VS.NET Assembly-Verweise auf die System-, System. Data-, System.Web-, System.Web.Services- und System.XML-Namensräume eingefügt. (Die System.Data- und System.XML-Assembly-Verweise sind für dieses Beispiel nicht nötig, und Sie können sie entfernen, wenn Sie möchten; aber abgesehen von einer Vereinfachung bringt das keinen weiteren Vorteil.) Abbildung 2-3: Alle Dateien im VS.NET-Projektmappen-Explorer anzeigen Einen Web Service anlegen:»hello World«29

10 Die fünf anderen Dateien in Abbildung 2-3 sind AssemblyInfo.cs, Global.asax, HelloWorldService.vsdisco, Service1.asmx und Web.config. Die einzige Datei, die Sie zum Anlegen des Web Service wirklich brauchen, ist die.asmx-datei, die wir im nächsten Abschnitt besprechen werden. Die vier anderen Dateien bieten zusätzliche Fähigkeiten und Funktionalität, die Ihnen beim Anlegen komplexerer Web Services helfen werden, aber für dieses Beispiel ist keine davon nötig. Tatsächlich können Sie jede dieser vier Dateien löschen, und der Service wird problemlos funktionieren (wir empfehlen das aber nicht). Diese Dateien haben folgende Inhalte: AssemblyInfo.cs Eine Informationsdatei, die den Compiler mit Metadaten (Name, Version etc.) über die Assemblies in diesem Projekt versorgt. Global.asax Zur Behandlung von Ereignissen auf Anwendungsebene anpaßbar (z.b. Application_ OnStart). HelloWorldService.vsdisco Eine XML-Datei für das Dynamic Discovery von Web Services. Die DISCO-Spezifikation wurde von WS-Inspection ersetzt und wird in Kapitel 10 besprochen. Web.config Eine XML-Datei mit Konfigurationsinformationen für die Anwendung. Links Die.asmx-Datei und die Entwurfsansicht Die wichtigste Datei unseres Beispiels ist die Beispiel-Web-Service-Seite namens Service- 1.asmx. Wenn Sie diese Seite durch einen Doppelklick darauf öffnen, zeigt Visual Studio.NET eine leere Entwurfsseite im Hauptfenster. Bei einer.aspx-asp.net-webanwendung könnte diese Seite für den Entwurf der Benutzeroberfläche genutzt werden; aber da wir einen.asmx-web Service anlegen, der von einer Maschine statt von einem Menschen genutzt wird, ist die Entwurfsansicht für uns nicht so nützlich. Wenn Sie versuchen, eine Windows Forms-Komponente hinzuzufügen, erhalten Sie eine Fehlermeldung, denn die Web Service-Entwurfsansicht weiß mit der Komponente nichts anzufangen. Anders als ein ASP.NET Web Form-Projekt enthält ein ASP.NET Web Service-Projekt keine Infrastruktur zur Unterstützung von Windows Form-Komponenten. Sie können die Entwurfsansicht benutzen, um fertige Komponenten aus der Visual Studio.NET-Toolbox zu Ihrem Service hinzuzufügen; aber außer dem Hinzufügen können Sie nicht viel tun, und das geht direkt über den Code-Editor (Service1.asmx.cs). Vielleicht bietet Microsoft oder ein anderer Anbieter irgendwann eine leistungsfähigere Unterstützung für ein Drag-and-Drop-Web-Service-Design mit Geschäftslogik-Komponenten an, aber aktuell ist die Entwurfsansicht nicht sehr nützlich. Statt dessen können Sie den Quelltext Ihres Service sehen, indem Sie mit der rechten Maustaste auf die Service- 1.asmx-Datei im Projektmappen-Explorer klicken und CODE ANZEIGEN wählen. Dabei werden Sie auch der Service1.asmx-Datei einen dem Projekt eher entsprechenden Namen 30 Kapitel 2: ASP.NET Web Services anlegen

11 Rechts geben wollen. Das können Sie tun, indem Sie im Projektmappen-Explorer mit der rechten Maustaste auf die Datei klicken und im Menü UMBENENNEN wählen. Ändern Sie den Namen in HelloWorldService.asmx. Alle Dateien im Projektmappen-Explorer anzeigen Die.asmx.cs-Datei wird in der Voreinstellung nicht im Projektmappen-Explorer angezeigt. Um sie zu sehen, wählen Sie ALLE DATEIEN ANZEIGEN aus dem PROJEKT-Menü (es gibt dafür auch ein Icon oben im Projektmappen-Explorer). Das Aussehen des Projektmappen-Explorers verändert sich zur Ansicht in Abbildung 2-3. Diese neue Ansicht zeigt alle zum HelloWorldService-Projekt gehörenden Dateien. Beachten Sie, daß links neben der Service1.asmx-Datei nun ein Erweiterungs-Icon steht. Wenn Sie auf das Icon klicken, sehen Sie eine andere Datei namens Service1.asmx.cs unterhalb der Service1.asmx-Datei. An anderer Stelle finden Sie einen Ordner namens \bin, der zur Aufnahme der von Visual Studio.NET generierten kompilierten Assemblies dient. Den automatisch generierten Code des Service verstehen Wenn Sie ein neues ASP.NET Web Service-Projekt anlegen, erzeugt Visual Studio.NET einigen vorgefertigten Code, um Ihnen den Start zu erleichtern. Der Inhalt der Quelldatei HelloWorldService.asmx.cs sollte der Darstellung in Abbildung 2-4 entsprechen. Dieser vorgefertigte Code beginnt mit dem Import mehrerer für Web Services allgemein nötiger Namensräume sowie mit automatisch generierten Namensraum- und Klassendefinitionen. In diesem Beispiel sind die Namensraum- und Klassendefinitionen Hello- WorldService bzw. Service1. Die Namensraumdefinition wird auf Basis des Projektnamens generiert, aber Sie werden sie wahrscheinlich so ändern wollen, daß sie besser zu Ihrer Anwendung paßt (in diesem Fall werden wir weiterhin ProgWS.Ch02 benutzen). Der Name des Service wird immer automatisch als Service1 generiert. Ändern Sie diesen Namen passend zu Ihrer Anwendung (in diesem Fall benutzen wir HelloWorldService); aber Sie sollten auch daran denken, den Namen der.asmx-seite dem Service-Namen anzupassen. Ihr Service funktioniert auch, wenn die Namen nicht zusammenpassen; aber eine konsistente Namensgebung kann die Verwaltung Ihres Service vereinfachen, insbesondere, wenn Sie ein Projekt mit vielen Services haben. Die am Anfang des Codes importierten Namensräume dienen der Bequemlichkeit, und einige davon sind unnötig. Insbesondere werden die System.Data-, System.Collectionsund System.Diagnostics-Namensräume überhaupt nicht benutzt. Die Klassen des System.ComponentModel-Namensraums werden nur von den Methoden InitializeComponent() und Dispose() des Web Service-Designers genutzt, die mit einer privaten Member-Variablen namens components vom Typ IContainer zusammenarbeiten. Um diese Methoden zu sehen, müssen Sie den Component Designer Generated Code-Bereich erwei- Einen Web Service anlegen:»hello World«31

12 Links Abbildung 2-4: Vorgefertigter Code von Visual Studio.NET tern. Da Sie wahrscheinlich die (beschränkten) Möglichkeiten der Entwurfsansicht des Web Service sowieso brauchen werden, können Sie aufräumen und den gesamten Bereich löschen. Übrig bleibt Code, der wie folgt aussieht (einige Kommentare wurden zur Kürzung des Listings entfernt): using System; using System.Web; using System.Web.Services; namespace ProgWS.Ch02 { public class HelloWorldService : System.Web.Services.WebService { public HelloWorldService() {} // WEB SERVICE-BEISPIEL // Der HelloWorld()-Beispiel-Service gibt die Zeichenfolge // Hello World zurück. // Entfernen Sie den Kommentar in den folgenden Zeilen. // Speichern und erstellen Sie anschließend das Projekt. // Drücken Sie F5, um den Web Service zu testen. //[WebMethod] //public string HelloWorld() 32 Kapitel 2: ASP.NET Web Services anlegen

13 Rechts } } //{ //return "Hello World"; //} Der Code sollte Ihnen bekannt vorkommen, denn er ist fast identisch mit dem in Beispiel 2-1 gezeigten Code. Um ihn wie im früheren Beispiel aussehen zu lassen, müssen Sie lediglich die Kommentare vor der HelloWorld()-Methode und vor dem [WebMethod]- Attribut entfernen. Beachten Sie aber, daß die WebService-Direktive aus dem Beispiel mit Inline-Code fehlt: <%@ WebService Language="C#" Class="ProgWS.Ch02.HelloWorldService" %> Erinnern Sie sich daran, daß diese Direktive benötigt wurde, um dem Compiler die Klasse anzugeben, die als Eintrittspunkt in den Web Service dienen soll. Also, wo ist sie? Als Sie das Inline-Code-Beispiel schrieben, fügten Sie sowohl die Direktive als auch den Quelltext für die HelloWorld-Klasse in dieselbe Datei ein. Im Gegensatz dazu trennt Visual Studio.NET die WebService-Direktive und den Quelltext beim Anlegen eines Web Service durch einen Ansatz, den ASP.NET-Entwickler als Code-Behind kennen. Das Code-Behind-Modell verstehen Der Code-Behind-Ansatz bei der Programmierung von Web Services (ebenso wie bei ASP.NET-Webanwendungen) sieht die Trennung der WebService-Direktive vom unterstützenden C#-Code vor. In diesem Modell enthält die.asmx-seite nur eine Zeile, die WebService-Direktive, während der unterstützende Quelltext auf seine eigene Seite gesetzt wird, die im Fall von C# die Dateinamenserweiterung.asmx.cs hat (wie im vorhergehenden Beispiel). Diese Seite muß in eine Assembly kompiliert und in das \bin-verzeichnis Ihres Web Service gelegt werden, bevor der Service genutzt werden kann. Visual Studio.NET übernimmt beim Erstellen Ihres Projekts diese Arbeiten automatisch für Sie. Wenn Sie zum erstenmal einen Request an Ihren Web Service senden, liest ASP.NET die WebService-Direktive, um den Namen der Klassendatei herauszufinden, die die unterstützende Logik enthält. ASP.NET weiß, daß es nach der kompilierten Klasse in einer Assembly im \bin-verzeichnis des Projekts suchen muß. Wenn im \bin-verzeichnis mehrere Assemblies liegen, durchsucht ASP.NET jede davon, bis es die entsprechende Klasse gefunden hat. Einer der Vorteile, die sich aus dem Speichern Ihres Codes in kompilierter Form ergeben, ist, daß auf Ihren Produktions-Webservern kein Quelltext herumliegt. Ein böswilliger Benutzer, der Zugriff auf den Server mit Ihren Anwendungen erlangt, wird Ihren Code nicht einfach so stehlen können (wir sagen»einfach so«, weil es Werkzeuge zum Dekompilieren von MSIL gibt). Der Nachteil beim Benutzen des Code-Behind-Modells ist, daß die Verteilung einen zusätzlichen Schritt erfordert das Kompilieren des Quelltextes, der für Inline-Code nicht nötig ist. Einen Web Service anlegen:»hello World«33

14 Links Das CodeBehind-Attribut Wenn Sie die von VS.NET automatisch generierte und auf Ihren Server gelegte.asmx-seite ausfindig machen und ansehen, stellen Sie fest, daß die WebService-Direktive ein zusätzliches Attribut namens CodeBehind enthält. (Leider können Sie diese.asmx-seite nicht in Visual Studio.NET betrachten; statt dessen müssen Sie in die Datei im Verzeichnis c:\inetpub\ wwwroot\helloworldservice Ihres Servers sehen). In unserem Beispiel sieht die Direktive wie folgt aus (abgesehen davon, daß alles in einer einzigen Zeile steht): WebService Language="c#" Codebehind="HelloWorldService.asmx.cs" Class="ProgWS.Ch02.HelloWorldService" %> Diese unglückliche Wahl des Attributnamens verwirrt häufig Entwickler, die ASP.NET noch nicht kennen; sie nehmen oft an, daß das Attribut irgendwie von ASP.NET zum Auffinden der Code-Behind-Datei genutzt wird (tatsächlich würde die Microsoft Visual Studio-Dokumentation Sie das glauben machen). Das ist aber nicht der Fall. Dieses Attribut ist ein Visual Studio.NET-spezifisches Attribut und wird von VS.NET benutzt, um die zur.asmx-seite passende Quelltextdatei zu bestimmen. Dieses Attribut hat nichts mit ASP.NET zu tun. In Wirklichkeit ignoriert ASP.NET dieses Attribut beim Verarbeiten eines Requests völlig. In Visual Studio.NET ist die Unterstützung des Inline-Code-Modells nicht vorgesehen. Sie können dieses Modell benutzen, aber wir empfehlen es ganz bestimmt nicht: Sie können in Visual Studio.NET keinen Inline- Web Service direkt anlegen, denn wenn Sie einen neuen Web Service erzeugen, legt Visual Studio.NET automatisch getrennte.asmx- und Klassen-Dateien an. Um mit VS.NET einen Inline-Service anzulegen, müssen Sie eine neue Textdatei erzeugen und ihre Dateinamenserweiterung in.asmx ändern. Das Anlegen einer.asmx-seite auf diese Art zwingt Sie zur Benutzung des Visual Studio.NET-HTML-Editors, der keine Unterstützung für Farbcodierung, Intellisense oder viele der Debugging-Funktionen bietet. Außerdem werden Kompilierzeit-Fehler erst beim Ausführen der Seite gefunden, denn die Seite wird nicht zu einer Projekt-Assembly kompiliert. Erstellen des Service Weil Visual Studio.NET das Code-Behind-Modell benutzt, funktioniert ein einfaches Kopieren der Quelltextdateien zum Server nicht wie beim Inline-Beispiel. Wenn Sie es versuchen, erhalten Sie beim Aufruf des Service eine Fehlermeldung. Statt dessen ist es nötig, Ihre.asmx-Seite auf dem Server zu speichern sowie Ihren Quelltext zu kompilieren und in das \bin-verzeichnis Ihres Projekts zu speichern. VS.NET automatisiert diesen Prozeß für Sie durch seine ERSTELLEN-Funktion. Sobald Ihre Anwendung vollständig ist, wählen Sie PROJEKTMAPPE ERSTELLEN im ERSTELLEN-Menü (oder drücken STRG-SHIFT-B), 34 Kapitel 2: ASP.NET Web Services anlegen

15 Rechts und VS.NET wird Ihren Web Service kompilieren sowie die.asmx-seite und die zugehörige kompilierte Assembly auf den Webserver kopieren. Wenn beim Kompilieren irgendwelche Fehler auftreten, zeigt VS.NET sie unten in der IDE in einem Fenster mit der Aufschrift Ausgabe. Sobald Sie den Web Service erfolgreich erstellt haben, kann er benutzt werden. Den Service testen Anders als Active Server Pages sind Web Services nicht zur Betrachtung in einem Browser gedacht. Statt dessen werden Web Services von einer Client-Anwendung über Protokolle wie HTTP GET/POST, SMTP oder SOAP über HTTP genutzt (siehe Kapitel 3 zu weiteren Informationen über die Nutzung eines Web Service). Einige dieser Protokolle (wie SOAP) sind besser für die Kommunikation zwischen Servern geeignet, während andere (wie HTTP GET) häufig mit dem Modell des traditionellen Webseitenzugriffs in Zusammenhang gebracht werden. Auf einen Web Service, der HTTP GET als Transportprotokoll benutzt, kann auf ähnliche Art zugegriffen werden wie auf eine normale Webseite. Um auf solch eine Seite zuzugreifen, muß man nur einen Webbrowser auf den Endpunkt des Service richten. In unserem Beispiel liegt der Endpunkt in einer.asmx-seite. Aber woher wissen Sie, welche Protokolle HelloWorldService unterstützen wird, wo doch im Beispiel-Code nichts von HTTP oder SOAP erwähnt wird? Die Antwort ist, daß per Voreinstellung alle.net Web Services HTTP GET, HTTP POST und SOAP zu unterstützen versuchen. Wir sagen»versuchen«, denn in vielen Fällen kann der Web Service zu komplex für die Unterstützung von HTTP GET sein. Außerdem stellt.net eine standardisierte Testseite für Web Services zur Verfügung, die erscheint, sobald Sie Ihren Browser auf eine.asmx-seite richten; denn Web Services sind Anwendungen, die Funktionalität für Web Service-Clients anbieten, daher müssen Sie nicht unbedingt eine graphische Benutzeroberfläche haben. Wenn Sie einen Browser öffnen und die URL des gerade angelegten.asmx-web Service eingeben, sehen Sie die IE-Testseite aus Abbildung 2-5. Die Seite in Abbildung 2-5 wird jedesmal von der.net-http-runtime generiert, wenn sie einen Request für eine.asmx-seite erhält. Die Seitenvorlage ist selbst eine ASP.NET-.aspx-Seite namens DefaultWsdlHelpGenerator.aspx und im \WINNT\Microsoft.NET\ Framework\[version]\Config-Verzeichnis des Servers gespeichert, auf dem der Web Service läuft. Die Seite funktioniert wie jede andere.aspx-seite (denken Sie daran, daß das die Dateinamenserweiterung für ASP.NET-Seiten ist) und kann einfach verändert werden. Die Testseite zeigt den Namen des HelloWorldService-Service zusammen mit der HelloWorld()-Methode und einem Link zur Service-Beschreibung. Der Service-Name und alle zusätzlichen Informationen über diesen Service werden durch ein Verfahren namens Reflection ermittelt, das den System.Reflection-Namensraum benutzt, um durch Metadaten Informationen über vorhandene Typen offenzulegen. Wenn Sie sich die Page_Load- Einen Web Service anlegen:»hello World«35

16 Links Abbildung 2-5: Die HelloWorldService-Testseite Funktion der DefaultWsdlHelpGenerator.aspx-Seite (wieder im \WINNT\Microsoft.NET\ Framework\[version]\Config-Verzeichnis des Servers) anschauen, sehen Sie, wie dieser Prozeß funktioniert. Wenn Ihr Service weitere über HTTP aufrufbare Methoden enthalten würde, tauchten sie hier auch als Links auf. Die Service-Beschreibung ansehen Die Runtime generiert auch automatisch eine Service-Beschreibung aus der.asmx-seite; das ist ein XML-Dokument, das einer Spezifikation namens Web Service Description Language, oder WSDL (englisch ausgesprochen»wiz-duhl«) entspricht. Wenn Sie auf den Link DIENSTBESCHREIBUNG klicken, sehen Sie die WSDL-Seite. Diese Seite können Sie auch in einem Browser ansehen, wenn Sie?WSDL an die URL der Seite anhängen, wie in HelloWorldService.cs.asmx?WSDL. Abbildung 2-6 zeigt die Service-Beschreibung für unseren Service. Sie können erkennen, daß das WSDL-Dokument Informationen über die Namensräume des Service enthält, über die unterstützten Protokolle, über die benutzten Datentypen und über die offengelegten Webmethoden; alles in einem XML-basierten Format. Diese Art von Information ist besonders wichtig für eine Anwendung, die unseren Service nutzen will, wie Sie im nächsten Kapitel sehen werden. Die WSDL-Spezifikation ist eine Art Dreh- und Angelpunkt für die verschiedenen Web Service-Entwicklungsplattformen. Wie Sie in Kapitel 11 sehen werden, in dem Sie mehr zur Interoperabilität von Web Services erfahren, müssen sich alle Web Service-Entwicklungsplattformen an dieselbe Version von WSDL und an dieselbe Version von SOAP halten, um zusammenarbeiten zu können (zur Zeit ist WSDL keine unbedingte Voraussetzung, aber es ist für die automatische Proxy-Generierung nötig, wie Sie in Kapitel 3 sehen werden). Die in diesem Buch besprochene Version 1.1 von WSDL wird zur Zeit von 36 Kapitel 2: ASP.NET Web Services anlegen

17 Rechts Abbildung 2-6: Die HelloWorldService-Beschreibung.NET und den meisten anderen Web Service-Implementierungen unterstützt (z.b. SOAP: :Lite, Apache Axis). 1 Das.NET Framework implementiert zur Zeit SOAP 1.1. Zurück zur Service-Testseite: Wenn Sie die Maus über den HELLOWORLD-Link bewegen, sehen Sie die Ziel-URL: Durch Anklicken des Links rufen Sie die.asmx-seite auf und übergeben einen Parameter namens op (das steht wahrscheinlich für operation) zusammen mit dem Namen des Service. Die Wirkung ist die gleiche wie beim Aufruf der HelloWorld-Webmethode des Web Service über HTTP GET. Die Ausgabe ist in Abbildung 2-7 zu sehen. Hier sehen Sie die Namen von Service und Methode zusammen mit einer Schaltfläche zum Testen des Service. Durch Reflection ist die Logik der DefaultWsdlHelpGenerator. 1 Wenn Sie mehr über WSDL erfahren wollen, können Sie die aktuelle Spezifikation unter TR/wsdl.html lesen. Aber Vorsicht: Das Lesen dieses Dokuments ist zwar eine exzellente Möglichkeit, die Details von WSDL kennenzulernen, aber es ist auch ein sicheres Mittel gegen Schlafstörungen. Als Alternative können Sie Kapitel 3 lesen, in dem wir Teile der WSDL-Spezifikation behandeln. Einen Web Service anlegen:»hello World«37

18 Links Abbildung 2-7: Die HelloWorldService-Aufrufseite aspx-testseite in der Lage, die Signatur unserer HelloWorld-Methode zu ermitteln. Weil unsere Methode keine Argumente erwartet, braucht die Seite nur eine Schaltfläche für den Aufruf zur Verfügung zu stellen. Wenn unsere Methode eine andere Signatur hätte zum Beispiel einen String erwarten würde, würde die.aspx-hilfsseite ein Textfeld zur Eingabe dieses Strings zur Verfügung stellen und ihn beim Abschicken des Formulars per HTTP GET an die Webmethode senden. Die Textfeld-Methode funktioniert gut, solange die Argumente einfache Datentypen sind; aber dieser Ansatz würde nicht funktionieren, wenn die Webmethode ein Objekt erwarten würde. Unterhalb des Aufruf-Links gibt es auch einige Beispiel-Interaktionen des Service für SOAP, HTTP GET und HTTP POST. Wir besprechen einige der anderen Methoden zum Zugriff auf Web Services in Kapitel 3, aber beachten Sie fürs erste, daß die Seite immer noch HTTP GET zum Aufruf unseres Service benutzt. 38 Kapitel 2: ASP.NET Web Services anlegen

19 Rechts <form action=' method="get">... </form> Die Webmethode aufrufen Sie können die Webmethode durch die IE-Testseite aufrufen, indem Sie einen Webbrowser öffnen und zur URL des Service navigieren. Sie werden eine Seite mit der Funktion des Service sehen, das sollte HelloWorld sein. Klicken Sie auf die HelloWorld-Funktion, um zur Aufrufseite für die Webmethode zu navigieren. Auf dieser Seite können Sie die Funktion testen, indem Sie auf die Schaltfläche mit der Beschriftung AUFRUFEN klicken. Klicken Sie auf die Schaltfläche, um den Service aufzurufen. Das Aufrufen des Beispiel-Service produziert die in Abbildung 2-8 gezeigten Resultate. Abbildung 2-8: Die HelloWorldService-Ausgabe Sie wissen, daß Web Services eine Möglichkeit zur Kommunikation zwischen Servern sind und XML benutzen; es sollte also keine Überraschung sein, daß die Ausgabe nur aus einem XML-Dokument besteht und außerdem aus einem kurzen! Hätten Sie zum Zugriff auf den Service SOAP benutzt, hätten Sie eine Nachricht im SOAP-Format erhalten; aber weil der IE selbst keine SOAP-Nachrichten lesen oder schreiben kann, sind Sie auf die Benutzung von HTTP GET und POST beschränkt. Das Response-Dokument beginnt mit der folgenden XML-Deklaration: <?xml version="1.0" encoding="utf-8"?> Diese identifiziert das Dokument als XML-Dokument und die Codierung des Dokuments als UTF-8 Unicode. Die Art der Codierung kann zwar variieren, aber alle XML- Prozessoren sind zur Unterstützung der UTF-8- und UTF-16 Unicode-Codierungen verpflichtet. Das erste und einzige Element im Ausgabe-Dokument ist ein Element namens string, das den Rückgabewert unserer Methode enthält und ein Attribut namens xmlns hat: Einen Web Service anlegen:»hello World«39

20 xmlns=" Diese Namensraumdeklaration legt fest, daß in diesem Dokument alle Elemente ohne Präfix aus dem Namensraum tempuri.org kommen. Das WebService-Attribut Eine der Eigenschaften, die unserem HelloWorld-Web Service fehlen, sind Informationen über seine Funktion. Um einen Client über die von unserem Service bereitgestellte Funktionalität zu informieren, brauchen wir einen Dokumentationsmechanismus..NET bietet für diesen Zweck ein Attribut, WebServiceAttribute (ein Bestandteil des System. Web.Services-Namensraums); das können Sie benutzen, um Clients wissen zu lassen, wo sie Informationen zu einem Web Service finden. Wie andere Attribut-Typen ist die WebServiceAttribute-Klasse von System.Attribute abgeleitet. Angenehmerweise erlaubt der Compiler Ihnen in den meisten Anwendungsfällen, den Attribute-Teil des Klassennamens wegzulassen, so daß Sie statt dessen einfach WebService benutzen können (nicht zu verwechseln mit der WebService-Direktive in einer.asmx-seite). Zur Vereinfachung werden auch wir in diesem Text den Attribute-Teil weglassen. Das WebService-Attribut hat zwei Eigenschaften, die im Folgenden beschrieben werden: Namespace Legt den XML-Namensraum des Service fest Description Fügt eine text/html-beschreibung des Service hinzu, die Teil des Service-Beschreibungsdokuments (WSDL) wird Wie bereits angesprochen, sind XML-Namensräume in der XML-Welt zur eindeutigen Bestimmung der Elemente und Attribute eines XML-Dokuments wichtig. XML-Namensräume haben nichts mit den Namensräumen von.net zu tun, die zur Organisation von Klassen benutzt werden. Beispiel 2-2 benutzt die Namespace- und Description-Eigenschaften des WebService-Attributs zur Dokumentation eines Web Service namens DNSLookupService, den wir hier zum erstenmal vorstellen. DNSLookupService erwartet einen Hostnamen als String-Argument und benutzt eine Klasse namens Dns aus dem System.Net-Namensraum zum Auflösen und Zurückgeben der zugehörigen IP-Adresse. Beispiel 2-2: DNS LookupService Links using System.Web.Services; using System.Net; [WebService(Namespace=" Description="<b>Ein Web Service für Domain Name Lookups.</b>")] public class DNSLookupService : System.Web.Services.WebService { [WebMethod] public string getipforhostname(string strhostname) 40 Kapitel 2: ASP.NET Web Services anlegen

21 Rechts Beispiel 2-2: DNS LookupService (Fortsetzung) } { } IPHostEntry hostinfo = Dns.GetHostByName(strHostname); return hostinfo.addresslist[0].tostring(); In Beispiel2-2 wird der Namensraum für unseren Web Service auf bostontechnical.com/webservices/ gesetzt. Der Web Service wird diesen Namensraum als Definitionsquelle für alle XML-Dokumente nutzen, die er als Response auf den Aufruf seiner Methode zurückliefert. Denken Sie daran, daß der Zweck von XML-Namensräumen die Vermeidung von Namenskonflikten zwischen XML-Elementen und -Attributen ist. Namensraum-URIs wie diese werden häufig genutzt, denn die Eindeutigkeit des Domänennamens (z.b. wird von einer Registrierungsstelle (z.b. Network Solutions) garantiert. Es ist dann die Aufgabe der Organisation (in diesem Fall der Eigentümer von die Eindeutigkeit der Elemente in der /webservices-domäne des Namensraums sicherzustellen. Wir haben auch eine Beschreibung für unseren Service hinzugefügt. Wie Sie sehen, sind HTML-Tags in der Service-Beschreibung erlaubt, wodurch die resultierende IE-Testseite wie in Abbildung 2-9 aussieht. Abbildung 2-9: Eine Service-Beschreibung hinzufügen Der Namensraum und die Beschreibung sind für Zugriffe durch Programme auch in der WSDL-Seite enthalten, wie in Abbildung 2-10 zu sehen ist. Die XML-Ausgabe in Abbildung 2-10 wurde zur besseren Lesbarkeit reduziert, aber Sie sehen das <service>-element, das gegen Ende des Listings erscheint und unseren angepaßten Service-Namen enthält. Da die WSDL-Seite der Vertrag für alle Nutzer des Web Service ist, steht der angepaßte Name nun als Teil der Service-Beschreibung zur Verfügung. Das WebService-Attribut 41

22 Links Abbildung 2-10: WSDL mit angepaßtem Service-Namen Das WebMethod-Attribut Das WebMethod-Attribut, das zuerst in Beispiel2-1 benutzt wurde, weist.net an, eine bestimmte öffentliche Methode als Webmethode verfügbar zu machen. Das WebMethod- Attribut hat sechs zugehörige Eigenschaften, mit denen Sie das Verhalten Ihrer Webmethode dokumentieren und ändern können: Description MessageName EnableSession 42 Kapitel 2: ASP.NET Web Services anlegen

23 Rechts CacheDuration TransactionOption BufferResponse Die ersten beiden Eigenschaften werden zur Dokumentation einer Webmethode benutzt, während die anderen ihr Verhalten beeinflussen. In den folgenden Abschnitten stellen wir jede kurz vor. Jede Eigenschaft wird in späteren Kapiteln detaillierter beschrieben. Die Description- und MessageName-Eigenschaften Damit Ihre Nutzer nicht gezwungen werden, die Funktion einer Webmethode aus ihrem Namen zu erraten, sollten Sie für jede Ihrer Webmethoden eine Beschreibung hinzufügen; genauso, wie Sie es auch für den Service selbst tun sollten. Das ist besonders wichtig, wenn ein Web Service überladene Webmethoden enthält. Zum Beispiel deklariert das folgende Code-Fragment zwei Methoden namens Add() eine erwartet Parameter vom Typ Integer, und eine erwartet Parameter vom Typ Floating:... [WebMethod] public int Add(int a, int b) { return a + b; } [WebMethod] public float Add(float a, float b) { return a + b; }... Wenn Sie versuchen, einen Web Service mit zwei Methoden desselben Namens, aber unterschiedlichen Methodensignaturen (einer überladenen Methode) über die IE-Testseite aufzurufen, erhalten Sie beim Ansehen der Seite einen Laufzeitfehler. Die Fehlermeldung für das vorige Beispiel sieht folgendermaßen aus:»single Add(Single, Single) und Int32 Add(Int32, Int32) verwenden den Meldungsnamen»Add«. Verwenden Sie die Message- Name-Eigenschaft des benutzerdefinierten WebMethod-Attributs, um für Methoden eindeutige Namen anzugeben.«das Vorgehen beim Kommentieren von Webmethoden ist dem beim Kommentieren eines Service sehr ähnlich. Beginnen Sie jede Methodendeklaration mit einem WebMethod- Attribut. Benutzen Sie dessen Description-Eigenschaft, um eine Beschreibung Ihrer Webmethode hinzuzufügen, und seine MessageName-Eigenschaft, um ihren Namen zu ändern: [WebMethod(MessageName="<name>", Description="<desc>")] In unserem DNSLookupService-Beispiel würde der beschreibende Code folgendermaßen aussehen: Das WebMethod-Attribut 43

24 [WebService(Namespace=" Description="<b>Ein Web Service für Domain Name Lookups.</b>")] public class DNSLookupService : System.Web.Services.WebService { [WebMethod(MessageName="LookupDNS", Description="Liefert eine IP-Adresse zu einem Hostname-String")] public string GetIPForHostname(string strhostname) { IPHostEntry hostinfo = Dns.GetHostByName(strHostname); return hostinfo.addresslist[0].tostring(); } } Die WSDL-Beschreibung des Service spiegelt diese Änderungen wider, wie Abbildung 2-11 zeigt. Links Abbildung 2-11: WSDL mit Namensraum und dokumentierten Webmethoden 44 Kapitel 2: ASP.NET Web Services anlegen

25 Rechts Beachten Sie, daß das WSDL-Dokument ein <porttype>-tag für jedes unterstützte Protokoll (POST/HTTP GET und SOAP) enthält. Jedes der <porttype>-tags enthält ein zusätzliches XML-documentation-Element, das seinerseits die textuelle Erklärung der Webmethode enthält. Zusätzlich enthält das name-attribut jedes der Input- und Output- Elemente nun den Wert des Namens, den wir der Methode gegeben haben: get- IPForHostname. Weil die Dokumentation nun Teil der WSDL-Seite ist, kann eine aufrufende Anwendung darauf per Code zugreifen. Sie werden sehen, warum diese Dokumentation insbesondere für den Nutzer wichtig ist, wenn wir im nächsten Kapitel über.net- Proxy-Klassen reden. Die EnableSession-Eigenschaft ASP.NET Web Services (Klassen, die von System.Web.Services.WebService abgeleitet sind) laufen im Kontext einer ASP.NET-Anwendung und haben deshalb Zugang zu den Application- und Session-Objekten dieser Anwendung. Während eine ASP.NET- Anwendung nur ein Application-Objekt hat, kann sie mehrere Session-Objekte besitzen, die zum Speichern von Daten für die einzelnen Clients benutzt werden können. Dieser Mechanismus zur Verwaltung des Zustands (engl. state) ist per Voreinstellung deaktiviert und kann durch Setzen der EnableSession-Eigenschaft auf true aktiviert werden. Das Aktivieren der Session-Verwaltung kann die Performance mindern; Sie sollten sie also deaktiviert lassen, wenn Sie nicht planen, sie zu benutzen. Wenn der Session State aktiviert ist, verwaltet der Server den Zustand seiner Clients mit einem eindeutigen HttpSessionState-Objekt für jeden Client. Um die Session jedes Clients unterscheiden zu können, erhält jedes Session-Objekt eine eindeutige Kennung, wenn der Client zum erstenmal auf den Server zugreift. Bei jeder weiteren Kommunikation muß der Client seine eindeutige Kennung angeben, damit der Server die im Session State gespeicherten clientspezifischen Daten abrufen kann. Die eindeutige Kennung kann als Cookie auf dem Client gespeichert oder in die URL aufgenommen werden. In einer typischen ASP.NET-Anwendung, die über einen Webbrowser angesprochen wird, geschieht diese Zustandsverwaltung hinter den Kulissen. Wenn im Webbrowser Cookies aktiviert sind, präsentiert der Webbrowser dem Server mit jedem Request automatisch den richtigen Cookie. Da ein Web Service nicht in der gleichen Weise angesprochen wird, müssen Sie den Cookie bei jedem Aufruf Ihres Web Service per Programm setzen, wenn Sie sich für die Aktivierung des Session-Verwaltung entschieden haben. (In Kapitel 5 erfahren Sie mehr über diesen und andere Ansätze für die Zustandsverwaltung.) Die CacheDuration-Eigenschaft Die Implementierung eines ordentlichen Caching in Ihren Web Services kann die Skalierbarkeit und Performance steigern. Eine der einfachsten Möglichkeiten zur Implementierung von Caching-Systemen ist die CacheDuration-Eigenschaft des WebMethod-Attributs..NET implementiert diese Art des Caching, das output caching (Ausgabe puffern) genannt Das WebMethod-Attribut 45

Einrichten des IIS für VDF WebApp. Einrichten des IIS (Internet Information Server) zur Verwendung von Visual DataFlex Web Applications

Einrichten des IIS für VDF WebApp. Einrichten des IIS (Internet Information Server) zur Verwendung von Visual DataFlex Web Applications Einrichten des IIS (Internet Information Server) zur Verwendung von Visual DataFlex Web Applications Windows 8 Systemsteuerung > Programme > Windows Features aktivieren / deaktivieren > Im Verzeichnisbaum

Mehr

Musterlösung für Schulen in Baden-Württemberg. Windows 2003. Basiskurs Windows-Musterlösung. Version 3. Stand: 19.12.06

Musterlösung für Schulen in Baden-Württemberg. Windows 2003. Basiskurs Windows-Musterlösung. Version 3. Stand: 19.12.06 Musterlösung für Schulen in Baden-Württemberg Windows 2003 Basiskurs Windows-Musterlösung Version 3 Stand: 19.12.06 Impressum Herausgeber Zentrale Planungsgruppe Netze (ZPN) am Kultusministerium Baden-Württemberg

Mehr

Installation und Inbetriebnahme von Microsoft Visual C++ 2010 Express

Installation und Inbetriebnahme von Microsoft Visual C++ 2010 Express Howto Installation und Inbetriebnahme von Microsoft Visual C++ 2010 Express Peter Bitterlich Markus Langer 12. Oktober 2012 Zusammenfassung Dieses Dokument erklärt Schritt für Schritt die Installation

Mehr

Step by Step Webserver unter Windows Server 2003. von Christian Bartl

Step by Step Webserver unter Windows Server 2003. von Christian Bartl Step by Step Webserver unter Windows Server 2003 von Webserver unter Windows Server 2003 Um den WWW-Server-Dienst IIS (Internet Information Service) zu nutzen muss dieser zunächst installiert werden (wird

Mehr

OP-LOG www.op-log.de

OP-LOG www.op-log.de Verwendung von Microsoft SQL Server, Seite 1/18 OP-LOG www.op-log.de Anleitung: Verwendung von Microsoft SQL Server 2005 Stand Mai 2010 1 Ich-lese-keine-Anleitungen 'Verwendung von Microsoft SQL Server

Mehr

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt

Er musste so eingerichtet werden, dass das D-Laufwerk auf das E-Laufwerk gespiegelt Inhaltsverzeichnis Aufgabe... 1 Allgemein... 1 Active Directory... 1 Konfiguration... 2 Benutzer erstellen... 3 Eigenes Verzeichnis erstellen... 3 Benutzerkonto erstellen... 3 Profil einrichten... 5 Berechtigungen

Mehr

Einführung zum Arbeiten mit Microsoft Visual C++ 2010 Express Edition

Einführung zum Arbeiten mit Microsoft Visual C++ 2010 Express Edition In den nachfolgenden Schritten finden Sie beschrieben, wie Sie in der Entwicklungsumgebung Microsoft Visual Studio 2010 eine Projektmappe, ein Projekt und einen ersten Quellcode erstellen, diesen kompilieren,

Mehr

Einstellungen im Internet-Explorer (IE) (Stand 11/2013) für die Arbeit mit IOS2000 und DIALOG

Einstellungen im Internet-Explorer (IE) (Stand 11/2013) für die Arbeit mit IOS2000 und DIALOG Einstellungen im Internet-Explorer (IE) (Stand 11/2013) für die Arbeit mit IOS2000 und DIALOG Um mit IOS2000/DIALOG arbeiten zu können, benötigen Sie einen Webbrowser. Zurzeit unterstützen wir ausschließlich

Mehr

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage .htaccess HOWTO zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage Stand: 21.06.2015 Inhaltsverzeichnis 1. Vorwort...3 2. Verwendung...4 2.1 Allgemeines...4 2.1 Das Aussehen der.htaccess

Mehr

! " # $ " % & Nicki Wruck worldwidewruck 08.02.2006

!  # $  % & Nicki Wruck worldwidewruck 08.02.2006 !"# $ " %& Nicki Wruck worldwidewruck 08.02.2006 Wer kennt die Problematik nicht? Die.pst Datei von Outlook wird unübersichtlich groß, das Starten und Beenden dauert immer länger. Hat man dann noch die.pst

Mehr

4D Server v12 64-bit Version BETA VERSION

4D Server v12 64-bit Version BETA VERSION 4D Server v12 64-bit Version BETA VERSION 4D Server v12 unterstützt jetzt das Windows 64-bit Betriebssystem. Hauptvorteil der 64-bit Technologie ist die rundum verbesserte Performance der Anwendungen und

Mehr

SANDBOXIE konfigurieren

SANDBOXIE konfigurieren SANDBOXIE konfigurieren für Webbrowser und E-Mail-Programme Dies ist eine kurze Anleitung für die grundlegenden folgender Programme: Webbrowser: Internet Explorer, Mozilla Firefox und Opera E-Mail-Programme:

Mehr

Anleitung zur Webservice Entwicklung unter Eclipse

Anleitung zur Webservice Entwicklung unter Eclipse Entwicklungsumgebung installieren Sofern Sie nicht an einem Praktikumsrechner arbeiten, müssen Sie ihre Eclipse-Umgebung Webservice-fähig machen. Dazu benötigen Sie die Entwicklungsumgebung Eclipse for

Mehr

Installation KVV Webservices

Installation KVV Webservices Installation KVV Webservices Voraussetzung: KVV SQL-Version ist installiert und konfiguriert. Eine Beschreibung dazu finden Sie unter http://www.assekura.info/kvv-sql-installation.pdf Seite 1 von 20 Inhaltsverzeichnis

Mehr

Informatik I Tutorial

Informatik I Tutorial ETH Zürich, D-INFK/D-BAUG Herbstsemester 2015 Dr. Martin Hirt Daniel Jost Informatik I Tutorial Dieses Tutorial hat zum Ziel, die notwendigen Tools auf dem eigenen Computer zu installieren, so dass ihr

Mehr

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Seite erstellen Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Es öffnet sich die Eingabe Seite um eine neue Seite zu erstellen. Seiten Titel festlegen Den neuen

Mehr

VB.net Programmierung und Beispielprogramm für GSV

VB.net Programmierung und Beispielprogramm für GSV VB.net Programmierung und Beispielprogramm für GSV Dokumentation Stand vom 26.05.2011 Tel +49 (0)3302 78620 60, Fax +49 (0)3302 78620 69, info@me-systeme.de, www.me-systeme.de 1 Inhaltsverzeichnis Vorwort...2

Mehr

Datenbank-Verschlüsselung mit DbDefence und Webanwendungen.

Datenbank-Verschlüsselung mit DbDefence und Webanwendungen. Datenbank-Verschlüsselung mit DbDefence und Webanwendungen. In diesem Artikel werden wir Ihnen zeigen, wie Sie eine Datenbank verschlüsseln können, um den Zugriff einzuschränken, aber trotzdem noch eine

Mehr

Guide DynDNS und Portforwarding

Guide DynDNS und Portforwarding Guide DynDNS und Portforwarding Allgemein Um Geräte im lokalen Netzwerk von überall aus über das Internet erreichen zu können, kommt man um die Themen Dynamik DNS (kurz DynDNS) und Portweiterleitung(auch

Mehr

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge Ab der Version forma 5.5 handelt es sich bei den Orientierungshilfen der Architekten-/Objektplanerverträge nicht

Mehr

TeamSpeak3 Einrichten

TeamSpeak3 Einrichten TeamSpeak3 Einrichten Version 1.0.3 24. April 2012 StreamPlus UG Es ist untersagt dieses Dokument ohne eine schriftliche Genehmigung der StreamPlus UG vollständig oder auszugsweise zu reproduzieren, vervielfältigen

Mehr

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein.

Es sollte die MS-DOS Eingabeaufforderung starten. Geben Sie nun den Befehl javac ein. Schritt 1: Installation des Javacompilers JDK. Der erste Start mit Eclipse Bevor Sie den Java-Compiler installieren sollten Sie sich vergewissern, ob er eventuell schon installiert ist. Gehen sie wie folgt

Mehr

Installationsanleitung

Installationsanleitung Idee und Umsetzung Lars Lakomski Version 4.0 Installationsanleitung Um Bistro-Cash benutzen zu können, muss auf dem PC-System (Windows 2000 oder Windows XP), wo die Kassensoftware zum Einsatz kommen soll,

Mehr

Installationsanleitungen

Installationsanleitungen Installationsanleitungen INPA SGBD-Entwicklungsumgebung (EDIABAS) INPA für Entwickler Bevor Sie EDIABAS / INPA installieren können, müssen Sie sich für den Ordner sgref auf smuc0900 freischalten lassen.

Mehr

Anweisungen zur Installation und Entfernung von Windows PostScript- und PCL-Druckertreibern Version 8

Anweisungen zur Installation und Entfernung von Windows PostScript- und PCL-Druckertreibern Version 8 Anweisungen zur Installation und Entfernung von Windows PostScript- und PCL-Druckertreibern Version 8 Diese README-Datei enthält Anweisungen zum Installieren des Custom PostScript- und PCL- Druckertreibers

Mehr

Lokale Installation von DotNetNuke 4 ohne IIS

Lokale Installation von DotNetNuke 4 ohne IIS Lokale Installation von DotNetNuke 4 ohne IIS ITM GmbH Wankelstr. 14 70563 Stuttgart http://www.itm-consulting.de Benjamin Hermann hermann@itm-consulting.de 12.12.2006 Agenda Benötigte Komponenten Installation

Mehr

Anleitungen zum Publizieren Ihrer Homepage

Anleitungen zum Publizieren Ihrer Homepage Anleitungen zum Publizieren Ihrer Homepage Einrichtung und Konfiguration zum Veröffentlichen Ihrer Homepage mit einem Programm Ihrer Wahl Stand Februar 2015 Die Anleitungen gelten für die Homepage-Produkte:

Mehr

WordPress lokal mit Xaamp installieren

WordPress lokal mit Xaamp installieren WordPress lokal mit Xaamp installieren Hallo und willkommen zu einem weiteren Teil der WordPress Serie, in diesem Teil geht es um die Lokale Installation von WordPress mithilfe von Xaamp. Kurz und knapp

Mehr

3 Installation von Exchange

3 Installation von Exchange 3 Installation von Exchange Server 2010 In diesem Kapitel wird nun der erste Exchange Server 2010 in eine neue Umgebung installiert. Ich werde hier erst einmal eine einfache Installation mit der grafischen

Mehr

SICHERN DER FAVORITEN

SICHERN DER FAVORITEN Seite 1 von 7 SICHERN DER FAVORITEN Eine Anleitung zum Sichern der eigenen Favoriten zur Verfügung gestellt durch: ZID Dezentrale Systeme März 2010 Seite 2 von 7 Für die Datensicherheit ist bekanntlich

Mehr

Microsoft Dynamics NAV 2013 R/2 Installationsanleitung. Inhalt: Begleitmaterial des ERP Übungsbuchs:

Microsoft Dynamics NAV 2013 R/2 Installationsanleitung. Inhalt: Begleitmaterial des ERP Übungsbuchs: Begleitmaterial des ERP Übungsbuchs: Arbeiten mit den Windows Client von Microsoft Dynamics NAV 2013 R/2 Microsoft Dynamics NAV 2013 R/2 Installationsanleitung Inhalt: 0.1 Installation von Microsoft Dynamics

Mehr

Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0)

Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0) Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0) Peter Koos 03. Dezember 2015 0 Inhaltsverzeichnis 1 Voraussetzung... 3 2 Hintergrundinformationen... 3 2.1 Installationsarten...

Mehr

Um dies zu tun, öffnen Sie in den Systemeinstellungen das Kontrollfeld "Sharing". Auf dem Bildschirm sollte folgendes Fenster erscheinen:

Um dies zu tun, öffnen Sie in den Systemeinstellungen das Kontrollfeld Sharing. Auf dem Bildschirm sollte folgendes Fenster erscheinen: Einleitung Unter MacOS X hat Apple die Freigabe standardmäßig auf den "Public" Ordner eines Benutzers beschränkt. Mit SharePoints wird diese Beschränkung beseitigt. SharePoints erlaubt auch die Kontrolle

Mehr

Klicken Sie mit einem Doppelklick auf das Symbol Arbeitsplatz auf Ihrem Desktop. Es öffnet sich das folgende Fenster.

Klicken Sie mit einem Doppelklick auf das Symbol Arbeitsplatz auf Ihrem Desktop. Es öffnet sich das folgende Fenster. ADSL INSTALLATION WINDOWS 2000 Für die Installation wird folgendes benötigt: Alcatel Ethernet-Modem Splitter für die Trennung Netzwerkkabel Auf den folgenden Seiten wird Ihnen in einfachen und klar nachvollziehbaren

Mehr

Firefox: Die Lesezeichen im Griff

Firefox: Die Lesezeichen im Griff Firefox: Die Lesezeichen im Griff Die Favoriten im Internet Explorer sind eine Lachnummer gegen die Lesezeichen im Firefox. Eingetippte Schlagworte reichen, um sie aufzurufen. Außerdem können ganze Befehlsfolgen

Mehr

Anleitung für den Zugriff auf Mitgliederdateien der AG-KiM

Anleitung für den Zugriff auf Mitgliederdateien der AG-KiM Anleitung für den Zugriff auf Mitgliederdateien der AG-KiM Hinweise: - Dies ist eine schrittweise Anleitung um auf den Server der Ag-Kim zuzugreifen. Hierbei können Dateien ähnlich wie bei Dropbox hoch-

Mehr

Facebook I-Frame Tabs mit Papoo Plugin erstellen und verwalten

Facebook I-Frame Tabs mit Papoo Plugin erstellen und verwalten Facebook I-Frame Tabs mit Papoo Plugin erstellen und verwalten Seit Anfang Juni 2012 hat Facebook die Static FBML Reiter deaktiviert, so wird es relativ schwierig für Firmenseiten eigene Impressumsreiter

Mehr

Wie richten Sie Ihr Web Paket bei Netpage24 ein

Wie richten Sie Ihr Web Paket bei Netpage24 ein Wie richten Sie Ihr Web Paket bei Netpage24 ein Eine kostenlose ebook Anleitung von Netpage24 - Webseite Information 1 E-Mail Bestätigung... 3 2 Ticketsystem... 3 3 FTP Konto anlegen... 4 4 Datenbank anlegen...

Mehr

Seite 1 von 14. Cookie-Einstellungen verschiedener Browser

Seite 1 von 14. Cookie-Einstellungen verschiedener Browser Seite 1 von 14 Cookie-Einstellungen verschiedener Browser Cookie-Einstellungen verschiedener Browser, 7. Dezember 2015 Inhaltsverzeichnis 1.Aktivierung von Cookies... 3 2.Cookies... 3 2.1.Wofu r braucht

Mehr

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7 Einrichtung des Cisco VPN Clients (IPSEC) in Windows7 Diese Verbindung muss einmalig eingerichtet werden und wird benötigt, um den Zugriff vom privaten Rechner oder der Workstation im Home Office über

Mehr

Visualisierung auf Büro PC s mit dem ibricks Widget

Visualisierung auf Büro PC s mit dem ibricks Widget Automation Server Visualisierung auf Büro PC s mit dem Widget Solutions Industriestrasse 25A CH-3178 Bösingen mail@.ch www..ch Tel +41 31 5 110 110 Fax+41 31 5 110 112 Solutions Bausteine zum intelligenten

Mehr

Datensicherung. Beschreibung der Datensicherung

Datensicherung. Beschreibung der Datensicherung Datensicherung Mit dem Datensicherungsprogramm können Sie Ihre persönlichen Daten problemlos Sichern. Es ist möglich eine komplette Datensicherung durchzuführen, aber auch nur die neuen und geänderten

Mehr

FTP-Server einrichten mit automatischem Datenupload für SolarView@Fritzbox

FTP-Server einrichten mit automatischem Datenupload für SolarView@Fritzbox FTP-Server einrichten mit automatischem Datenupload für SolarView@Fritzbox Bitte beachten: Der im folgenden beschriebene Provider "www.cwcity.de" dient lediglich als Beispiel. Cwcity.de blendet recht häufig

Mehr

Installieren von Microsoft Office 2012-09-12 Version 2.1

Installieren von Microsoft Office 2012-09-12 Version 2.1 Installieren von Microsoft Office 2012-09-12 Version 2.1 INHALT Installieren von Microsoft Office... 2 Informationen vor der Installation... 2 Installieren von Microsoft Office... 3 Erste Schritte... 7

Mehr

26. November 2007. EFS Übung. Ziele. Zwei Administrator Benutzer erstellen (adm_bill, adm_peter) 2. Mit adm_bill eine Text Datei verschlüsseln

26. November 2007. EFS Übung. Ziele. Zwei Administrator Benutzer erstellen (adm_bill, adm_peter) 2. Mit adm_bill eine Text Datei verschlüsseln EFS Übung Ziele Zwei Administrator Benutzer erstellen (adm_bill, adm_peter) Mit adm_bill eine Text Datei verschlüsseln Mit adm_peter einen Ordner verschlüsseln und darin eine Text Datei anlegen Dem Benutzer

Mehr

WOT Skinsetter. Nun, erstens, was brauchen Sie für dieses Tool zu arbeiten:

WOT Skinsetter. Nun, erstens, was brauchen Sie für dieses Tool zu arbeiten: WOT Skinsetter WOT Skinsetter steht für World of Tanks skinsetter (WOTS von nun an). Mit diesen Tool können Sie Skins importieren und ändern, wann immer Sie möchten auf einfache Weise. Als World of Tanks

Mehr

Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite.

Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite. ewon - Technical Note Nr. 003 Version 1.2 Universal Dashboard auf ewon Alarmübersicht auf ewon eigener HTML Seite. Übersicht 1. Thema 2. Benötigte Komponenten 3. Downloaden der Seiten und aufspielen auf

Mehr

Lernwerkstatt 9 privat- Freischaltung

Lernwerkstatt 9 privat- Freischaltung Was tun, wenn mein Rechner immer wieder die Freischaltung der Lernwerkstatt 9 privat verliert und ich die Ursache dafür nicht finden kann? Normalerweise genügt es, genau eine einzige online-freischaltung

Mehr

Eine Anleitung, wie Sie Mozilla Thunderbird 2 installieren und konfigurieren können. Installation... 2. Erstkonfiguration... 4

Eine Anleitung, wie Sie Mozilla Thunderbird 2 installieren und konfigurieren können. Installation... 2. Erstkonfiguration... 4 E-Mail-Client Mozilla Thunderbird für Studierende Installation und Einrichtung Mozilla Thunderbird ist ein Open-Source-E-Mail-Programm und -Newsreader des Mozilla-Projekts. Es ist neben Microsoft Outlook

Mehr

Verschlüsseln Sie Ihre Dateien lückenlos Verwenden Sie TrueCrypt, um Ihre Daten zu schützen.

Verschlüsseln Sie Ihre Dateien lückenlos Verwenden Sie TrueCrypt, um Ihre Daten zu schützen. HACK #39 Hack Verschlüsseln Sie Ihre Dateien lückenlos Verwenden Sie TrueCrypt, um Ihre Daten zu schützen.»verschlüsseln Sie Ihren Temp-Ordner«[Hack #33] hat Ihnen gezeigt, wie Sie Ihre Dateien mithilfe

Mehr

Installationsanleitung für Magento-Module

Installationsanleitung für Magento-Module Installationsanleitung für Magento-Module Installation durch die Modulwerft Wenn Sie es wünschen, können Sie das Modul durch unseren Installationsservice in Ihrem Shopsystem sicher und schnell installieren

Mehr

Step by Step Remotedesktopfreigabe unter Windows Server 2003. von Christian Bartl

Step by Step Remotedesktopfreigabe unter Windows Server 2003. von Christian Bartl Step by Step Remotedesktopfreigabe unter Windows Server 2003 von Remotedesktopfreigabe unter Windows Server 2003 Um die Remotedesktopfreigabe zu nutzen muss diese am Server aktiviert werden. Außerdem ist

Mehr

VIDA ADMIN KURZANLEITUNG

VIDA ADMIN KURZANLEITUNG INHALT 1 VIDA ADMIN... 3 1.1 Checkliste... 3 1.2 Benutzer hinzufügen... 3 1.3 VIDA All-in-one registrieren... 4 1.4 Abonnement aktivieren und Benutzer und Computer an ein Abonnement knüpfen... 5 1.5 Benutzername

Mehr

Informatik 1 Tutorial

Informatik 1 Tutorial ETH Zürich, D-INFK/D-BAUG Herbstsemester 2014 Dr. Martin Hirt Christian Badertscher Informatik 1 Tutorial Dieses Tutorial hat zum Ziel, die notwendigen Tools auf dem eigenen Computer zu installieren, so

Mehr

Hex Datei mit Atmel Studio 6 erstellen

Hex Datei mit Atmel Studio 6 erstellen Hex Datei mit Atmel Studio 6 erstellen Es werden generell keine Atmel Studio Dateien ins Repository geladen, da jeder seine Dateien an anderen Orten liegen hat und weil nicht jeder das Atmel Studio 6 benutzt.

Mehr

Folgeanleitung für Fachlehrer

Folgeanleitung für Fachlehrer 1. Das richtige Halbjahr einstellen Folgeanleitung für Fachlehrer Stellen sie bitte zunächst das richtige Schul- und Halbjahr ein. Ist das korrekte Schul- und Halbjahr eingestellt, leuchtet die Fläche

Mehr

INDEX. Öffentliche Ordner erstellen Seite 2. Offline verfügbar einrichten Seite 3. Berechtigungen setzen Seite 7. Öffentliche Ordner Offline

INDEX. Öffentliche Ordner erstellen Seite 2. Offline verfügbar einrichten Seite 3. Berechtigungen setzen Seite 7. Öffentliche Ordner Offline Öffentliche Ordner Offline INDEX Öffentliche Ordner erstellen Seite 2 Offline verfügbar einrichten Seite 3 Berechtigungen setzen Seite 7 Erstelldatum 12.08.05 Version 1.1 Öffentliche Ordner Im Microsoft

Mehr

Suche schlecht beschriftete Bilder mit Eigenen Abfragen

Suche schlecht beschriftete Bilder mit Eigenen Abfragen Suche schlecht beschriftete Bilder mit Eigenen Abfragen Ist die Bilderdatenbank über einen längeren Zeitraum in Benutzung, so steigt die Wahrscheinlichkeit für schlecht beschriftete Bilder 1. Insbesondere

Mehr

Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen

Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen 9 3 Web Services 3.1 Überblick Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen mit Hilfe von XML über das Internet ermöglicht (siehe Abb.

Mehr

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress.

Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress. Anmeldung http://www.ihredomain.de/wp-admin Dashboard Diese Ansicht erhalten Sie nach der erfolgreichen Anmeldung bei Wordpress. Das Dashboard gibt Ihnen eine kurze Übersicht, z.b. Anzahl der Beiträge,

Mehr

Lizenzen auschecken. Was ist zu tun?

Lizenzen auschecken. Was ist zu tun? Use case Lizenzen auschecken Ihr Unternehmen hat eine Netzwerk-Commuterlizenz mit beispielsweise 4 Lizenzen. Am Freitag wollen Sie Ihren Laptop mit nach Hause nehmen, um dort am Wochenende weiter zu arbeiten.

Mehr

O UTLOOK EDITION. Was ist die Outlook Edition? Installieren der Outlook Edition. Siehe auch:

O UTLOOK EDITION. Was ist die Outlook Edition? Installieren der Outlook Edition. Siehe auch: O UTLOOK EDITION Was ist die Outlook Edition? Outlook Edition integriert Microsoft Outlook E-Mail in Salesforce. Die Outlook Edition fügt neue Schaltflächen und Optionen zur Outlook- Benutzeroberfläche

Mehr

Carolo Knowledge Base

Carolo Knowledge Base KB 07: Wie stelle ich ein fremdsprachiges Layout ein? (1) My-T-Soft verhält sich bezüglich fremdsprachiger Layouts wie eine physische Tastatur, d.h. sie liefert lediglich die Codes für die einzelnen Tasten.

Mehr

Gruppenrichtlinien und Softwareverteilung

Gruppenrichtlinien und Softwareverteilung Gruppenrichtlinien und Softwareverteilung Ergänzungen zur Musterlösung Bitte lesen Sie zuerst die gesamte Anleitung durch! Vorbemerkung: Die Begriffe OU (Organizational Unit) und Raum werden in der folgenden

Mehr

Getting Started Guide CRM Online, 2013 & 2015 xrm1 Verpflegungspauschalen

Getting Started Guide CRM Online, 2013 & 2015 xrm1 Verpflegungspauschalen Getting Started Guide CRM Online, 2013 & 2015 xrm1 Verpflegungspauschalen 1 Download und Import der Lösung 2 Import der aktuellenverpflegungspauschalen 3 Weitere Informationen und Problembehandlung 1 Download

Mehr

PC-Kaufmann Supportinformation - Proxy Konfiguration für Elster

PC-Kaufmann Supportinformation - Proxy Konfiguration für Elster Seite 1 von 12 Dieses Dokument dient für Sie als Hilfe für die Konfiguration verschiedener Proxy-Server, wenn Sie Ihre Daten per Elster an das Finanzamt über einen Proxy-Server senden möchten. 1. Was ist

Mehr

Anleitung Captain Logfex 2013

Anleitung Captain Logfex 2013 Anleitung Captain Logfex 2013 Inhalt: 1. Installationshinweise 2. Erste Schritte 3. Client-Installation 4. Arbeiten mit Logfex 5. Gruppenrichtlinien-Einstellungen für die Windows-Firewall 1. Installationshinweis:

Mehr

Um die Installation zu starten, klicken Sie auf den Downloadlink in Ihrer E-Mail (Zugangsdaten für Ihre Bestellung vom...)

Um die Installation zu starten, klicken Sie auf den Downloadlink in Ihrer E-Mail (Zugangsdaten für Ihre Bestellung vom...) Inhalt Vorbereitung der LIFT-Installation... 1 Download der Installationsdateien (Internet Explorer)... 2 Download der Installationsdateien (Firefox)... 4 Installationsdateien extrahieren... 6 Extrahieren

Mehr

1. Loggen Sie sich mit Ihrem Benutzernamen in den Hosting-Manager (Confixx) auf Ihrer entsprechenden AREA ein. Automatische Wordpress Installation

1. Loggen Sie sich mit Ihrem Benutzernamen in den Hosting-Manager (Confixx) auf Ihrer entsprechenden AREA ein. Automatische Wordpress Installation Page 1 of 8 Automatische Wordpress Installation Vorwort Wordpress ist eines der bekanntesten und am weitesten verbreiteten CMS-Systeme. CMS steht für Content Management System und heisst, dass mit einem

Mehr

Tutorial - www.root13.de

Tutorial - www.root13.de Tutorial - www.root13.de Netzwerk unter Linux einrichten (SuSE 7.0 oder höher) Inhaltsverzeichnis: - Netzwerk einrichten - Apache einrichten - einfaches FTP einrichten - GRUB einrichten Seite 1 Netzwerk

Mehr

System-Update Addendum

System-Update Addendum System-Update Addendum System-Update ist ein Druckserverdienst, der die Systemsoftware auf dem Druckserver mit den neuesten Sicherheitsupdates von Microsoft aktuell hält. Er wird auf dem Druckserver im

Mehr

Überprüfung der digital signierten E-Rechnung

Überprüfung der digital signierten E-Rechnung Überprüfung der digital signierten E-Rechnung Aufgrund des BMF-Erlasses vom Juli 2005 (BMF-010219/0183-IV/9/2005) gelten ab 01.01.2006 nur noch jene elektronischen Rechnungen als vorsteuerabzugspflichtig,

Mehr

Anleitung zur Installation von SFirm 3.1 inklusive Datenübernahme

Anleitung zur Installation von SFirm 3.1 inklusive Datenübernahme Anleitung zur Installation von SFirm 3.1 inklusive Datenübernahme Stand: 01.06.2015 SFirm 3.1 wird als separates Programm in eigene Ordner installiert. Ihre Daten können Sie nach der Installation bequem

Mehr

Upgrade auf die Standalone Editionen von Acronis Backup & Recovery 10. Technische Informationen (White Paper)

Upgrade auf die Standalone Editionen von Acronis Backup & Recovery 10. Technische Informationen (White Paper) Upgrade auf die Standalone Editionen von Acronis Backup & Recovery 10 Technische Informationen (White Paper) Inhaltsverzeichnis 1. Über dieses Dokument... 3 2. Überblick... 3 3. Upgrade Verfahren... 4

Mehr

Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können.

Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können. Excel-Schnittstelle Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können. Voraussetzung: Microsoft Office Excel ab Version 2000 Zum verwendeten Beispiel:

Mehr

OUTLOOK-DATEN SICHERN

OUTLOOK-DATEN SICHERN OUTLOOK-DATEN SICHERN Wie wichtig es ist, seine Outlook-Daten zu sichern, weiß Jeder, der schon einmal sein Outlook neu installieren und konfigurieren musste. Alle Outlook-Versionen speichern die Daten

Mehr

Installationsanweisung Gruppenzertifikat

Installationsanweisung Gruppenzertifikat Stand: November 2015 Inhalt 1. Allgemeine Hinweise... 1 2. Vor der Installation... 1 3. Installation des Gruppenzertifikats für Internet Explorer... 2 3.1. Überprüfung im Browser... 7 3.2. Zertifikatsbestätigung

Mehr

Shellfire L2TP-IPSec Setup Windows XP

Shellfire L2TP-IPSec Setup Windows XP Shellfire L2TP-IPSec Setup Windows XP Diese Anleitung zeigt anschaulich, wie ein bei Shellfire gehosteter VPN-Server im Typ L2TP-IPSec unter Windows XP konfiguriert wird. Inhaltsverzeichnis 1. Benötigte

Mehr

Jederzeit Ordnung halten

Jederzeit Ordnung halten Kapitel Jederzeit Ordnung halten 6 auf Ihrem Mac In diesem Buch war bereits einige Male vom Finder die Rede. Dieses Kapitel wird sich nun ausführlich diesem so wichtigen Programm widmen. Sie werden das

Mehr

Kurzanleitung zur Softwareverteilung von BitDefender Produkten...2

Kurzanleitung zur Softwareverteilung von BitDefender Produkten...2 Kurzanleitung zur Softwareverteilung von Kurzanleitung zur Softwareverteilung von BitDefender Produkten...2 I. BitDefender Management Agenten Verteilung...2 1.1. Allgemeine Bedingungen:... 2 1.2. Erste

Mehr

Installationsanleitung SSL Zertifikat

Installationsanleitung SSL Zertifikat Installationsanleitung SSL Zertifikat HRM Systems AG, Technikumstrasse 82, Postfach, CH-8401 Winterthur, Telefon +41 52 269 17 47, www.hrm-systems.ch Inhaltsverzeichnis 1. Einleitung 3 2. Austausch Zertifikat

Mehr

etermin Einbindung in Outlook

etermin Einbindung in Outlook etermin Einbindung in Outlook 1. Einführung Über etermin gebuchte Termine können bei Bedarf auch mit externen Terminkalendern, wie zum Beispiel Outlook, ical oder Google synchronisiert werden. Dieses Dokument

Mehr

Kurzanleitung zur Installation des OLicense-Servers in Verwendung mit SimDiff/SimMerge

Kurzanleitung zur Installation des OLicense-Servers in Verwendung mit SimDiff/SimMerge Kurzanleitung zur Installation des OLicense-Servers in Verwendung mit SimDiff/SimMerge Inhaltsverzeichnis Installieren des OLicense-Servers... 1 Konfigurieren des OLicense-Servers... 2 Einstellen der Portnummer...

Mehr

Qt-Projekte mit Visual Studio 2005

Qt-Projekte mit Visual Studio 2005 Qt-Projekte mit Visual Studio 2005 Benötigte Programme: Visual Studio 2005 Vollversion, Microsoft Qt 4 Open Source s. Qt 4-Installationsanleitung Tabelle 1: Benötigte Programme für die Qt-Programmierung

Mehr

Intrexx auf einem Windows 2012 Server

Intrexx auf einem Windows 2012 Server T E C H N I S C H E D O K U M E N T A T I O N Intrexx auf einem Windows 2012 Server Intrexx 7.0 Um den Intrexx Server auf einem Windows Server 2012 verwenden zu können, ist es zunächst notwendig, den Internet

Mehr

SafeRun-Modus: Die Sichere Umgebung für die Ausführung von Programmen

SafeRun-Modus: Die Sichere Umgebung für die Ausführung von Programmen SafeRun-Modus: Die Sichere Umgebung für die Ausführung von Programmen Um die maximale Sicherheit für das Betriebssystem und Ihre persönlichen Daten zu gewährleisten, können Sie Programme von Drittherstellern

Mehr

teamsync Kurzanleitung

teamsync Kurzanleitung 1 teamsync Kurzanleitung Version 4.0-19. November 2012 2 1 Einleitung Mit teamsync können Sie die Produkte teamspace und projectfacts mit Microsoft Outlook synchronisieren.laden Sie sich teamsync hier

Mehr

10.05.2007 Universität Potsdam ZEIK - Zentrale Einrichtung für Informationsverarbeitung und Kommunikation

10.05.2007 Universität Potsdam ZEIK - Zentrale Einrichtung für Informationsverarbeitung und Kommunikation 10.05.2007 Universität Potsdam ZEIK - Zentrale Einrichtung für Informationsverarbeitung und Kommunikation Konfigurationsanleitungen MS Windows Server Update Services (WSUS) - Konfiguration Inhalt: 1. Konfiguration

Mehr

Mit jedem Client, der das Exchange Protokoll beherrscht (z.b. Mozilla Thunderbird mit Plug- In ExQulla, Apple Mail, Evolution,...)

Mit jedem Client, der das Exchange Protokoll beherrscht (z.b. Mozilla Thunderbird mit Plug- In ExQulla, Apple Mail, Evolution,...) Das tgm steigt von Novell Group Wise auf Microsoft Exchange um. Sie können auf ihre neue Exchange Mailbox wie folgt zugreifen: Mit Microsoft Outlook Web Access (https://owa.tgm.ac.at) Mit Microsoft Outlook

Mehr

Novell Client. Anleitung. zur Verfügung gestellt durch: ZID Dezentrale Systeme. Februar 2015. ZID Dezentrale Systeme

Novell Client. Anleitung. zur Verfügung gestellt durch: ZID Dezentrale Systeme. Februar 2015. ZID Dezentrale Systeme Novell Client Anleitung zur Verfügung gestellt durch: ZID Dezentrale Systeme Februar 2015 Seite 2 von 8 Mit der Einführung von Windows 7 hat sich die Novell-Anmeldung sehr stark verändert. Der Novell Client

Mehr

MetaQuotes Empfehlungen zum Gebrauch von

MetaQuotes Empfehlungen zum Gebrauch von MetaQuotes Empfehlungen zum Gebrauch von MetaTrader 4 auf Mac OS Auch wenn viele kommerzielle Angebote im Internet existieren, so hat sich MetaQuotes, der Entwickler von MetaTrader 4, dazu entschieden

Mehr

Anleitung zum Extranet-Portal des BBZ Solothurn-Grenchen

Anleitung zum Extranet-Portal des BBZ Solothurn-Grenchen Anleitung zum Extranet-Portal des BBZ Solothurn-Grenchen Inhalt Anleitung zum Extranet-Portal des BBZ Solothurn-Grenchen 2.2 Installation von Office 2013 auf Ihrem privaten PC 2.3 Arbeiten mit den Microsoft

Mehr

FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7

FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7 FuxMedia Programm im Netzwerk einrichten am Beispiel von Windows 7 Die Installation der FuxMedia Software erfolgt erst NACH Einrichtung des Netzlaufwerks! Menüleiste einblenden, falls nicht vorhanden Die

Mehr

MPDS4 EXAMPLE DATENBANK

MPDS4 EXAMPLE DATENBANK MPDS4 EXAMPLE DATENBANK Erste Schritte In diesem Tutorial lernen Sie, wie Sie MPDS4 starten und wie Sie eine Fabrikanlage auf dem Bildschirm anzeigen und mittig ausrichten können. Voraussetzungen Windows

Mehr

Wollen Sie einen mühelosen Direkteinstieg zum Online Shop der ÖAG? Sie sind nur einen Klick davon entfernt!

Wollen Sie einen mühelosen Direkteinstieg zum Online Shop der ÖAG? Sie sind nur einen Klick davon entfernt! Wollen Sie einen mühelosen Direkteinstieg zum Online Shop der ÖAG? Sie sind nur einen Klick davon entfernt! Sehr geehrte(r) Geschäftspartner(in), Um Ihre Transaktionen schneller durchzuführen, bieten wir

Mehr

Ihr CMS für die eigene Facebook Page - 1

Ihr CMS für die eigene Facebook Page - 1 Ihr CMS für die eigene Facebook Page Installation und Einrichten eines CMS für die Betreuung einer oder mehrer zusätzlichen Seiten auf Ihrer Facebook Page. Anpassen der "index.php" Installieren Sie das

Mehr

Folgeanleitung für Klassenlehrer

Folgeanleitung für Klassenlehrer Folgeanleitung für Klassenlehrer 1. Das richtige Halbjahr einstellen Stellen sie bitte zunächst das richtige Schul- und Halbjahr ein. Ist das korrekte Schul- und Halbjahr eingestellt, leuchtet die Fläche

Mehr

Wählen Sie bitte START EINSTELLUNGEN SYSTEMSTEUERUNG VERWALTUNG und Sie erhalten unter Windows 2000 die folgende Darstellung:

Wählen Sie bitte START EINSTELLUNGEN SYSTEMSTEUERUNG VERWALTUNG und Sie erhalten unter Windows 2000 die folgende Darstellung: Installation Bevor Sie mit der Installation von MOVIDO 1.0 beginnen, sollten Sie sich vergewissern, dass der Internet Information Server (IIS) von Microsoft installiert ist. Um dies festzustellen, führen

Mehr

Meldung Lokale Anwendung inkompatibel oder Microsoft Silverlight ist nicht aktuell bei Anmeldung an lokal gespeicherter RWE SmartHome Anwendung

Meldung Lokale Anwendung inkompatibel oder Microsoft Silverlight ist nicht aktuell bei Anmeldung an lokal gespeicherter RWE SmartHome Anwendung Meldung Lokale Anwendung inkompatibel oder Microsoft Silverlight ist nicht aktuell bei Anmeldung an lokal gespeicherter RWE SmartHome Anwendung Nach dem Update auf die Version 1.70 bekommen Sie eine Fehlermeldung,

Mehr

Arbeiten mit UMLed und Delphi

Arbeiten mit UMLed und Delphi Arbeiten mit UMLed und Delphi Diese Anleitung soll zeigen, wie man Klassen mit dem UML ( Unified Modeling Language ) Editor UMLed erstellt, in Delphi exportiert und dort so einbindet, dass diese (bis auf

Mehr