AVO Übung 1. Java RMI, Custom Sockets, Activation. 2. November 2004 (WS 2004) Andreas I. Schmied

Größe: px
Ab Seite anzeigen:

Download "AVO Übung 1. Java RMI, Custom Sockets, Activation. 2. November 2004 (WS 2004) Andreas I. Schmied"

Transkript

1 Universität Ulm Fakultät für Informatik Abteilung Verteilte Systeme Projektgruppe AspectIX AVO Übung 1 Java RMI, Custom Sockets, Activation 2. November 2004 (WS 2004) Andreas I. Schmied (schmied@inf...)

2 1 Beispielprojekte Autor: avo1 HelloWorld avo2a Bank Beispiel avo2b... mit XOR Encoding (avo2c... mit Activatable Objects) Verwendung use eclipse3-gtk Import/Existing Project... Copyright 2004, Andreas I. Schmied, Abteilung Verteilte Systeme, Universität Ulm 2/10

3 1 Beispielprojekte Aufbau der Projekte Gezipptes Eclipse-Projekt Startklassen RMIClient, RMIServer bzw. RMISetup integrierter Nameserver anstatt rmiregistry integrierter Webserver für RMIClassLoader adaptiert von Shell, beliebige IDE, am besten Eclipse nutzen readme.txt lesen! Eclipse: Compare With/Each Other zwischen Beispielen avo2a/src/infvs.avo2a <-> avo2b/src/infvs.avo2b ANT-Files Launches für ANT-Tasks startbare JARs, z.b. java -jar avo2b-rmiclient.jar Copyright 2004, Andreas I. Schmied, Abteilung Verteilte Systeme, Universität Ulm 3/10

4 2 Aufgaben Grundlage: avo2a 1. Value Objects Account soll nicht mehr Remote, sondern nur noch im Server zugreifbar sein Kontodaten als serialisiertes AccountData Object verschicken Kontonummer, Client-Referenz, Kontostand bzw. Transaktionswert Zugriff über Client Objekt, z.b.: AccountData[] accs = Client.getAccounts(); Client.deposit(AccountData d); Client.withdraw(AccountData d); Implikationen bei Änderung der Daten im RMIClient? Copyright 2004, Andreas I. Schmied, Abteilung Verteilte Systeme, Universität Ulm 4/10

5 2 Aufgaben 2. Activation Client-Objekte sollen passivierbar werden Account-Daten abspeichern Setup-Klasse anstatt RMIServer 1. erzeugt Activation Group 2. registriert Objekte 3. beendet sich Client bekommt aktivierbare Referenzen von Registry automatisch gestartete VM(s) beobachten (Logging ->Literaturliste) Achtung: Immer Multi-Host Szenarien testen! Copyright 2004, Andreas I. Schmied, Abteilung Verteilte Systeme, Universität Ulm 5/10

6 3 Dynamisches Klassenladen Codebase Property für Serverprozess java -Djava.rmi.server.codebase= wird in serialisiertem Stub annotiert void java.io.objectoutputstream.annotateclass(java.lang.class cl); "localhost" bringt im VS wenig... java.net.inetaddress.getlocalhost().gethostname() Classpaths benötigen trailing slash am Ende einer Pfadangabe Properties auch während Programmstart setzbar void java.lang.system.setproperties(java.util.properties props); Copyright 2004, Andreas I. Schmied, Abteilung Verteilte Systeme, Universität Ulm 6/10

7 3 Dynamisches Klassenladen Registry darf keinen direkten Zugriff auf Klassen registrierter Objekte haben Beispiel: 1. Server meldet Objekt an 2. Registry erhält serialisierten Stub inkl. Codebase 3. löst Codebase nicht auf, da Klassen über Classpath lesbar 4. deserialisiert Stub 5. Anfrage von Client 6. antwortet mit serialisiertem Stub ohne Codebase 7. Client kann Klassen nicht nachladen! Classpath löschen! (bzw. Codebase korrekt setzen) Copyright 2004, Andreas I. Schmied, Abteilung Verteilte Systeme, Universität Ulm 7/10

