Netzprogrammierung: Microsoft.NET Remoting
|
|
- Inken Falk
- vor 8 Jahren
- Abrufe
Transkript
1 Netzprogrammierung: Microsoft.NET Remoting Robert Tolksdorf und Peter Löhr
2 Überblick 1. Fernaufrufbare Objekte 2. Parameterübergabe 3. Konfigurationsdateien (.NET Framework 3.0) Robert Tolksdorf und Peter Löhr 2
3 Fernaufrufbare Objekte Robert Tolksdorf und Peter Löhr
4 .NET.NET ( dotnet ) : von Microsoft eingeführte Plattform für verteilte Anwendungen: virtuelle Maschine CLR (common language runtime) für die verteilte Ausführung von Programmen, deren Klassen in unterschiedlichen Sprachen geschrieben sein können C#, C++, J#, Visual Basic, Eiffel, Jscript,... C# (dt. Cis, engl. C-sharp ) : Referenzsprache für.net, Microsoft s Antwort auf Java.NET Remoting : Fernaufrufe auf der.net-plattform Robert Tolksdorf und Peter Löhr 4
5 .NET Remoting Fernaufrufbarkeit wird nicht an Schnittstellen, sondern an Klassen festgemacht: eine Klasse für fernaufrufbare Objekte wird als Unterklasse der Bibliotheksklasse System.MarshalByRefObject vereinbart, z.b. class TextStore : MarshalByRefObject {... } statt interface Text extends Remote {... } wie in Java. Methoden von MarshalByRefObject : geerbte Methoden von Object (Equals, tostring,...) CreateObjectRef liefert ObjectRef-Objekt, das Informationen für die explizite Herstellung eines Objektvertreters (proxy) enthält... Robert Tolksdorf und Peter Löhr 5
6 Objekterzeugung in 3 Varianten... für fernaufrufbare Objekte auf einem Rechner R: Fernerzeugung eines privaten Objekts: Objekt wird mit new erzeugt, aber auf anderem Rechner R; der Erzeuger erhält einen Fernverweis. Fernerzeugung eines öffentlichen Objekts: Erzeugung wird auf R lokal vorbereitet, aber erst beim ersten Zugriff eines Klienten durchgeführt. Bekanntmachung eines öffentlichen Objekts: Objekt wird auf R erzeugt und dann veröffentlicht. (Dies entspricht der Erzeugung bei Java RMI.) Robert Tolksdorf und Peter Löhr 6
7 Fernerzeugung eines privaten Objekts Terminologie: client-activated object (CAO) Der Anbieter vereinbart einen Port, über den er erreichbar ist, und registriert eine Klasse wie z.b. TextStore beim lokalen Fernaufrufsystem. Der Klient stellt unter Angabe der gewünschten Klasse TextStore über sein lokales Fernaufrufsystem die Verbindung zum Anbieter her und kann mit new TextStore ein Objekt fernerzeugen. Robert Tolksdorf und Peter Löhr 7
8 Anbieter registriert Klasse using System; // import library name spaces using System.Runtime.Remoting; using System.Runtime.Remoting.Channels; using System.Runtime.Remoting.Channels.Tcp; public class TextStore : MarshalByRefObject { string text; public TextStore(string init) { text = init; } public void replace(string s) { text = s; return; } public string remove() { string result = text; text = null; return result; } public static void Main() { ChannelServices.RegisterChannel(new TcpServerChannel(4711)); RemotingConfiguration.RegisterActivatedServiceType( typeof(textstore)); Console.WriteLine("press ENTER to stop server."); Console.ReadLine(); } } Robert Tolksdorf und Peter Löhr 8
9 Fernerzeugung durch Klienten using System; using System.Runtime.Remoting; public class Test { public static void Main() { RemotingConfiguration.RegisterActivatedClientType( typeof(textstore), "tcp://localhost:4711"); TextStore text = new TextStore("initial text"); Console.WriteLine(text.remove()); // writes "initial text Console.WriteLine("press ENTER for another try:"); Console.ReadLine(); Console.WriteLine(text.remove()); // raises exception } } Beachte: Hier besteht kein Bedarf für ein rmiregistry. Robert Tolksdorf und Peter Löhr 9
10 Übersetzen und Testen (lokal) Übersetzen: C:\> csc server.cs C:\> csc /t:library server.cs C:\> csc /r:server.dll client.cs Programm server erzeugen Klasse server.dll bereitstellen (Windows dynamic link library,.net assembly) Programm client erzeugen Testen:... und dann: C:\> client initial text press ENTER for another try: in separatem Fenster: C:\> server press ENTER to stop server.... ohne Aufsetzen eines Registry! Robert Tolksdorf und Peter Löhr 10
11 Öffentliches Objekt bekanntmachen Bereitstellung eines fernaufrufbaren Objekts - ebenfalls ohne Aufsetzen eines Registry: Port registrieren: TcpChannel channel = new TcpServerChannel(4711); ChannelServices.RegisterChannel(channel); Objekt erzeugen: Server server = new Server(); Objekt mit mnemonischem Namen registrieren: RemotingServices.Marshal(server, "ServerObject"); Nachdem dies auf dem Rechner host ausgeführt wurde, beschaffen Klienten sich einen Fernverweis wie folgt: Server s = (Server)Activator.GetObject( typeof(server), "tcp://host:4711/serverobject"); Robert Tolksdorf und Peter Löhr 11
12 Schnittstellen verwenden! C:\> csc /r:server.dll client.cs Programm client erzeugen (von S. 10) mit Bezugnahme auf den Anbieter-Code ist nur für einfache lokale Tests praktikabel. Falls Implementierung des Dienstes (Klasse Server) nicht beim Klienten bekannt, Schnittstelle verwenden: public interface Service {... } public class Server : Service, MarshalByRefObject { public static void Main(string[] arg) {... }... public class Client { Service s = (Service )Activator.GetObject( typeof(service), "tcp://taos:4711/serverobject");... Robert Tolksdorf und Peter Löhr 12
13 Parameterübergabe Robert Tolksdorf und Peter Löhr
14 Parametermechanismen in C# op(int i) Wertparameter (call-by-value) Bei Fernaufrufen: call-by-value op(ref int i) op(out int i) Variablenparameter (call-by-reference) Bei Fernaufrufen: call-by-value-result! Variablenparameter, evtl. nicht belegt Bei Fernaufrufen: call-by-result! Beim Aufruf auch ref bzw. out, z.b. op(ref n) --> Bei ref drohen Verletzungen der Verteilungsabstraktion! Robert Tolksdorf und Peter Löhr 14
15 Variablenparameter Beispiel für abweichende Sematik: public void inc(bool cond, ref int x, ref int y) { if(cond) x++; else y++; }? Effekt von ob.inc(cond, ref a[i], ref a[k]);? Jedenfalls sollte ein Element des Feldes a erhöht sein (auch im Fall i==k).! Bei Fernaufruf kein Effekt falls cond && i==k! Robert Tolksdorf und Peter Löhr 15
16 Verweistypen Bei Verweistypen zusätzlich beachten (bei Argument- und Ergebnis-Objekten): Wenn Objekt fernaufrufbar (MarshalByRefObject): Fernverweis wird übergeben; sonst, wenn Objekt serialisierbar ( [Serializable] *): Objektkopie wird übergeben; sonst: Ausnahmemeldung. --> Verletzungen der Verteilungsabstraktion drohen! (vgl. Java RMI) * ein der Klassenvereinbarung vorangestelltes Attribut: [Serializable] class... Robert Tolksdorf und Peter Löhr 16
17 Verweistypen Wenn von einem Objekt nur eine Schnittstelle bekannt ist, kann sich dahinter ein MarshalByRefObject verbergen - oder auch nicht. Wenn ja, kann es tatsächlich in einem anderen Rechner liegen - oder auch nicht. (Vgl. Java RMI, Parametersemantik) Ohne genauere Typanalyse kann daher nicht entschieden werden, ob für einen zum/vom Objekt übertragenen Serializable Parameter ein Verweis oder eine Kopie übertragen wird. interface IStack {... } class Stack : IStack {... } class RemoteStack : IStack, MarshalByRefObject {... }... void op(istack stack) {... a = stack.dump();... } Robert Tolksdorf und Peter Löhr 17
18 Konfigurationsdateien Robert Tolksdorf und Peter Löhr
19 Auslagerung der netzspezifischen Daten wie Rechnernamen und Portnummern u.a. aus dem Programmtext in Konfigurationsdateien (XML) erlaubt deren Änderung ohne Neuübersetzung, flexibilisiert die Installation, verbessert die Verteilungsabstraktion. Robert Tolksdorf und Peter Löhr 19
20 Struktur Typische Struktur einer Konfigurationsdatei: <configuration> <system.runtime.remoting> <application> <channels>... </channels> <service>... </service> <client>... </client> </application> </system.runtime.remoting> </configuration> Robert Tolksdorf und Peter Löhr 20
21 Beispiel Fernerzeugung eines öffentlichen Objekts (SAO - server-activated object) Beim Anbieter wird Objekterzeugung vorbereitet: ChannelServices.RegisterChannel(new TcpServerChannel(4711)); RemotingConfiguration.RegisterWellKnownServiceType( typeof(server), "ServerObject", WellKnownObjectMode.Singleton); Klient beschafft sich Fernverweis (impliziert ggfls. Erzeugung): Server s = (Server)Activator.GetObject( // wie Klient auf s. 11 typeof(server), "tcp://host:4711/serverobject"); Robert Tolksdorf und Peter Löhr 21
22 Benutzung einer Konfigurationsdatei Im Anbieter wird ChannelServices.RegisterChannel(new TcpServerChannel(4711)); RemotingConfiguration.RegisterWellKnownServiceType( typeof(server), "ServerObject", WellKnownObjectMode.Singleton); ersetzt durch RemotingConfiguration.Configure("server.exe.config"); Name einer Konfigurationsdatei für das Programm (in Datei server.exe) Robert Tolksdorf und Peter Löhr 22
23 Konfigurationsdatei für den Anbieter Inhalt der Konfigurationsdatei server.exe.config : <configuration> <system.runtime.remoting> <application> <channels> <channel ref="tcp" port="4711"/> </channels> Klasse Assembly (server.dll) <service> <wellknown mode="singleton" type="server, server" objecturi="serverobject"/> </service> </application> </system.runtime.remoting> </configuration> Robert Tolksdorf und Peter Löhr 23
24 ... und beim Klienten Im Klienten wird Server s = (Server)Activator.GetObject( // wie Klient auf s. 11 typeof(server), "tcp://host:4711/serverobject"); ersetzt durch RemotingConfiguration.Configure("client.exe.config"); Name einer Konfigurationsdatei für das Programm (in Datei client.exe) Robert Tolksdorf und Peter Löhr 24
25 Konfigurationsdatei für den Klienten Inhalt der Konfigurationsdatei client.exe.config : <configuration> <system.runtime.remoting> <application> <client> <wellknown type="server, client" url="tcp://host:4711/serverobject"/> </client> </application> </system.runtime.remoting> </configuration> Robert Tolksdorf und Peter Löhr 25
26 Zusammenfassung Robert Tolksdorf und Peter Löhr
27 Zusammenfassung Objekterzeugung - 3 verschiedene Techniken: Fernerzeugung eines privaten Objekts (CAO) Fernerzeugung eines öffentlichen Objekts (SAO) Bekanntmachung eines lokal erzeugten Objekts Kein separates Registry erforderlich stattdessen explizite Port-Angabe nötig Parameterübergabe: Abstraktionsschwächen Variablenparameter: Wert/Ergebnis-Übergabe Serializable: statt Verweis wird Objektkopie übergeben Konfigurationsdateien formuliert in XML entlasten den Programmcode ermöglichen Änderung der Konfigurationsdaten ohne Neuübersetzung (offen geblieben: Sicherheit, Leasing, HTTP,... ) Robert Tolksdorf und Peter Löhr 27
28 Literatur S. McLean:.NET Remoting. Microsoft Press 2002 I. Rammer: Advanced.NET Remoting. apress 2002 (2. ed. 2006) M. Kuhrmann, E. Horn, J. Calame: Verteilte Systeme mit.net Remoting. Spektrum (.NET Framework 3.0) Robert Tolksdorf und Peter Löhr 28
8.1.6.NET Remoting. C# ( Csharp, Cis ) : Referenzsprache für.net,
8.1.6.NET Remoting.Net ( dotnet ) : von Microsoft eingeführte Plattform für verteilte Anwendungen, virtuelle Maschine für die verteilte Ausführung von Programmen in unterschiedlichen Sprachen C# ( Csharp,
Mehrunterschiedlichen Sprachen
8.1.6.NET Remoting.Net ( dotnet ) : von Microsoft eingeführte Plattform für verteilte Anwendungen, virtuelle Maschine für die verteilte Ausführung von Programmen in unterschiedlichen Sprachen C# ( Csharp
MehrDer lokale und verteilte Fall
Lokale Beans Der lokale und verteilte Fall RemoteClient Lokaler Client (JSP) RemoteSession/Entity-Bean Lokale Session/Entity-Bean 2 Lokale Beans Die bisher vorgestellten EJBswaren immer in der Lage auf
Mehr7.1.5 Java RMI Remote Method Invocation (http://java.sun.com/products/jdk/rmi) (http://java.sun.com/j2se/1.3/docs/guide/rmi/spec/rmitoc.
7.1.5 Java RMI Remote Method Invocation (http://java.sun.com/products/jdk/rmi) (http://java.sun.com/j2se/1.3/docs/guide/rmi/spec/rmitoc.html) bietet leider nur begrenzte Verteilungsabstraktion Unterstützung
MehrJava: Vererbung. Teil 3: super() www.informatikzentrale.de
Java: Vererbung Teil 3: super() Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und IMMER zuerst den Konstruktor der Elternklasse auf! Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und
Mehr7.4 Verteilungsabstraktion in heterogener Umgebung
7.4 Verteilungsabstraktion in heterogener Umgebung Szenario: reiner Maschinencode (native code) bei unterschiedlichen Rechnerarchitekturen, unterschiedlichen Betriebssystemen, unterschiedlichen Übersetzern,
MehrPrinzipien Objektorientierter Programmierung
Prinzipien Objektorientierter Programmierung Valerian Wintner Inhaltsverzeichnis 1 Vorwort 1 2 Kapselung 1 3 Polymorphie 2 3.1 Dynamische Polymorphie...................... 2 3.2 Statische Polymorphie........................
MehrRemote Method Invocation
Remote Method Invocation Aufruf von Methoden über die Grenzen der VM hinweg. Javaprozesse der rufenden und gerufenen Methode können auf verschiedenen Hosts laufen. Eine RMI-Applikation besteht aus dem
MehrEin einfacher Server. .NET Remoting. Klassentypen
Einführung - eine Klienten-Applikation kann mit einer Komponente interagieren die hinter einer Grenze liegt - Remoting ermöglicht eine Kommunikation von Komponenten Kontext-, Applikationsdomänen- (leichtgewichtiger
MehrJava Virtual Machine (JVM) Bytecode
Java Virtual Machine (JVM) durch Java-Interpreter (java) realisiert abstrakte Maschine = Softwareschicht zwischen Anwendung und Betriebssystem verantwortlich für Laden von Klassen, Ausführen des Bytecodes,
MehrVorkurs C++ Programmierung
Vorkurs C++ Programmierung Klassen Letzte Stunde Speicherverwaltung automatische Speicherverwaltung auf dem Stack dynamische Speicherverwaltung auf dem Heap new/new[] und delete/delete[] Speicherklassen:
MehrTypumwandlungen bei Referenztypen
Typumwandlungen bei Referenztypen Genau wie es bei einfachen Typen Typumwandlungen gibt, gibt es auch bei Referenztypen Umwandlungen von einem Referenztypen in einen anderen Referenztypen, die wie bei
MehrInnere Klassen in Java
Innere Klassen in Java SS 2012 Prof. Dr. Margarita Esponda Innere Klassen Klassen- oder Interfacedefinitionen können zur besseren Strukturierung von Programmen verschachtelt werden Eine "Inner Class" wird
MehrInternet Explorer Version 6
Internet Explorer Version 6 Java Runtime Ist Java Runtime nicht installiert, öffnet sich ein PopUp-Fenster, welches auf das benötigte Plugin aufmerksam macht. Nach Klicken auf die OK-Taste im PopUp-Fenster
MehrProgrammieren in Java
Programmieren in Java objektorientierte Programmierung 2 2 Zusammenhang Klasse-Datei In jeder *.java Datei kann es genau eine public-klasse geben wobei Klassen- und Dateiname übereinstimmen. Es können
MehrThemen. Web Service - Clients. Kommunikation zw. Web Services
Themen Web Service - Clients Kommunikation zw. Web Services Bisher: Implementierung einer Java Anwendung und Bereitstellung durch Apache Axis unter Apache Tomcat Java2WSDL Erzeugen einer WSDL-Datei zur
MehrAnleitung. Ein einfaches RMI-Beispiel. (ab Java 5.0) c Y. Pfeifer. (Juni 2014)
Anleitung Ein einfaches RMI-Beispiel (ab Java.0) c Y. Pfeifer (Juni 014) 1 Ein einfaches RMI-Beispiel Vorgehensweise: 1. Java Projekt anlegen. Zwei Packages server & client erstellen Auf der Server-Seite
MehrErstellen sicherer ASP.NET- Anwendungen
Erstellen sicherer ASP.NET- Anwendungen Authentifizierung, Autorisierung und sichere Kommunikation Auf der Orientierungsseite finden Sie einen Ausgangspunkt und eine vollständige Übersicht zum Erstellen
MehrDie Programmiersprache Java. Dr. Wolfgang Süß Thorsten Schlachter
Die Programmiersprache Java Dr. Wolfgang Süß Thorsten Schlachter Eigenschaften von Java Java ist eine von der Firma Sun Microsystems entwickelte objektorientierte Programmiersprache. Java ist......a simple,
MehrProgrammierkurs Java
Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen
MehrPowermanager Server- Client- Installation
Client A Server Client B Die Server- Client- Funktion ermöglicht es ein zentrales Powermanager Projekt von verschiedenen Client Rechnern aus zu bedienen. 1.0 Benötigte Voraussetzungen 1.1 Sowohl am Server
MehrGrundlagen von Python
Einführung in Python Grundlagen von Python Felix Döring, Felix Wittwer November 17, 2015 Scriptcharakter Programmierparadigmen Imperatives Programmieren Das Scoping Problem Objektorientiertes Programmieren
MehrOP-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
Mehrecaros-update 8.2 Update 8.2 procar informatik AG 1 Stand: DP 02/2014 Eschenweg 7 64331 Weiterstadt
Update 8.2 procar informatik AG 1 Stand: DP 02/2014 Inhaltsverzeichnis 1 Allgemein... 3 2 Erforderliche Anpassungen bei der Installation...3 2.1 Konfiguration Jboss 7 Applicationserver (Schritt 4/10)...3
MehrProf. Dr. Uwe Schmidt. 21. August 2007. Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (IA 252)
Prof. Dr. Uwe Schmidt 21. August 2007 Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (IA 252) Zeit: 75 Minuten erlaubte Hilfsmittel: keine Bitte tragen Sie Ihre Antworten und fertigen
MehrHandbuch. timecard Connector 1.0.0. Version: 1.0.0. REINER SCT Kartengeräte GmbH & Co. KG Goethestr. 14 78120 Furtwangen
Handbuch timecard Connector 1.0.0 Version: 1.0.0 REINER SCT Kartengeräte GmbH & Co. KG Goethestr. 14 78120 Furtwangen Furtwangen, den 18.11.2011 Inhaltsverzeichnis Seite 1 Einführung... 3 2 Systemvoraussetzungen...
Mehr8.4 Microsoft.NET. .NET Framework = 1 CLR Common Language Runtime ist objektorientierte virtuelle Maschine für Ausführung von managed cod
8.4 Microsoft.NET http://www.microsoft.com/net.net Framework = 1 CLR Common Language Runtime ist objektorientierte virtuelle Maschine für Ausführung von managed cod 2 Reichhaltige Klassenbibliotheken für
MehrGliederung Grundlagen Schlüsselworte try-catch Fehlerobjekte Fehlerklassen Schlüsselwort finally Schlüsselwort throws selbst erstellte Exceptions
try-catch Schlüsselworte try-catch e Schlüsselwort Schlüsselwort selbst erstellte ermöglichen die Behandlung von Fehlern, die zur Laufzeit entstehen. try-catch in C: Fehler führt immer zum Abbruch des
MehrObjektorientierte Programmierung
Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum
MehrSoftware Engineering Klassendiagramme Assoziationen
Software Engineering Klassendiagramme Assoziationen Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Lesen von Multiplizitäten (1) Multiplizitäten werden folgendermaßen
MehrC++ Grundlagen. ++ bedeutet Erweiterung zum Ansi C Standard. Hier wird eine Funktion eingeleitet
C++ Grundlagen ++ bedeutet Erweiterung zum Ansi C Standard Hier wird eine Funktion eingeleitet Aufbau: In dieser Datei stehen die Befehle, die gestartet werden, wenn das Programm gestartet wird Int main()
MehrProxy. Krishna Tateneni Übersetzer: Stefan Winter
Krishna Tateneni Übersetzer: Stefan Winter 2 Inhaltsverzeichnis 1 Proxy-Server 4 1.1 Einführung.......................................... 4 1.2 Benutzung.......................................... 4 3 1
MehrNetzprogrammierung: Java RMI - Remote Method Invocation (Teil 1)
Netzprogrammierung: Java RMI - Remote Method Invocation (Teil 1) Robert Tolksdorf und Peter Löhr Überblick 1. Fernaufrufbare Objekte 2. Das Objektverzeichnis rmiregistry 3. Parametersemantik Dokumentation
Mehr7.1.1 Grundzüge der Fernaufruf-Implementierung
7.1.1 Grundzüge der Fernaufruf-Implementierung = Aufrufbeziehung Aufrufer Vertreter (proxy, client stub) Fernaufrufdienst A d a p t e r Treiber (skeleton, server stub) Fernaufrufdienst Aufgerufener (Modul,
MehrQUICK INSTALLATION GUIDE
BIANCA/BRI für Windows NT Willkommen zu einer der leistungsfähigsten ISDN-Lösungen für Windows NT. Diese Lösung umfaßt nicht nur die CAPI (Common ISDN Application Program Interface), sondern auch NDIS-IP.
MehrEinführung in die Programmierung
Technische Universität München WS 2003/2004 Institut für Informatik Prof. Dr. Christoph Zenger Testklausur Einführung in die Programmierung Probeklausur Java (Lösungsvorschlag) 1 Die Klasse ArrayList In
MehrSoftware-Lizenzierung und Aktivierung: Verteilen von Software mit Apple Remote Desktop
Software-Lizenzierung und Aktivierung: Verteilen von Software mit Apple Remote Desktop Letzte Änderung dieser Seite: 21.01.2010 durch s-robinson2@ti.com. Verteilen von Software mit Apple Remote Desktop
MehrVerhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {...
PIWIN I Kap. 8 Objektorientierte Programmierung - Vererbung 31 Schlüsselwort: final Verhindert, dass eine Methode überschrieben wird public final int holekontostand() {... Erben von einer Klasse verbieten:
MehrAlgorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Tafelübung 04 Referenzen, Overloading, Klassen(hierarchien) Clemens Lang T2 18. Mai 2010 14:00 16:00, 00.152 Tafelübung zu AuD 1/13 Organisatorisches Nächster Übungstermin
MehrSystem-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
MehrApplet Firewall und Freigabe der Objekte
Hauptseminar Applet Firewall und Freigabe der Objekte Nachweis von Sicherheitseigenschaften für JavaCard Jin Zhou Ein Überblick über diesen Vortrag Applet Firewall Kontext JCRE Entry Point Objekt Shareable
MehrJava-Programmierung. Remote Method Invocation - RMI
Java-Programmierung Remote Method Invocation - RMI Entwicklungsmethoden Sockets Entwurf verteilter Anwendungen ist relativ aufwändig, da zunächst ein Kommunikationsprotokoll entwickelt werden muss aufwändig
MehrEinführung in die Java- Programmierung
Einführung in die Java- Programmierung Dr. Volker Riediger Tassilo Horn riediger horn@uni-koblenz.de WiSe 2012/13 1 Wichtig... Mittags Pommes... Praktikum A 230 C 207 (Madeleine) F 112 F 113 (Kevin) E
MehrÜbungen zu Softwaretechnik
Prof. Dr. Dr. h.c. M. Broy Lösungsblatt 11 Dr. H. Ehler, S. Wagner 23. Januar 2004 Übungen zu Softwaretechnik Aufgabe 16 Qualitätseigenschaften Broker-Pattern Beurteilen Sie das in Aufgabe 15 benutzte
MehrLizenz-Server überwachen
Einsteiger Fortgeschrittene Profis markus.meinl@m-quest.ch Version 1.0 Voraussetzungen für diesen Workshop 1. Die M-Quest Suite 2005-M oder höher ist auf diesem Rechner installiert 2. Das Produkt M-Lock
MehrDas erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden.
Einfache Ein- und Ausgabe mit Java 1. Hallo-Welt! Das erste Programm soll einen Text zum Bildschirm schicken. Es kann mit jedem beliebigen Texteditor erstellt werden. /** Die Klasse hello sendet einen
MehrSSH Authentifizierung über Public Key
SSH Authentifizierung über Public Key Diese Dokumentation beschreibt die Vorgehensweise, wie man den Zugang zu einem SSH Server mit der Authentifizierung über öffentliche Schlüssel realisiert. Wer einen
MehrE-Mail Adressen der BA Leipzig
E-Mail Adressen der BA Jeder Student der BA bekommt mit Beginn des Studiums eine E-Mail Adresse zugeteilt. Diese wird zur internen Kommunikation im Kurs, von der Akademie und deren Dozenten zur Verteilung
Mehr4D 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
MehrInstallation der SAS Foundation Software auf Windows
Installation der SAS Foundation Software auf Windows Der installierende Benutzer unter Windows muss Mitglied der lokalen Gruppe Administratoren / Administrators sein und damit das Recht besitzen, Software
MehrANLEITUNG NETZEWERK INSTALATION
ANLEITUNG NETZEWERK INSTALATION Sehr geehrter Kunde, vielen Dank, dass Sie sich für RED CAD entschieden haben. Mit dieser Anleitung möchten wir Sie bei der Installation unterstützen. Die Netzwerkinstallation
MehrLokale 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
MehrPakete dienen dazu, die Software eines Projektes in größere inhaltlich zusammengehörige Bereiche mit eigenem Namen einzuteilen (siehe Java API).
Paketdeklaration Paketdeklaration package Bezeichner ; Pakete dienen dazu, die Software eines Projektes in größere inhaltlich zusammengehörige Bereiche mit eigenem Namen einzuteilen (siehe Java API). Ein
MehrJava RMI Remote Method Invocation
Java RMI Remote Method Invocation Ziel: Aufruf von Instanzmethoden entfernter Objekte basierend auf Java. Paket: java.rmi und Unterpakete Topologie: RMI Registry RMI Server RMI Client Der Server registriert
MehrGroße Übung Praktische Informatik 1
Große Übung Praktische Informatik 1 2005-12-08 fuessler@informatik.uni-mannheim.de http://www.informatik.uni-mannheim.de/pi4/people/fuessler 1: Announcements / Orga Weihnachtsklausur zählt als Übungsblatt,
MehrHBF IT-Systeme. BBU-BSK Übung 2 Stand: 24.08.2010
BBU-BSK Übung 2 Stand: 24.08.2010 Zeit Laborübung 45 min Erstellung von virtuellen Maschinen mit VMWare Player Eine neue virtuelle Maschine erstellen: Ab dem VMWare Player 3 kann man nicht nur virtuelle
MehrINSTALLATION ABACUS ABAWEBCLIENT
INSTALLATION ABACUS ABAWEBCLIENT Mai 2005 / EMO v.2005.1 Diese Unterlagen sind urheberrechtlich geschützt. Alle Rechte, auch die der Übersetzung, des Nachdrucks und der Vervielfältigung der Unterlagen,
MehrINSTALLATIONSANLEITUNG der Version 2.1 (Jänner 2014)
ANHANG A INSTALLATIONSANLEITUNG der Version 2.1 (Jänner 2014) Seite A2 1. Anhang A - Einleitung Bei der Installation wird zwischen Arbeitsplatzinstallation (Client) und Serverinstallation unterschieden.
MehrKommunikations-Parameter
KNX App knxpresso für Android Tablets/Phones Kommunikations-Parameter Ausgabe Dokumentation: Mai. 2015 Doku Version V1.0.0 - Seite 1/8 Inhaltsverzeichnis 1.1 Nützliche Links... 3 1.2 Beschreibung der Kommunikations-Datei...
MehrSession Beans & Servlet Integration. Ralf Gitzel ralf_gitzel@hotmail.de
s & Servlet Integration Ralf Gitzel ralf_gitzel@hotmail.de 1 Themenübersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht Motivation Das Interface Stateful und Stateless s Programmierung einer Stateful
MehrSamsung Large Format Display
Samsung Large Format Display Erste Schritte Display Samsung Electronics Display Large Format Display 3 Wie nehme ich das Display in Betrieb? Dies ist die Windows XPe Oberfläche des MagicInfo Pro Interface.
MehrClient-Server-Beziehungen
Client-Server-Beziehungen Server bietet Dienste an, Client nutzt Dienste Objekt ist gleichzeitig Client und Server Vertrag zwischen Client und Server: Client erfüllt Vorbedingungen eines Dienstes Server
MehrEs 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
MehrE.1 Objekt-Serialisierung
E Überblick über die 13. Übung E Überblick über die 13. Übung E.1 Serialisierung (2) Objekt-Serialisierung Wie soll ein Objekt serialisiert werden? serveraktivierte Objekte IFormatter Schnittstelle stellt
MehrZählen von Objekten einer bestimmten Klasse
Zählen von Objekten einer bestimmten Klasse Ziel, Inhalt Zur Übung versuchen wir eine Klasse zu schreiben, mit der es möglich ist Objekte einer bestimmten Klasse zu zählen. Wir werden den ++ und den --
Mehr11.1 Indirektes Binden (3) 11.1 Indirektes Binden (4) Objektadapterkonfiguration. Unmittelbarer Vorteil des indirekten Bindens
11.1 Indirektes Binden (3) Objektadapterkonfiguration Name wird bei Erzeugung vergeben wird genutzt u.a. für Property-Zugriffe Adapter-ID wird über Property konfiguriert Beispiel: MyAdapter.AdapterID=MyAdapter
MehrWorkshop: Eigenes Image ohne VMware-Programme erstellen
Workshop: Eigenes Image ohne VMware-Programme erstellen Normalerweise sind zum Erstellen neuer, kompatibler Images VMware-Programme wie die Workstation, der ESX-Server oder VMware ACE notwendig. Die Community
MehrJavakurs zu Informatik I. Henning Heitkötter
Javakurs zu Informatik I Arrays vergleichen Implementieren Sie folgende Methode, die prüft, ob die Elemente der beiden Arrays an jeder Position übereinstimmen: public static boolean identisch(int[] a,
Mehr188.154 Einführung in die Programmierung für Wirtschaftsinformatik
Beispiel 1 Vererbung (Liste) Gegeben sind die beiden Klassen ListNode und PersonNode. 188.154 Einführung in die Programmierung für Wirtschaftsinformatik Wiederholung, Prüfungsvorbereitung Monika Lanzenberger
MehrHow-to: Webserver NAT. Securepoint Security System Version 2007nx
Securepoint Security System Inhaltsverzeichnis Webserver NAT... 3 1 Konfiguration einer Webserver NAT... 4 1.1 Einrichten von Netzwerkobjekten... 4 1.2 Erstellen von Firewall-Regeln... 6 Seite 2 Webserver
MehrDas Handbuch zu KNetAttach. Orville Bennett Übersetzung: Thomas Bögel
Orville Bennett Übersetzung: Thomas Bögel 2 Inhaltsverzeichnis 1 Einführung 5 2 KNetAttach verwenden 6 2.1 Hinzufügen von Netzwerkordnern............................ 6 3 Rundgang durch KNetAttach 8 4 Danksagungen
MehrII. Grundlagen der Programmierung. 9. Datenstrukturen. Daten zusammenfassen. In Java (Forts.): In Java:
Technische Informatik für Ingenieure (TIfI) WS 2005/2006, Vorlesung 9 II. Grundlagen der Programmierung Ekkart Kindler Funktionen und Prozeduren Datenstrukturen 9. Datenstrukturen Daten zusammenfassen
MehrEinführung in die objektorientierte Programmierung mit Java. Klausur am 19. Oktober 2005
Einführung in die objektorientierte Programmierung mit Java Klausur am 19. Oktober 2005 Matrikelnummer: Nachname: Vorname: Semesteranzahl: Die Klausur besteht aus drei Frageblöcken zu den Inhalten der
MehrTimeMachine. Time CGI. Version 1.5. Stand 04.12.2013. Dokument: time.odt. Berger EDV Service Tulbeckstr. 33 80339 München
Time CGI Version 1.5 Stand 04.12.2013 TimeMachine Dokument: time.odt Berger EDV Service Tulbeckstr. 33 80339 München Fon +49 89 13945642 Mail rb@bergertime.de Versionsangaben Autor Version Datum Kommentar
MehrZugriff auf OWA Auf OWA kann über folgende URLs zugegriffen werden:
Anleitung zur Installation der Exchange Mail Lösung auf Android 2.3.5 Voraussetzung für die Einrichtung ist ein vorliegender Passwortbrief. Wenn in der folgenden Anleitung vom Extranet gesprochen wird
MehrInstallationsanleitung WibuKey Treiber
Profi Line Warenwirtschaft Installationsanleitung WibuKey Treiber Bei der Installation der WibuKey ist zunächst zwischen der Serverinstallation und der reinen Client- bzw. Arbeitsplatzinstallation zu unterscheiden.
MehrSEP 114. Design by Contract
Design by Contract SEP 114 Design by Contract Teile das zu entwickelnde Programm in kleine Einheiten (Klassen, Methoden), die unabhängig voneinander entwickelt und überprüft werden können. Einheiten mit
MehrMusterlösung Übungsblatt 2 Netzprogrammierung WS 05/06
Musterlösung Übungsblatt 2 Netzprogrammierung WS 05/06 Aufgabe 1 Bitte schreiben Sie ein RMI Objekt, das eine Person repräsentiert. Es soll die folgende Schnittstelle implementieren: public interface Person
Mehr2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Lernziele:
2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Configuring Terminal Services o Configure Windows Server 2008 Terminal Services RemoteApp (TS RemoteApp) o Configure Terminal Services Gateway
MehrComputeria Solothurn
Computeria Solothurn Seniorinnen und Senioren entdecken den Computer und das Internet Sich mit «TeamViewer» von einem Supporter helfen lassen Diese Anleitung und die Illustrationen wurden unter Mac OS
MehrWebService in Java SE und EE
Schlüsselworte Java, JAX-WS, JAX-RS, JAXB, XML. Einleitung WebService in Java SE und EE Wolfgang Nast MT AG Ratingen Es werden die Mölichkeiten von WebServices in Java SE und EE, mit SOAP und REST gezeigt.
MehrWhitepaper. Produkt: combit Relationship Manager. Einrichtung für Remotedesktopdienste (Windows Server 2008 R2)
combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: combit Relationship Manager Einrichtung für Remotedesktopdienste (Windows Server 2008 R2) Einrichtung für Remotedesktopdienste (Windows Server
MehrInstallation EPLAN Electric P8 Version 2.4 64Bit Stand: 07/2014
Installation EPLAN Electric P8 Version 2.4 64Bit Stand: 07/2014 Einleitung... 2 Allgemeine Voraussetzungen... 2 Installation EPLAN Electric P8 64 Bit mit Office 32 Bit... 3 1. Umstellen der EPLAN Artikel-
MehrC# im Vergleich zu Java
C# im Vergleich zu Java Serhad Ilgün Seminar Universität Dortmund SS 03 Gliederung Entstehung von C# und Java Überblick von C# und Java Unterschiede und Gemeinsamkeiten Zusammenfassung und Ausblick Entstehung
MehrStudentische Lösung zum Übungsblatt Nr. 7
Studentische Lösung zum Übungsblatt Nr. 7 Aufgabe 1) Dynamische Warteschlange public class UltimateOrderQueue private Order[] inhalt; private int hinten; // zeigt auf erstes freies Element private int
MehrJavakurs 2013 Objektorientierung
Javakurs 2013 Objektorientierung Objektorientierte Programmierung I Armelle Vérité 7 März 2013 Technische Universität Berlin This work is licensed under the Creative Commons Attribution-ShareAlike 3.0
MehrKapitel 6. Vererbung
1 Kapitel 6 2 Ziele Das sprinzip der objektorientierten Programmierung verstehen Und in Java umsetzen können Insbesondere folgende Begriffe verstehen und anwenden können: Ober/Unterklassen Subtyping Überschreiben
MehrVirtual Private Network
Virtual Private Network Allgemeines zu VPN-Verbindungen WLAN und VPN-TUNNEL Der VPN-Tunnel ist ein Programm, das eine sichere Verbindung zur Universität herstellt. Dabei übernimmt der eigene Rechner eine
MehrIn 12 Schritten zum mobilen PC mit Paragon Drive Copy 11 und Microsoft Windows Virtual PC
PARAGON Technologie GmbH, Systemprogrammierung Heinrich-von-Stephan-Str. 5c 79100 Freiburg, Germany Tel. +49 (0) 761 59018201 Fax +49 (0) 761 59018130 Internet www.paragon-software.com Email sales@paragon-software.com
MehrBenutzeranleitung (nicht für versierte Benutzer) SSH Secure Shell
Benutzeranleitung (nicht für versierte Benutzer) SSH Secure Shell Warum Secure Shell? Die Benutzung von einigen FTP-Clients oder z.b. Telnet im ungesicherten Netzwerk ist verhältnismäßig riskant, da Daten
MehrProgrammieren I. Strategie zum Entwurf von Klassen. Beispiele. Design von Klassen. Dr. Klaus Höppner. Beispiel: Bibliothek
Programmieren I Dr. Klaus Höppner Hochschule Darmstadt Wintersemester 2008/2009 1 / 22 2 / 22 Strategie zum Entwurf von Klassen Beispiele Objektorientierte Sichtweise: Mit welchen Objekten habe ich es
MehrArbeiten am Client. Achtung: Während der gesamten Vorbereitungsarbeiten darf das Programm MS Outlook auf keinen Fall geöffnet werden!
Microsoft Office automatisieren Um beim ersten Start eines MS Office Programms (Word, Excel,...) eines neuen Benutzers auch schon brauchbare Einstellungen von Symbolleisten, Icons,... zur Verfügung stellen
MehrVisual Basic Express erstes Projekt anlegen
Inhalt Dokument Beschreibung... 1 Erstes Projekt anlegen... 1 Verweise hinzufügen... 2 Imports setzen... 5 Public Class vorbereiten... 6 Mehrere Tools programmieren... 7 Dokument Beschreibung Nach der
MehrLicense Management 1.0 - SDK
License Management 1.0 - SDK Inhalt Allgemeine Beschreibung... 2 Vorbereitungen... 2 Download aller nötigen Dateien und Dokumentationen... 2 Beantragung eines ValidationKeys... 2 Beantantragung einer Development-Lizenz...
MehrException Handling, Tracing und Logging
Exception Handling, Tracing und Logging Proseminar Objektorientiertes Programmieren mit.net und C# Tomas Ladek Institut für Informatik Software & Systems Engineering Agenda Exceptions Allgemeines Implementierung
MehrJava Einführung Packages
Java Einführung Packages Inhalt dieser Einheit Packages (= Klassenbibliotheken) Packages erstellen Packages importieren Packages verwenden Standard Packages 2 Code-Reuse Einbinden von bereits (selbst-/fremd)
MehrVersion 0.3. Installation von MinGW und Eclipse CDT
Version 0.3 Installation von MinGW und Eclipse CDT 1. Stellen Sie fest, ob Sie Windows in der 32 Bit Version oder in der 64 Bit Version installiert haben. 2. Prüfen Sie, welche Java Runtime vorhanden ist.
MehrPsyprax GmbH. Netzwerk Installation unter XP. Wichtig für alle Netzwerkinstallationen: Psyprax GmbH
Netzwerk Installation unter XP Wichtig für alle Netzwerkinstallationen: Während des Betriebs ist es nicht möglich die Firebird-Datenbank (psyprax.fdb usw.) zu kopieren. Insbesondere Techniken wie die Festplattenspiegelung
MehrErstellen eines Office-COM-Add-In mit Visual Basic 2005 Express Edition
Erstellen eines Office-COM-Add-In mit Visual Basic 2005 Express Edition Neues Projekt (Klassenbibliothek) erzeugen Als Projektbezeichnung wählte ich BeispielComAddIn. Add-In-Starter-Klasse erstellen Die
Mehr