Voyager Eigenschaften/Vorzüge Universalität: –ROI-Modelle: CORBA, RMI, DCOM –verschiedene Namens-, Verzeichnisdienste Nachrichtentypen: synchron, oneway,

Slides:



Advertisements
Ähnliche Präsentationen
der Universität Oldenburg
Advertisements

der Universität Oldenburg
Objektorientierte Programmierung
der Universität Oldenburg
DVG Dateien Dateien. DVG Dateien 2 Die Klasse File Die Klasse File stellt die Verbindung zwischen dem Filesystem des Rechners und dem.
Einführung in die Programmierung Ausführbare Klassen
DI Christian Donner cd (at) donners.com
Zusammenfassung des Kapitels 8
Internetzugriff mit Strings und Streams
Threads Richard Göbel.
Java: Objektorientierte Programmierung
Java: Dynamische Datentypen
Indirekte Adressierung
FH-Hof Sockets in Java Richard Göbel. FH-Hof Kommunikation über das Internet - Grundlagen Ein Rechner wird im Internet über die so genannte IP- Adresse.
Java: Referenzen und Zeichenketten
Java: Grundlagen der Objektorientierung
FH-Hof Fehlerbehandlung Richard Göbel. FH-Hof Konzept Fehler können mit dem Operator throw einer übergeordneten Funktion signalisiert werden. Parameter.
IF-ELSE-IF-Ketten Weiter mit PP..
Ein Beispiel in Java.
WHILE - Anweisung. Aufgabe : Ausgabe aller ganzen Zahlen von 0 bis 100 auf dem Bildschirm.
FOR Anweisung. Aufgabe : Ausgabe aller ganzen Zahlen von 0 bis 100 auf dem Bildschirm.
DO...WHILE Anweisung.
Benötigte Applets Startseite: in HTML-Format Applet auf der Startseite Das Applet, das auf der Startseite geladen wird, wird die vier Buttons und die eine.
Objektorientierte Programmierung JDK-Klassenbibliothek
Programmieren mit JAVA
Programmieren mit JAVA
PRJ 2007/1 Stefan Dissmann Motivation Problem: gleiche Datenstrukturen werden für verschiedene Objekte gebraucht: z.B. Listen von Studierenden, Kunden,
PKJ 2005/1 Stefan Dissmann Ausblick Es fehlen noch: Möglichkeiten zum Strukturieren größerer Programme Umgang mit variabler Zahl von Elementen Umgang mit.
JAVA RMI.
Projektplan: Fachgebiet Software Engineering Übersicht © Albert Zündorf, Kassel University.
Remote Methode Invocation (RMI)
Proxy Pattern Vorlesung Design Patterns Sieglinde Heinrich
1DVG3 - Paint Paint ein Zeichenprogramm. DVG3 - Paint 2 Paint – ein Zeichenprogramm.
1DVG3 - anonyme Klassen Anonyme Klassen. DVG3 - anonyme Klassen 2 Syntax new BasisKlasse(Parameterliste) { Modifikationen und Erweiterungen der Basisklasse.
DVG Kommentare1 Kommentare. DVG Kommentare 2 Kommentare Es gibt zwei Arten von Kommentaren: einzeilige Kommentare // der Kommentar geht.
DVG Einführung in Java1 Einführung in JAVA.
EDV Parallelprogrammierung1 Parallelprogrammierung mit JAVA.
DVG Kommentare 1 Kommentare. 2 Kommentare Es gibt zwei Arten von Kommentaren: einzeilige Kommentare // der Kommentar geht bis zum Ende der Zeile.
05 - Reflection Das Reflection API Reflection2 Ziel Es kommt vor, dass eine Methode ein Objekt als Parameter übergeben bekommt, ohne dass bekannt.
Java in 9 Folien Besser: Online-Buch Go to Java 2.
© 2005 Pohlig - Taulien Datenströme GK Informatik 1 Datenströme.
Bestimmung des ggT zweier Zahlen
© 2005 Pohlig GK Informatik K Zum JFrame Step by step by step by step by step by step by step by step by.
© 2006 MPohlig Grundkurs Informatik mit Java 1 JFrame-Vorlage Step by step by step by step by step by step by step by step by.
Verzweigung.
Vererbung Einfache Vererbung – Erben von abstrakten Klassen – Implementieren eines Interfaces.
Prof. K. Gremminger Folie 1 Vorlesung Datenbanksysteme SS 2002 Aufbau einer Verbindung zur Datenbank import java.net.URL; import java.sql.*; class JDBCExample.
Seite 1 Interface - Konzept Ein Interface führt einen neuen Datentyp ein: interface Frau {... } Das Interface enthält Deklarationen ( keine Definitionen.
Socket-Programmierung
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
Objektorientiertes Konstruieren
7.1.5 Java RMI – Remote Method Invocation
Die Klasse String und ihre Methoden
Optimale Ursprungsgerade
Wilfried Imrich CuP - Java Erste Vorlesung Entspricht ungefähr Kapitel 1.1 des Skriptums Wilfried Imrich Montanuniversität Leoben Freitag, 4. Oktober 2002.
Learning By Doing Ausnahmebehandlung Exceptions (Ausnahmebehandlung) Typische Fehlverhalten zur Laufzeit: s. Buch S. 287ff -Verwendung von null-Objekten.
Programmierung von Agenten in Java: Implementierung einer Supply-Chain
Javelin Internet-based parallel computing using Java.
Programmiervorkurs WS 2014/15 Methoden
Programmiervorkurs WS 2014/15 Instanzmethoden
Java-Kurs - 8. Übung Besprechung der Hausaufgabe.
3. Beschreibung von Abläufen durch Algorithmen 3.4 Zufall
Informatik I : Software höhere Programmiersprachen Java Klassen: hat Methoden (Funktionen) und Daten (Variablen) es kann mehrere Klassen geben nur eine.
Alois Schütte Advanced System Programming 2 Interprozeßkommunikation  2.1 JVM Ablaufumgebung  2.2 Java Native Interface (JNI)  Verwendung von.
© 2005 Pohlig Informatik Jg. 11 mfH Michael Pohlig 1 Zum JFrame Step by step by step by step by step by step by step by step by.
Vs Grundzüge der Fernaufruf-Implementierung = tatsächliche Aufrufbeziehungen Netz Fernaufrufdienst Transportdienst Hardware BS aus Bibl. Vertreter.
NET Remoting.Net („dotnet“) :von Microsoft eingeführte Plattform für verteilte Anwendungen, virtuelle Maschine für die verteilte Ausführung von.
Rusch Philipp, Spiegel Philipp, Sieber Michael, Ucar Sahin, Wetzel Markus.
Grundkurs Informatik 11-13
Tutorstunde 10.
 Präsentation transkript:

Voyager Eigenschaften/Vorzüge Universalität: –ROI-Modelle: CORBA, RMI, DCOM –verschiedene Namens-, Verzeichnisdienste Nachrichtentypen: synchron, oneway, future Einfachheit: –vollautomatische Erzeugung von Stubs etc. –keine (wenig) Anpassung der Objekte nötig –problemlose Fernerzeugung, Migration

Voyager-Laufzeitumgebung Integration verschiedener JVMs zu einem Voyager-System durch aktive Laufzeitsysteme –in Java für Clienten (keine eingehenden Nachrichten): Voyager.startup() –in Java für Server (lauscht am Port): Voyager.startup(int port) –auf der Kommandozeile > voyager portnummer Adressierung von Laufzeitumgebungen mit URL “//host:port“

Entfernte Objekte Aufruf auf entf.Objekte nur über Schnittstellen Repräsentation entf. Objekte durch Proxies Argumentübergabe bei entf. Methodenaufrufe –als Referenz, wenn Parameter die Schnittstelle com.objectspace.voyager.IRemote erfüllt –sonst als Kopie (mittels Serialisierung) Bei Fehlern/Exceptions –und deklarierter java.rmi.RemoteException wird die Voyager-Exception als RMI-Exception signalisiert, –sonst als (nicht deklarationspflichtige) com.objectspace.voyager.RuntimeRemoteException

Entfernte Erzeugung+Namensdienst Objekte können entfernt erzeugt werden: –in einer Laufzeitumgebung auf hai unter Port 8000 IServer serv =(IServer)Factory.create(“vs.Server“,“//hai:8000“) –mit Parameter für den Konstruktor Object[] args={“plot“,new Integer(2)} serv = Factory.create(“vs.Server“,args, “//hai:8000“) Namensdienst funktioniert analog zu RMI –Namespace.bind(String name, Object obj) –Namespace.lookup(String name)

Hard working server... Schnittstelle: public interface IServer { void doSomeService(); } Implementierung: public class Server implements IServer { public void doSomeService() { System.out.println("Working hard..");} }

Konfiguration/Applikation import com.objectspace.voyager.*; public class App { static public void main(String args[]) { Voyager.startup(); // generate and configure Server IServer server = (IServer) Factory.create("Server","//z1:8001"); // use service server.doSomeService(); }

Starten Starten der Laufzeitumgebung auf Rechner z1 z1> voyager 8001 voyager orb 3.1.1, copyright objectspace Starten der Applikation auf beliebigem Rechner mumu> java App Ausgabe auf z1: Working hard..