8 4 Sicherheit Security Manager notwendig, damit Klassen nachgeladen werden können System.setSecurityManager(new java.rmi.rmisecuritymanager()); Security Policies steuern Verhalten des Security Managers java -Djava.security.policy=my-policy-file... Policy File mit Grants permission class ["target"] [, "actions"]; grant { // permission java.security.allpermission; // böse! permission java.net.socketpermission "localhost:1099", "connect, resolve, accept"; }; Unterscheiden nach Client, Server, (In-Server-) Registry Copyright 2004, Andreas I. Schmied, Abteilung Verteilte Systeme, Universität Ulm 8/10

9 5 Typen Typinformation im RMI-System Beispiel: Remote r = java.rmi.naming.lookup("my-object-id"); Object o = (Object) r; Bank b; if (o instanceof Bank) b = (Bank) o; // Trivial Upcast // Type Reflection // Downcast Upcast (trivial) möglich Downcast mit Sprachmitteln möglich komplette Typinformation in Stub enthalten Klassen bei Deserialisierung bereits geladen nur bedingt in anderer Middleware möglich! Copyright 2004, Andreas I. Schmied, Abteilung Verteilte Systeme, Universität Ulm 9/10

10 6 Literatur RMI Tutorial RMI Guide RMI over SSL Activation Tutorial ANT Java Logging Facility JUnit Tests Zum Vergleich ist die Versionsnummer "1.4.2" überall auch durch "1.5.0" zu ersetzen. Copyright 2004, Andreas I. Schmied, Abteilung Verteilte Systeme, Universität Ulm 10/10

7 Remote Method Invocation (RMI)

7 Remote Method Invocation (RMI) 7 Remote Method Invocation (RMI) Verteilte Java Anwendungen; Client/Server Architektur Vorläufige Version 188 c 2005 Peter Thiemann Server: Aufgaben erstellt remote objects Objekte, deren Methoden von

Mehr

Konzepte von Betriebssystem-Komponenten Middleware RMI

Konzepte von Betriebssystem-Komponenten Middleware RMI Konzepte von Betriebssystem-Komponenten Middleware RMI Mario Kiefer 21. Januar 2005 1 Einführung RMI (Remote Method Invocation) ermöglicht es mit relativ einfachen Mitteln verteilte Anwendungen zu erstellen.

Mehr

AVO Übung 4. AspectIX. 18. Januar 2005 (WS 2004) Andreas I. Schmied Universität Ulm Fakultät für Informatik

AVO Übung 4. AspectIX. 18. Januar 2005 (WS 2004) Andreas I. Schmied Universität Ulm Fakultät für Informatik Universität Ulm Fakultät für Informatik Abteilung Verteilte Systeme Projektgruppe AspectIX AVO Übung 4 AspectIX 18. Januar 2005 (WS 2004) Andreas I. Schmied (schmied@inf...) Quellcodes zur Übersichtlichkeit

Mehr

Java RMI Remote Method Invocation

Java 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

Mehr

C.38 C.40 C Socket-Factories. 5.2 Server-Seite. 6.1 Interaktionsmuster. 6 Beispiel: White-Board. generisches Skeleton

C.38 C.40 C Socket-Factories. 5.2 Server-Seite. 6.1 Interaktionsmuster. 6 Beispiel: White-Board. generisches Skeleton 5.2 Server-Seite generisches Skeleton nimmt JRMP-Anfragen entgegen interpretiert Protokoll, deserialisiert Objekte Aufruf der lokalen Methode über Reflection Tabelle der exportierten Objekte Zuordnung

Mehr

AVO-Übung 1. Übungsszenario, Entwicklungswerkzeuge. Andreas I. Schmied

AVO-Übung 1. Übungsszenario, Entwicklungswerkzeuge. Andreas I. Schmied AVO-Übung 1 Übungsszenario, Entwicklungswerkzeuge Andreas I. Schmied (andreas.schmied@uni-ulm.de) AspectIX-Team Abteilung Verteilte Systeme Universität Ulm WS2005 Allgemeines Übungsbetrieb Kalender-Szenario

Mehr

JINI Security & Scalability. JINI Security

JINI Security & Scalability. JINI Security JINI Security & Scalability JINI Security Hans-Peter Rötheli & Christian Gloor Inhalt JINI-Beispielumgebung Kommunikation Was darf fremder Code? Exploits Folgerungen 1 Seminarraum mit Printer Lookup Service

Mehr

Java Remote Method Invocation (RMI)

Java Remote Method Invocation (RMI) Java Remote Method Invocation (RMI) Alexander Petry 13. Mai 2003 engl.: Entfernter Methodenaufruf 1 Übersicht 1. Einleitung 2. RMI Interfaces und Klassen 3. Parameterübergabe 4. Dynamisches Nachladen von

Mehr

Einführung: Verteilte Systeme - Remote Method Invocation -

Einführung: Verteilte Systeme - Remote Method Invocation - Einführung: Verteilte Systeme - - Prof. Dr. Michael Cebulla 11. Dezember 2014 Fachhochschule Schmalkalden Wintersemester 2014/15 1 / 43 M. Cebulla Verteilte Systeme Gliederung 1 2 Architektur RMI Kommunikation

Mehr

8.1.5 Java RMI Remote Method Invocation

8.1.5 Java RMI Remote Method Invocation 8.1.5 Java RMI Remote Method Invocation (http://java.sun.com/products/jdk/rmi ) (http://java.sun.com/j2se/1.5/docs/guide/rmi ) (http://java.sun.com/docs/books/tutorial/rmi ) (http://java.sun.com/developer/onlinetraining/rmi/rmi.html

Mehr

Übung zur Vorlesung "Einführung in Verteilte Systeme"

Übung zur Vorlesung Einführung in Verteilte Systeme Übung zur Vorlesung "Einführung in Verteilte Systeme" Wintersemester 2004/05 Thema: Java RMI Ulf Rerrer Institut für Informatik Universität Paderborn Inhalt Java Remote Method Invocation RMI-Architektur!

Mehr

PROG 2: Einführung in die Programmierung für Wirtschaftsinformatiker

PROG 2: Einführung in die Programmierung für Wirtschaftsinformatiker RMI, Zusammenfassung und Lehrevaluation PROG 2: Einführung in die Programmierung für Wirtschaftsinformatiker Steffen Helke Technische Universität Berlin Fachgebiet Softwaretechnik 8. Juli 2013 Übersicht

Mehr

Netzprogrammierung: Java RMI - Remote Method Invocation (Teil 3)

Netzprogrammierung: Java RMI - Remote Method Invocation (Teil 3) Netzprogrammierung: Java RMI - Remote Method Invocation (Teil 3) Robert Tolksdorf und Peter Löhr Überblick 1. Aktivierung und Deaktivierung von Objekten http://java.sun.com/javase/6/docs/technotes/guides/rmi/activation/overview.html

Mehr

1 Motivation. 1 Motivation. Standard Middleware für objektorientierte Anwendungen. Motivation. Fragmentierte Objektmodel. Java RMI

1 Motivation. 1 Motivation. Standard Middleware für objektorientierte Anwendungen. Motivation. Fragmentierte Objektmodel. Java RMI 1 Motivation Motivation ierte Objektmodel Standard Middleware für objektorientierte Anwendungen CORBA,.NET-Remoting Java Remote Method Invocation (RMI) Java RMI ierte Objekte undjava RMI Zusammenfassung

Mehr

B.33 B Programmiermodell. 3 Programmiermodell (2) Erweiterung des Java-Programmiermodells. Wesentliche Änderungen gegenüber Java

B.33 B Programmiermodell. 3 Programmiermodell (2) Erweiterung des Java-Programmiermodells. Wesentliche Änderungen gegenüber Java 3 Programmiermodell Erweiterung des Java-Programmiermodells Programmiermodell von Java Java RMI Wesentliche Änderungen gegenüber Java Interface obligatorisch Exception-Handling obligatorisch veränderte

Mehr

AVID-Übung 5. Asynchronous.NET Remoting. 15. Juli Andreas I. Schmied Abteilung Verteilte Systeme Projektgruppe AspectIX

AVID-Übung 5. Asynchronous.NET Remoting. 15. Juli Andreas I. Schmied Abteilung Verteilte Systeme Projektgruppe AspectIX Abteilung Verteilte Systeme Projektgruppe AspectIX Universität Ulm Fakultät für Informatik AVID-Übung 5 Asynchronous.NET Remoting 15. Juli 2004 Andreas I. Schmied (schmied@inf...) Asynchrone Methodenaufrufe

Mehr

RMI Server und Client

RMI Server und Client RMI Server und Client RMI Server Remote Objekt(e) bereitstellen Wurzel Objekt in Verzeichnisdienst anmelden RMI Client Wurzel Objekt in entfernter JVM mittels Verzeichnisdienst finden Methoden von Remote

Mehr

Repositories. AVO-Übung 4. Activation Wiederholung. Activation Änderungen an IOR. CORBA Activation, INS, PI. Welche Repositories kennen Sie?

Repositories. AVO-Übung 4. Activation Wiederholung. Activation Änderungen an IOR. CORBA Activation, INS, PI. Welche Repositories kennen Sie? Repositories AVO-Übung CORBA Activation, INS, PI Andreas I. Schmied (andreas.schmied@uni-ulm.de) AspectIX-Team Abteilung Verteilte Systeme Universität Ulm WS005 Welche Repositories kennen Sie? Interface

Mehr

9. Remote Method Invocation Grundlagen der Programmierung II (Java)

9. Remote Method Invocation Grundlagen der Programmierung II (Java) 9. Remote Method Invocation Grundlagen der Programmierung II (Java) Prof. Dr. Bernhard Humm Hochschule Darmstadt University of Applied Sciences Sommersemester 2006 Übersicht Grundlagen der Programmierung

Mehr

Netzprogrammierung: Java RMI - Remote Method Invocation (Teil 2)

Netzprogrammierung: Java RMI - Remote Method Invocation (Teil 2) Netzprogrammierung: Java RMI - Remote Method Invocation (Teil 2) Robert Tolksdorf und Peter Löhr Überblick 1. Auffinden von.class-dateien 2. Serializable Parameter 3. Sicherheit 4. Code laden übers Web

Mehr

Remote Method Invocation

Remote 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

Mehr

Überblick. Middleware - Übung. Model-View-Controller. Entwurfsmuster (Design Patterns)

Überblick. Middleware - Übung. Model-View-Controller. Entwurfsmuster (Design Patterns) Überblick Middleware - Übung Tobias Distler, Michael Gernoth, Rüdiger Kapitza Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl Informatik 4 (Verteilte Systeme und Betriebssysteme) www4.informatik.uni-erlangen.de

Mehr

JINI - DER START Kursübersicht Dieses Skript zeigt Schritt für Schritt, wie Sie ein erstes Jini-Beispiel zum Laufen bringen können, hoffentlich!

JINI - DER START Kursübersicht Dieses Skript zeigt Schritt für Schritt, wie Sie ein erstes Jini-Beispiel zum Laufen bringen können, hoffentlich! In diesem Kursteil Kursübersicht Worum geht s Einleitung JiniWorks Die Jini Dienste Jini HelloWorld Jini - Der Start 1.1. Kursübersicht Dieses Skript zeigt Schritt für Schritt, wie Sie ein erstes Jini-Beispiel

Mehr

Architekturen für verteilte Internetdienste

Architekturen für verteilte Internetdienste 1 Überblick Architekturen für verteilte Internetdienste Java Remote Method Invocation Java Beans Java Management Extensions Übung 2: Java RMI, Java Beans und Java Management Extensions (JMX) holger.schmidt@uni-ulm.de

Mehr

UNIVERSITÄT LEIPZIG. Mainframe Internet Integration SS2013. Java Remote Method Invocation RMI Beispiel

UNIVERSITÄT LEIPZIG. Mainframe Internet Integration SS2013. Java Remote Method Invocation RMI Beispiel UNIVERSITÄT LEIPZIG Mainframe Internet Integration Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013 Java Remote Method Invocation RMI Beispiel el0100 copyright Abt. Technische Informatik,

Mehr

AVID-Übung 3. EJB mit JBoss und Eclipse. 17. Juni Andreas I. Schmied Abteilung Verteilte Systeme Projektgruppe AspectIX

AVID-Übung 3. EJB mit JBoss und Eclipse. 17. Juni Andreas I. Schmied Abteilung Verteilte Systeme Projektgruppe AspectIX Abteilung Verteilte Systeme Projektgruppe AspectIX Universität Ulm Fakultät für Informatik AVID-Übung 3 EJB mit JBoss und Eclipse 17. Juni 2004 Andreas I. Schmied (schmied@inf...) AVID-Übung 3 Aufgabenstellung

Mehr

Remote-Objekte. Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer 1

Remote-Objekte. Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H. Prähofer 1 Remote-Objekte Motivation Architektur Client und Server-Implementierung Parameterübergabe Distributed Garbage Collection Verteilung und Nachladen von Code Pratikum SWE 2 M. Löberbauer, T. Kotzmann, H.

Mehr

Remote Method Invocation

Remote Method Invocation Remote Method Invocation spezielle Technik aus dem Java-Umfeld Ausführung der Methoden auf einem entfernten Rechner Analogon zum RPC (Remote Procedure Call) Zweck: Objekte in verschiedenen Java-VM s Aufruf

Mehr

C Java RMI C.2 C.4. 1 Java. 1 Java (2) 1 Java (3) Objektorientierte Sprache. Objektorientierte Sprache (fortges.) Objektorientierte Sprache (fortges.

C Java RMI C.2 C.4. 1 Java. 1 Java (2) 1 Java (3) Objektorientierte Sprache. Objektorientierte Sprache (fortges.) Objektorientierte Sprache (fortges. 1 Java C Java RMI orientierte Sprache e und andere Datentypen: int, float, boolean, etc. referenzen Verweise auf e keine Zeiger, Adressen o.ä. Methodenaufruf bei vorhandener referenz Übergabe von Parametern

Mehr

Praktikum Verteilte Anwendungen

Praktikum Verteilte Anwendungen Technische Informatik (Info II) -Sommersemester 2006 - Folie 1 / 27 0 Gliederung 1.) Kurze Wiederholung/ Einleitung 2.) RPC/ RMI 3.) Praktisches Beispiel 4.) Aufgabenblatt Folie 2 / 27 Wiederholung/ Einleitung

Mehr

Praktikum aus Softwareentwicklung 2, Stunde 14

Praktikum aus Softwareentwicklung 2, Stunde 14 Praktikum aus Softwareentwicklung 2, Stunde 14 Lehrziele/Inhalt 1. Java Service 2. Sicherheit Java Service Ein Java Service ist ein Interface, Objekte die dieses Interface implementieren können zur Laufzeit

Mehr

Laborübung zu Verteilte Systeme : Aufgabe zu Java-RMI (1)

Laborübung zu Verteilte Systeme : Aufgabe zu Java-RMI (1) Master EE verteilte Systeme Laborpraktikumsaufgabe Thomas/Seck V 2.0 22.01.2007 Seite1 von 6 Laborübung zu Verteilte Systeme : Aufgabe zu Java-RMI (1) Aufgabenstellung : Es ist ein über RMI aktivierbarer

Mehr

KAPITEL 1 RMI Verteilte Programmierung unter JAVA von Anja Austermann

KAPITEL 1 RMI Verteilte Programmierung unter JAVA von Anja Austermann RMI Verteilte Programmierung unter JAVA von Anja Austermann Da die Sprache Java sehr stark an der Programmierung für das Internet orientiert ist, stellt sie mit RMI einen Mechanismus zur Verfügung, mit

Mehr

Vorbereitungen Download. AVO-Übung 6. Beispiel. Slice. Varianten u.a. für Linux, Windows, OS X ICE-Dokumentation ICE-Binaries (inkl.

Vorbereitungen Download. AVO-Übung 6. Beispiel. Slice. Varianten u.a. für Linux, Windows, OS X ICE-Dokumentation ICE-Binaries (inkl. Vorbereitungen Download AVO-Übung ICE Andreas I. Schmied (andreas.schmied@uni-ulm.de) AspectIX-Team Abteilung Verteilte Systeme Universität Ulm WS005 Varianten u.a. für Linux, Windows, OS X ICE-Dokumentation

Mehr

36.2 Example ClassLoader. 36.3 Example Appletviewer

36.2 Example ClassLoader. 36.3 Example Appletviewer 36 ClassLoader How are classes loaded into the Java Virtual Machine (JVM)? from the local file system (CLASSPATH). by an instance of ClassLoader... and when? - When they are needed the first time. class

Mehr

Modulare Anwendungen und die Lookup API. Geertjan Wielenga NetBeans Team Deutschsprachige Überarbeitung, Aljoscha Rittner NetBeans Dream Team

Modulare Anwendungen und die Lookup API. Geertjan Wielenga NetBeans Team Deutschsprachige Überarbeitung, Aljoscha Rittner NetBeans Dream Team Modulare Anwendungen und die Lookup API Geertjan Wielenga NetBeans Team Deutschsprachige Überarbeitung, Aljoscha Rittner NetBeans Dream Team Die Notwendigkeit modularer Anwendungen Die Notwendigkeit modularer

Mehr

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.

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. 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

Mehr

Inhalt. Übung zur Vorlesung "Einführung in Verteilte Systeme" Das RMI-Schichtenmodell. Java Remote Method Invocation. Wintersemester 2004/05

Inhalt. Übung zur Vorlesung Einführung in Verteilte Systeme Das RMI-Schichtenmodell. Java Remote Method Invocation. Wintersemester 2004/05 Übung zur Vorlesung "Einführung in Verteilte Systeme" Wintersemester 2004/05 Ulf Rerrer Thema: Java RMI Institut für Informatik Universität Paderborn Inhalt Java Remote Method Invocation RMI-Architektur!

Mehr

Systemprogrammierung. Projekt: Java RMI. Wintersemester 2006 / 2007

Systemprogrammierung. Projekt: Java RMI. Wintersemester 2006 / 2007 Systemprogrammierung Projekt: Java RMI Wintersemester 2006 / 2007 Systemprogrammierung 1. Einleitung 2. Einführung in RPC 3. RMI 4. Code Beispiele 5. Live Vorstellung 6. Ausblick 7. Fazit 2 1. Einleitung

Mehr

Komponententechnologien Winter 2016/17. Komponenten. 2. Die Anfänge. Peter Sturm, Universität Trier 1

Komponententechnologien Winter 2016/17. Komponenten. 2. Die Anfänge. Peter Sturm, Universität Trier 1 Komponenten 1 2. Die Anfänge 3 Peter Sturm, Universität Trier 1 Selbstzufrieden Anwendung Hardware 4 Oh? Da gibt es noch jemanden? Anwendung Anwendung TCP/IP Hardware Hardware 5 Peter Sturm, Universität

Mehr

Remote Method Invocation

Remote Method Invocation Remote Method Invocation Spezielle Technik aus dem Java-Umfeld Ausführung von Methoden auf einem entfernten Rechner Analogon zum RPC (Remote Procedure Call) Zweck: Objekte in verschiedenen Java-VMs Aufruf

Mehr

Implementierung III. Implementierung IV

Implementierung III. Implementierung IV Übersicht Implementierung III GUI und Verhalten (Teil 2) Implementierung IV Schnittstelle zur Umgebung Integration und Test Alexander Geraldy Softwarepraktikum - Teil: Eingebettete Systeme SoSe 20031 Implementierung

Mehr

B Java RMI B.2 B.4. 1 Java. 1.2 Methoden. 1.1 Objekte (2) 1.1 Objekte. Objektorientierte Sprache. Klassenbeschreibung. Methode ist eine Art Funktion

B Java RMI B.2 B.4. 1 Java. 1.2 Methoden. 1.1 Objekte (2) 1.1 Objekte. Objektorientierte Sprache. Klassenbeschreibung. Methode ist eine Art Funktion 1 Java 1.1 e B Java RMI orientierte Sprache e beschrieben in Klassendefinitionen und andere Datentypen: int, float, boolean, etc. referenzen Verweise auf e keine Zeiger, Adressen o.ä. B.1 B.2 1.1 e (2)

Mehr

Praktikum aus Softwareentwicklung 2, Stunde 8

Praktikum aus Softwareentwicklung 2, Stunde 8 Praktikum aus Softwareentwicklung 2, Stunde 8 Lehrziele/Inhalt 1. Remoting Remoting Über Remoting können Objekte über JavaVMs hinweg miteinander kommunizieren. Das ist auch mit Socket-Programmierung möglich.

Mehr

Build Management Tool?

Build Management Tool? Build Management Tool? Funktionen Dependency Management Kompiliert den Sourcecode in Binaries Führt automatisierte Tests aus Installiert Software oder Lädt sie in Repositories Erstellt eine Dokumentation

Mehr

Pyro - Python Remote Objects

Pyro - Python Remote Objects 13. Mai 2012 Pyro - Python Remote Objects 1 Pyro - Python Remote Objects Oliver Burger DHBW Stuttgart - Campus Horb 13. Mai 2012 Was ist Pyro? 13. Mai 2012 Pyro - Python Remote Objects 2 13. Mai 2012 Pyro

Mehr

Tag 8 Repetitorium Informatik (Java)

Tag 8 Repetitorium Informatik (Java) Tag 8 Repetitorium Informatik (Java) Dozent: Michael Baer Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2017/2018 Informatik-Repetitorium

Mehr

Client/Server-Programmierung

Client/Server-Programmierung Client/Server-Programmierung WS 2014/2015 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 15. Oktober 2015 Betriebssysteme / verteilte

Mehr

Client/Server-Programmierung

Client/Server-Programmierung Client/Server-Programmierung WS 2014/2015 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 15. Oktober 2015 Betriebssysteme / verteilte

Mehr

Verwendung der Gruppenkommunikation JGroups

Verwendung der Gruppenkommunikation JGroups Entwickelt von Bela Ban als flexibel konfigurierbare Gruppenkommunikation in Java Information und Sourcen Webseite: http://www.jgroups.org/javagroupsnew/docs/index.html Manual und Tutorial CIP: /local/jgroups/

Mehr

11.1 Indirektes Binden (3) 11.1 Indirektes Binden (4) Objektadapterkonfiguration. Unmittelbarer Vorteil des indirekten Bindens

11.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

Mehr

D.1 Organisatorisches

D.1 Organisatorisches D Überblick über die 3. Übung D Überblick über die 3. Übung D.1 Organisatorisches D.1 Organisatorisches RPC und ORB Präsentation der Übungsaufgaben 1 und 2 Aufrufsemantiken Hinweise Aufgabe 2 Live in der

Mehr

Schematische Schnittstelle eines Naming-Context-Objekts und des Binding-Iterators. BindingIterator. next_one next_n destroy

Schematische Schnittstelle eines Naming-Context-Objekts und des Binding-Iterators. BindingIterator. next_one next_n destroy 10 Naming-Service (3) Schematische Schnittstelle eines Naming-Context-Objekts und des Binding-Iterators NamingContext resolve list destroy new_context unbind bind rebind bind_context rebind_context bind_new_context

Mehr

14. RMI - Remote Method Invocation

14. RMI - Remote Method Invocation 14. RMI - Remote Method Invocation 14.1 Beteiligte Instanzen Klientenklasse als Aufrufer: - Naming.Lookup(), - MyCall.Invoke(). Interface Spezifikation für: - Server Stub im Klienten, - Server-Skeleton*,

Mehr

Übungen zu Verteilte Systeme : Aufgabe zu Java-RMI (1)

Übungen zu Verteilte Systeme : Aufgabe zu Java-RMI (1) BEREICH DATENTECHNIK U VS 031 01 TH/TA 03 Übungen zu Verteilte Systeme : Aufgabe zu Java-RMI (1) Aufgabenstellung : Es ist ein über RMI aktivierbarer generischer Problemlösungs-Server in Java zu entwickeln.

Mehr

Warum EJB Technologie (1)?

Warum EJB Technologie (1)? Datenbanken und Informationssysteme 2 SS 2004 Prof. Dr. Stefan Böttcher Universität Paderborn Datenbanken und Informationssysteme 2 - Prof. Dr. Stefan Böttcher - SS 2004 Folie EJB - 1 Warum EJB Technologie

Mehr

AVO Übung 3. Lösung 2, CORBA. 30. November 2004 (WS 2004) Andreas I. Schmied Universität Ulm Fakultät für Informatik

AVO Übung 3. Lösung 2, CORBA. 30. November 2004 (WS 2004) Andreas I. Schmied Universität Ulm Fakultät für Informatik Universität Ulm Fakultät für Informatik Abteilung Verteilte Systeme Projektgruppe AspectIX AVO Übung 3 Lösung 2, CORBA 30. November 2004 (WS 2004) Andreas I. Schmied (schmied@inf...) 1 Aufgaben 1. Bank-Applikation

Mehr

Verteilte Systeme. Verteilte Objektorientierte Systeme I. Prof. Dr. Oliver Haase

Verteilte Systeme. Verteilte Objektorientierte Systeme I. Prof. Dr. Oliver Haase Verteilte Systeme Verteilte Objektorientierte Systeme I Prof. Dr. Oliver Haase 1 Überblick Verteilte Objektorientierte Systeme 1 RPC verteilte objektorientierte Architekturen Java RMI Verteilte Objektorientierte

Mehr

H.1 FORMI: An RMI Extension for Adaptive Applications H.1 FORMI: An RMI Extension for Adaptive Applications

H.1 FORMI: An RMI Extension for Adaptive Applications H.1 FORMI: An RMI Extension for Adaptive Applications Motivation The ed-object Approach Java RMI ed Objects in Java RMI Conclusions Universität Erlangen-Nürnberg Informatik 4, 2007 H-Formi-.fm 2007-12-14 13.11 H.1 1 Motivation Distributed object-oriented

Mehr

4. Informatiktag NRW 14.3.05. Projekt online Shop. Barbara Leipholz Schumacher Euregio Kolleg, Würselen

4. Informatiktag NRW 14.3.05. Projekt online Shop. Barbara Leipholz Schumacher Euregio Kolleg, Würselen 1/51 Projekt online Shop 4. Informatiktag NRW 14.3.05 Barbara Leipholz Schumacher Euregio Kolleg, Würselen 2/51 Die Firma Sprachen Lernen möchte ihr Angebot auf online Bestellungen ausweiten. Sprache Art

Mehr

Pyro - Python Remote Objects

Pyro - Python Remote Objects Pyro - Python Remote Objects Eine Bibliothek zum Erstellen verteilter Anwendungen unter Python Oliver Burger DHBW Stuttgart - Campus Horb Zusammenfassung. In der hier vorliegenden Arbeit werden die Grundzüge

Mehr

Enterprise JavaBeans Überblick: 8. Test-Driven Development. 8.1 Einleitung 8.2 Beispiel 8.3 Anwendung mit Eclipse und dem JBoss Application Server

Enterprise JavaBeans Überblick: 8. Test-Driven Development. 8.1 Einleitung 8.2 Beispiel 8.3 Anwendung mit Eclipse und dem JBoss Application Server Enterprise JavaBeans Überblick 1. Überblick Komponententechnologien 2. Einführung 3. Enterprise JavaBeans Architektur 4. Ressourcen Management und Primäre Services 5. Java Persistence: Entity Manager 6.

Mehr

Implementierung IV: Schnittstelle zur Umgebung. und. Integration und Test

Implementierung IV: Schnittstelle zur Umgebung. und. Integration und Test Sommersemester 2003 Implementierung IV: Schnittstelle zur Umgebung und Integration und Test 34 Aufgabe 6 Implementierung IV: Schnittstelle zur Umgebung und Integration und Test Umfang: 2 Wochen Punkte:

Mehr

Java-Programmierung. Remote Method Invocation - RMI

Java-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

Mehr

Enterprise JavaBeans Überblick

Enterprise JavaBeans Überblick Enterprise JavaBeans Überblick 1. Überblick Java EE 5 und Komponententechnologien 2. Einführung Java EE 5 Plattform 3. Enterprise JavaBeans Architektur 4. Ressourcen Management und Primäre Services 5.

Mehr

Remote Methode Invocation (RMI) ETIS SS05

Remote Methode Invocation (RMI) ETIS SS05 Remote Methode Invocation (RMI) ETIS SS05 Motivation Ablauf der Kommunikation Erstellung Remote-Service Zusammenfassung Gliederung 2 Motivation I RMI: Remote Method Invokation Möglichkeit verteilte Java-Anwendungen

Mehr

Mobile und Verteilte Datenbanken

Mobile und Verteilte Datenbanken Mobile und Verteilte Datenbanken Java RMI Vorlesung Wintersemester 2010/2011 groppe@ifis.uni-luebeck.de Institut für Informationssysteme Universität zu Lübeck Java Remote Method Invocation (RMI) Realisierung

Mehr

Verteilte Systeme. SoSe Universität Siegen Tel.: 0271/ , Büro: H-B Stand: 14.

Verteilte Systeme. SoSe Universität Siegen Tel.: 0271/ , Büro: H-B Stand: 14. Verteilte Systeme SoSe 2018 Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 14. Mai 2018 Betriebssysteme / verteilte Systeme Verteilte Systeme (1/14)

Mehr

C Java RMI. 1 Java. Objektorientierte Sprache

C Java RMI. 1 Java. Objektorientierte Sprache Java RMI 1 1 Java Objektorientierte Sprache Objekte und andere Datentypen: int, float, boolean, etc. Objektreferenzen Verweise auf Objekte keine Zeiger, Adressen o.ä. Methodenaufruf bei vorhandener Objektreferenz

Mehr

Gliederung Einleitung Die Interprozess Kommunikation Zusammenfassung Fragen. .NET Remoting. André Frimberger

Gliederung Einleitung Die Interprozess Kommunikation Zusammenfassung Fragen. .NET Remoting. André Frimberger .NET Remoting André Frimberger 30.11.2004 André Frimberger.NET Remoting 1 Gliederung 1 Einleitung Was ist.net Remoting? 2 Die Interprozess Kommunikation Grundkonzept der Datenkanal Parameterübergabe Instanziierung

Mehr

Verteilte Systeme SS Universität Siegen Tel.: 0271/ , Büro: H-B Stand: 29.

Verteilte Systeme SS Universität Siegen Tel.: 0271/ , Büro: H-B Stand: 29. Verteilte Systeme SS 2017 Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 29. Mai 2017 Betriebssysteme / verteilte Systeme Verteilte Systeme (1/12) i

Mehr

J a v a S e r v l e t s

J a v a S e r v l e t s J a v a S e r v l e t s Eine Einführung (C) J.M.Joller 1 Inhalt Mitgelieferte Bibliothekselemente Überblick Funktionsweise und Architektur Interaktion Resümee (C) J.M.Joller 2 Überblick Was sind Servlets?

Mehr

Jan-Ole Giebel. 8. Juni 2012

Jan-Ole Giebel. 8. Juni 2012 Invocation - Invocation - Hochschule für angewandte Wissenschaften Hamburg Fortgeschrittenes Programmieren mit Java 8. Juni 2012 Erweiterung für 1 / 31 Inhalt Erweiterung für Invocation - Erweiterung für

Mehr

Build Management Tool?

Build Management Tool? Build Management Tool? Funktionen Dependency Management Kompiliert den Sourcecode in Binaries Führt automatisierte Tests aus Installiert Software oder Lädt sie in Repositories Erstellt eine Dokumentation

Mehr

Informatik II Übung 06. Benjamin Hepp 5 April 2017

Informatik II Übung 06. Benjamin Hepp 5 April 2017 Informatik II Übung 06 Benjamin Hepp benjamin.hepp@inf.ethz.ch 5 April 2017 Nachbesprechung U5 5 April 2017 Informatik II - Übung 01 2 Nachbesprechung U5 1. Einfach verkettete Listen Keine Probleme 2.

Mehr

Überblick. Java RMI Java Remote Method Invocation Marshalling und Unmarshalling Aufgabe 1. VS-Übung (SS12) Java RMI 1 1

Überblick. Java RMI Java Remote Method Invocation Marshalling und Unmarshalling Aufgabe 1. VS-Übung (SS12) Java RMI 1 1 Überblick Java RMI Java Remote Method Invocation Marshalling und Unmarshalling Aufgabe 1 VS-Übung (SS12) Java RMI 1 1 Fernmethodenaufrufe Remote Method Invocation (RMI) Aufrufe von Methoden an Objekten

Mehr

Internetanwendungstechnik (Übung)

Internetanwendungstechnik (Übung) Internetanwendungstechnik (Übung) JacORB S. Bissell, G. Mühl Technische Universität Berlin Fakultät IV Elektrotechnik und Informatik Kommunikations- und Betriebssysteme (KBS) Einsteinufer 17, Sekr. EN6,

Mehr

2.13 Vererbung. Rainer Feldmann Universität Paderborn Technische Informatik für Ingenieure (TIFI) WS 09/ Article

2.13 Vererbung. Rainer Feldmann Universität Paderborn Technische Informatik für Ingenieure (TIFI) WS 09/ Article 2.13 Vererbung Klassen modellieren Objekte der realen Welt. Diese sind oft hierarchisch gegliedert. Beispiel: Ein Verlag bietet Bücher und CDs an. Beide Medien sind Artikel des Verlages. Book author: String

Mehr

Projektgruppe. Thomas Kühne. Komponentenbasiertes Software Engineering mit OSGi

Projektgruppe. Thomas Kühne. Komponentenbasiertes Software Engineering mit OSGi Projektgruppe Thomas Kühne Komponentenbasiertes Software Engineering mit OSGi Anforderungen der PG IDSE an ein Komponenten- Client Nativer Client Web Client Alternativen IDSE Nutzer Szenario Pipe IDSE

Mehr

E.1 Object Request Brokers

E.1 Object Request Brokers E Überblick über die 4. Übung E Überblick über die 4. Übung 1 Komponenten eines ORBs Lösungsskizze Aufgabe 2 RPC und ORB Aufrufsemantiken Hinweise Aufgabe 3 Kommunikationsschicht: tauscht Daten zwischen

Mehr

Java Security. Sicherheit durch Classloader, Security Manager und Co. Prof. Dr. Nikolaus Wulff

Java Security. Sicherheit durch Classloader, Security Manager und Co. Prof. Dr. Nikolaus Wulff Java Security Sicherheit durch Classloader, Security Manager und Co. Prof. Dr. Nikolaus Wulff Das Java Sicherheitskonzept Java wurde von Anfang an auf Sicherheit im Internet ausgelegt. Unsicherer Code

Mehr

Programmieren II. Remote Method Invocation (RMI) Heusch -- Ratz. Institut für Angewandte Informatik

Programmieren II. Remote Method Invocation (RMI) Heusch -- Ratz.  Institut für Angewandte Informatik Programmieren II Remote Method Invocation (RMI) Heusch -- Ratz KIT Universität des Landes Baden-Württemberg und nationales Großforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Remote Method

Mehr

Überblick. Java RMI Java Remote Method Invocation Marshalling und Unmarshalling Aufgabe 1. VS-Übung (SS14) Java RMI 1 1

Überblick. Java RMI Java Remote Method Invocation Marshalling und Unmarshalling Aufgabe 1. VS-Übung (SS14) Java RMI 1 1 Überblick Java RMI Java Remote Method Invocation Marshalling und Unmarshalling Aufgabe 1 VS-Übung (SS14) Java RMI 1 1 Fernmethodenaufrufe Remote Method Invocation (RMI) Aufrufe von Methoden an Objekten

Mehr

Kurzanleitung Eclipse

Kurzanleitung Eclipse Autor: Prof. Dr. Bernhard Humm, FB Informatik, FH Darmstadt Datum: 30. November 2005 1 Starten Für das Praktikum verwenden wir Eclipse Version 3.1 und JDK 1.5 Starten Eclipse: Doppelklick auf das Icon

Mehr

Modernisierung von Forms durch neues Look&Feel

Modernisierung von Forms durch neues Look&Feel Modernisierung von Forms durch neues Look&Feel Dr. Gudrun Pabst gudrun.pabst@trivadis.com Basel Baden Bern Lausanne Zürich Düsseldorf Frankfurt/M. Freiburg i. Br. Hamburg München Stuttgart Agenda Definition

Mehr

AvO-Übung 2 Remote Method Invocation

AvO-Übung 2 Remote Method Invocation AvO-Übung 2 Remote Method Invocation Jörg Domaschka und Andreas I. Schmied Institut für Verteilte Systeme 30. Oktober 2007 Übersicht 1 Besprechung der letzten Aufgaben 2 Aufruf-Semantiken 3 Netzwerkkommunikation

Mehr

Überblick. Java RMI Java Remote Method Invocation Marshalling und Unmarshalling Aufgabe 1. VS-Übung (SS16) Java RMI 1 1

Überblick. Java RMI Java Remote Method Invocation Marshalling und Unmarshalling Aufgabe 1. VS-Übung (SS16) Java RMI 1 1 Überblick Java RMI Java Remote Method Invocation Marshalling und Unmarshalling Aufgabe 1 VS-Übung (SS16) Java RMI 1 1 Fernmethodenaufrufe Remote Method Invocation (RMI) Aufrufe von Methoden an Objekten

Mehr

Eclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007

Eclipse Equinox als Basis für Smart Client Anwendungen. Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007 Eclipse Equinox als Basis für Smart Client Anwendungen Christian Campo, compeople AG, 5.7.2007 Java Forum Stuttgart 2007 Übersicht Definition / Architektur Smart Client Smart Client mit RCP / Equinox Gesamtfazit

Mehr

Java Security. Sicherheit durch Classloader, Security Manager und Co. Prof. Dr. Nikolaus Wulff

Java Security. Sicherheit durch Classloader, Security Manager und Co. Prof. Dr. Nikolaus Wulff Java Security Sicherheit durch Classloader, Security Manager und Co. Prof. Dr. Nikolaus Wulff Das Java Sicherheitskonzept Java wurde von Anfang an auf Sicherheit im Internet ausgelegt. Unsicherer Code

Mehr

TI2 Übung 6. m68k-assembler. 25. Januar 2005 (WS 2004) Andreas I. Schmied Universität Ulm Fakultät für Informatik

TI2 Übung 6. m68k-assembler. 25. Januar 2005 (WS 2004) Andreas I. Schmied Universität Ulm Fakultät für Informatik Universität Ulm Fakultät für Informatik Abteilung Verteilte Systeme Projektgruppe AspectIX TI2 Übung 6 m68k-assembler 25. Januar 2005 (WS 2004) Andreas I. Schmied (schmied@inf...) 1 Simulation der m68k-familie

Mehr

Kapitel 8: Serialisierbarkeit

Kapitel 8: Serialisierbarkeit Liste P: Programmieren mit Java WS 2001/2002 Prof. Dr. V. Turau FH Wiesbaden Kapitel 8: Serialisierbarkeit Folie 189 : Serialisierbarkeit Die Umwandlung eines komplexen Objektes in ein Byte-Array nennt

Mehr

Hierarchische Benennung von Interfaces und Klassen

Hierarchische Benennung von Interfaces und Klassen 1 Java (4) Hierarchische Benennung von Interfaces und Klassen Paketname + Klassenname (Package) z.b. java.lang.object weltweite eindeutige Benennung durch Anlehnung des Paketnamens an Domainname z.b. org.aspectix.orb.orb

Mehr

Benutzerauthentifizierung und Zugriffsschutz mit JAAS

Benutzerauthentifizierung und Zugriffsschutz mit JAAS Benutzerauthentifizierung und Zugriffsschutz mit JAAS Werner Eberling werner.eberling@mathema.de www.mathema.de Übersicht Altbekanntes kurz erwähnt Java Security Des Kaisers neue Kleider JAAS Zu Ihren

Mehr

Mobile und Verteilte Datenbanken

Mobile und Verteilte Datenbanken Mobile und Verteilte Datenbanken Java RMI Vorlesung Wintersemester 2013/2014 groppe@ifis.uni-luebeck.de Institut für Informationssysteme Universität zu Lübeck Kommunikations-Middleware Bietet höhere Kommunikations-Dienste

Mehr

- dynamisches Laden -

- dynamisches Laden - - - Fachbereich Technik Department Elektrotechnik und Informatik 21. Juni 2012 1/23 2/23 s dynamisch Code kann von mehreren Programmen genutzt werden => kleinere Programme einzelne Teile eines Programms

Mehr