4.4 COM+ mit Transaction Services als Beispiel eines OTM
|
|
- Hella Brodbeck
- vor 5 Jahren
- Abrufe
Transkript
1 4.4 COM+ mit Transaction Services als Beispiel eines OTM Was ist COM/COM+? COM+ Transaction Services Entwickeln von COM+-Applikationen Vergleich TUXEDO vs. COM+ Workshop Objekt-Transaktionsmonitore -1 Was ist COM+? COM+ = COM + MTS + MSMQ + Component Services + anderes Component Services Asynchronous Non-blocking calls Queued Components (MSMQ) Events Pipes Light-weight handlers andere Erweiterungen Workshop Objekt-Transaktionsmonitore -2
2 Was ist COM? COM - Component Model DCOM - Distributed COM Komponente: Binärcode, der eine Funktionalität erbringt, die über ein Interface zugänglich gemacht wird COM: Binärer Standard für solche Komponenten Þ unabhängig von einer Programmiersprache Þ unabhängig vom gewählten Compiler Þ Schnittstellenvererbung i. Ggs. zu Quellcode-Vererbung konkret: vptr/vtbl-layout abstrakter C++-Klassen als Schnittstelle der Komponenten festgelegt IAccount vptr Debit() Credit() Account Workshop Objekt-Transaktionsmonitore -3 Interfaces COM ist schnittstellenorientiert Schnittstellenvererbung vs. Quellcodevererbung Schnittstellendefinitions-Sprache Microsoft IDL IDL: Interface Definition Language MS-IDL basiert auf OSF DCE RPC IDL also: RPC-Formulierung mit automatischer Netzwerktransparenz Automatische Generierung von Proxy- und Stub-Code Workshop Objekt-Transaktionsmonitore -4
3 Bsp.: Interface für eine Account-Komponente Beispiel einer IDL-Deklaration interface IAccount { [id(1), helpstring("method Debit")] HRESULT Debit([in] int account, [in] double amount); }; [id(2), helpstring("method Credit")] HRESULT Credit([in] int account, [in] double amount); Host 1 Host 2 Finance Client IAccount Remote Proxy Account IAccount Account Workshop Objekt-Transaktionsmonitore -5 IDL-Compiler IDL-Definition aus dem Account- Beispiel Account.idl Typen und Schnittstellen Microsoft IDL Compiler MIDL.EXE Account.h C/C++-Typ- Definitionen Account_I.c GUID- Definitionen Account.tbl Typ-Bib. für VB und Java Account_P.c Schnittstellen- Definitionen dlldata.c Schnittstellen- Marshaler Automatisch generierter Code Workshop Objekt-Transaktionsmonitore -6
4 IUnknown-Interface COM-Standard-Interface: Jedes COM-Objekt muss es unterstützen Schnittstellen-Navigation ermöglichen Referenzzählung auf Schnittstellen zwecks Garbage Collection IDL für IUnknown interface IUnknown { HRESULT QueryInterface( [in] REFIID riid, // the interface asked for [out, iid_is(riid)] void **ppv); ULONG AddRef(); ULONG Release(); } Workshop Objekt-Transaktionsmonitore -7 Laufzeitumgebung - Container Prozessinterner Server (in-process server) Komponente ist in DLL implementiert DLL wird in den Client-Adressraum geladen Prozessexterner Server (out-of-process server) Komponente ist in EXE implementiert Komponente ist in DLL implementiert DLL wird in Surrogat geladen, bspw. DLLHOST.EXE COM+ Application unter Windows 2000 Prozessexterne Server unterstützen auch Remote Zugriffe Workshop Objekt-Transaktionsmonitore -8
5 Laufzeitumgebung und Methoden-Aufruf Client Process In-Process Local Server Process Client App In-Process Server Local Proxy RPC Stub COM Local Local Server Remote Proxy Remote Server Machine Remote Server Process COM RPC Stub Remote COM Remote Server Workshop Objekt-Transaktionsmonitore -9 Transaktionssemantik herstellen Transaction Coordinator Client IFinance COM Finance Zürich 2 Phasen-Commit Credit Debit IAccount Account IAccount Account DBMS Bern DBMS Basel Workshop Objekt-Transaktionsmonitore -10
6 Transaktionssteuerung Transaktionen im Client mittels des ITransaction-Interfaces automatisch und deklarativ auf Komponentenebene durch den Container Transaktionsattribute für Methoden Disabled: nicht in einem Transaktionskontext ausgeführt Not Supported: ohne Transaktionskontext ausgeführt Supported: in einem Transaktionskontext ausgeführt, falls bei Aufruf einer existiert; sonst ohne Transaktionskontext Required: immer in einem Transaktionskontext ausgeführt, der ggf. auch neu erzeugt wird, falls noch nicht existent Requires New: immer in einer neu erzeugten, eigenständigen Transaktion ausgeführt Implementierung: Zwei-Phasen-Commit bei verteilten Transaktionen Workshop Objekt-Transaktionsmonitore -11 COM mit Transaktionen Man kann COM-Komponenten transaktionelle Eigenschaften zuordnen (z.b. deklarativ über Component Services Admin.) (Fast) jede COM-Komponente eignet sich dafür Transaction Services: Transaktionsprimitive (Commit, Abort) Objektkontexte (mehr dazu unten) Anbindung an Resource-Manager (Datenbanken) bspw. via XA auch an Oracle 2PC-Koordination für verteilte Transaktionen Objektkontext für transaktionelle Objekte transparent vom Container verwaltet mittels Interception (s.f. Folie) speichert Transaktionszustand eines Objektes Subtransaktionen erben den Kontext der Vatertransaktion Objekte innerhalb einer Transaktion entscheiden über Commit: SetComplete()-Methode des Kontext-Interfaces Abort: SetAbort()-Methode des Kontext-Interfaces Workshop Objekt-Transaktionsmonitore -12
7 Das Prinzip der Interception Objekte laufen in Containern ab. Mit dem Einspielen eines neuen Objektes in einen Container wird die Schnittstelle dieses neuen Objektes dem Container bekannt gemacht. Das ermöglicht für den Container: Container-generierte Objekte mit gleicher Schnittstelle zu definieren sogennante Wrapper; Methoden-Aufrufe nicht direkt an die Objekte zu senden, sondern vorher über die eigenen Wrapper-Implementierungen umzuleiten; in den Wrappern nützliche Informationen über die Methodenaufrufe festzuhalten, etwa um Transaktionseigenschaften herzustellen; und schliesslich den Methodenaufruf vom Wrapper an das eigentliche Objekt weiterzureichen. Voraussetzung für just-in-time Objekterzeugung Workshop Objekt-Transaktionsmonitore -13 Objekterzeugung mit Interception Client COM+ Surrogate 3 COM+ Executive 7 Context 5 Class factory context 4 Component Class object COM Runtime 2 Schritte 2 bis 8 sind für den Client transparent Workshop Objekt-Transaktionsmonitore -14
8 Objekterzeugung mit Interception 1. Client ruft CoCreateInstance (COM Objekterzeugung) auf 2. Surrogat-Prozess wird von COM Runtime gestartet 3. COM+-Ausführungsumgebung wird geladen 4. Komponente (DLL) wird in das Surrogat geladen 5. Referenz auf Klassenobjekt-Wrapper (aka Factory) zurück 6. Objekt-Erzeugung via Klassenobjekt-Wrapper verlangen 7. Objekt-Kontext wird erzeugt 8. Zeiger auf Interface zurück an Client (Schaut für den Client wie richtiges Objekt aus) Anm.: Das Objekt selbst wurde noch nicht erzeugt. Dank COM+ just-in-time activation wird es erst beim ersten Methodenaufruf angelegt. Workshop Objekt-Transaktionsmonitore -15 Objekt-Kontexte context Creator ID Activity Transaction Security Properties COM+ Surrogate COM+ Executive Component Context context Class factory Class object COM+ Catalog Transaktionsvorgaben für das Objekt aus dem Katalog entnehmen, um sie dann in den Kontext stellen zu können. Workshop Objekt-Transaktionsmonitore -16
9 Transaktionaler Methoden-Aufruf Client 1 COM+ Surrogate Process COM+ Executive Component Context 3 context 2 Class object Schritte 2 und 3 sind für den Client transparent Workshop Objekt-Transaktionsmonitore -17 Transaktionaler Methoden-Aufruf 1. Client ruft eine Interface-Methode auf 2. Beim ersten Methoden-Aufruf, verwendet der Kontext-Wrapper den Objektkontext um das richtige Objekt anzulegen 3. Nach internem COM+-housekeeping wird der Aufruf an die Methodenimplementierung im Objekt propagiert Workshop Objekt-Transaktionsmonitore -18
10 Sub-Objekt bzw. Subtransaktion COM+ Surrogate Process Component 1 Context 4 2 zu 1 COM+ Executive Sub Component 3 Context context Class factory zu 3 Class object COM+ Catalog Schritte 2 bis 4 sind für den Client transparent Workshop Objekt-Transaktionsmonitore -19 Sub-Objekt bzw. Subtransaktion 1. Objekt ruft IContext::CreateInstance auf. Dies gibt Zeiger (s. zu 1 in der Folie) auf den Klassenobjekt-Wrapper zurück wie von den vorigen Folien bekannt 2. Objekt-Kontext fordert vom Klassenobjekt-Wrapper die Erzeugung des Objektes 3. Der Klassenobjekt-Wrapper verwendet die Information aus dem Kontext des Aufrufers und aus dem COM+-Katalog- Einträgen (s. zu 3 in der Folie), um den Kontext des neuen Objektes festzulegen 4. Ein Zeiger auf den Kontext-Wrapper wird an den Client zurückgeliefert Workshop Objekt-Transaktionsmonitore -20
11 Code-Beispiel Transfer() try { HRESULT hr; CComPtr<IAccount> account_credit; m_spcontext->createinstance(clsid_account, IID_IAccount, (void**)&account_credit); hr = account_credit->credit(account_to, amount); if (hr!= S_OK) throw hr; // do the same for debit // commit m_spcontext->setcomplete(); return S_OK; } catch(hresult hr) { // abort m_spcontext->setabort(); return S_FALSE; } Workshop Objekt-Transaktionsmonitore -21 Code-Beispiel Credit() STDMETHODIMP CAccount::Credit(int account, double amount) { _ConnectionPtr pconnection = NULL; try { char comm[256] = {0}; pconnection = _ConnectionPtr( uuidof(connection)); pconnection->open( BERN", ", ", NULL); // DB Verbindung sprintf(comm, _T("update account set balance = balance + %f where account_number = %d"), amount, account); // SQL Statement bearbeiten pconnection->execute(_bstr_t(comm), NULL, adcmdtext); m_spcontext->setcomplete(); pconnection->close(); return S_OK; } catch(...) {... } // commit erlauben Workshop Objekt-Transaktionsmonitore -22
12 Demo: Deployment Workshop Objekt-Transaktionsmonitore -23 Weitere Informationen zu COM, MTS und COM+ COM: DCOM: MTS: Applikationsentwicklung mit COM und MTS: COM+: (Stand: ) Workshop Objekt-Transaktionsmonitore -24
4.4 COM+ mit Transaction Services als Beispiel eines OTM
4.4 COM+ mit Transaction Services als Beispiel eines OTM Was ist COM/COM+? COM+ Transaction Services Entwickeln von COM+-Applikationen Vergleich TUXEDO vs. COM+ Kapitel 4: Workshop COM+ 1 Was ist COM+?
Mehr8.3 COM und DCOM (Microsoft)
8.3 COM und DCOM (Microsoft) Windows-Objekte: sprachunabhängiger, binärer Standard für Objektschnittstellen COM Component Object Model: sprachunabhängige Klassen als Binärcode in DLL- oder EXE-Dateien;
Mehr9.3 COM und DCOM (Microsoft )
9.3 COM und DCOM (Microsoft 1990-99) COM Component Object Model Binärcode-Konvention für Schnittstellen von Klassen (= Binärcode in DLL- oder EXE-Dateien), ansprechbar über lokale Fernaufrufe (in getrennten
MehrClient/Server-Programmierung
Client/Server-Programmierung WS 2017/2018 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 12. Januar 2018 Betriebssysteme / verteilte
MehrMicrosoft.NET Framework & Component Object Model. ein Vortrag von Florian Steuber
Microsoft.NET Framework & Component Object Model ein Vortrag von Florian Steuber Übersicht I..NET Framework 1. Was ist das.net Framework? 2. Das.NET Execution Model 3. Sprachunabhängigkeit, CTS und CLS
MehrKap. 3 Verteilte Objektverwaltung
Kap. 3 Verteilte Objektverwaltung G 3.1Einführung in die verteilte Objektverwaltung (Distributed Management, DOM) Anforderungen Kurzübersicht Java RMI Microsoft COM+ CORBA G 3.2Der CORBA-Standard G 3.3Iona
Mehr4.2 Workshop EJB. Entwicklung von EJB-Anwendungen
4.2 Workshop EJB Entwicklung von EJB-Anwendungen Welche Schritte werden benötigt, bis eine verteilte EJB-Anwendung einsatzbereit ist? Was muss alles implementiert werden? An welchen Stellen unterstützt
Mehr5.2 Workshop EJB. Entwicklung von EJB-Anwendungen. Das JOnAS-System
5.2 Workshop EJB Entwicklung von EJB-Anwendungen Welche Schritte werden benötigt, bis eine verteilte EJB-Anwendung einsatzbereit ist? Was muss alles implementiert werden? An welchen Stellen unterstützt
MehrSeminar Ausgewählte Komponenten von Betriebssystemen. IDL4 Compiler
Seminar Ausgewählte Komponenten von Betriebssystemen IDL4 Compiler IDL4 Compiler Hristo Pentchev Überblick CORBA IDL Allgemein IDL4 Compiler Beispiele CORBA Common Objekt Request Broker Architecture Gemeinsame
MehrSystemprogrammierung. 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
MehrApplication Frameworks and Componentware Wintersemester 2002/03. COM+ Entwicklungsschritte. In-Place Activation OSF DCE RPC 1992 DCOM 1996
OLE, DCOM und COM Die frühen Komponentenmodelle der Firma Microsoft COM+ Entwicklungsschritte Object Linking and Embedding (Compound Documents) In-Place Activation Clipboard 1987 OLE 1992 OLE 2 1993 MS
MehrAndreas Kosch. Software & Support $ > Verlag GmbH
Andreas Kosch Software & Support Verlag GmbH $ > Inhaltsverzeichnis I COM-GRUNDLAGEN 11 1 COM - COMPONENT OBJECT MODEL 13 1.1 WARUM? 13 1.2 DER COM-STECKBRIEF 16 2 CLIENT UND SERVER 18 2.1 BEGRIFFSBESTIMMUNG
MehrSoftware Reuse Sommer 2004. 5. OLE, DCOM und COM Die frühen. Komponentenmodelle der Firma Microsoft. Object Linking and Embedding (Compound Documents)
5. OLE, DCOM und COM Die frühen Komponentenmodelle der Firma Microsoft Peter Sturm Universität Trier COM+ Entwicklungsschritte Object Linking and Embedding (Compound Documents) In-Place Activation Clipboard
MehrInhalt. 1. Motivation. 2. COM Architektur. 3. COM Implementierung. 4. Zusammenhang zu ATL. 5. Beispiel COM Client/ Server. 6..
Inhalt 1. Motivation 2. COM Architektur IUnkown 3. COM Implementierung 4. Zusammenhang zu ATL 5. Beispiel COM Client/ Server 6..NET/ COM Interop ISum IMultiply Calculator IClassFactory 7. Beispiel.NET
MehrIUG DRESDEN ERSTELLUNG VON ROBUSTEN NATURAL SERVICES Software AG. All rights reserved. For internal use only
IUG DRESDEN ERSTELLUNG VON ROBUSTEN NATURAL SERVICES 2016 Software AG. All rights reserved. For internal use only DIGITAL BUSINESS APPLICATIONS DRIVE THE DIGITAL BUSINESS Partner Lieferanten Kunden SaaS
MehrEinführung in COM. 04.04.2006 Seite 1
Einführung in COM 04.04.2006 Seite 1 Ziele Sie kennen die Funktion der Registry für COM Sie können die Struktur eines COM-Objekts erklären Sie können erklären, wie ein remote-server gestartet wird 04.04.2006
MehrKap. 3 Verteilte Objektverwaltung
Kap. 3 Verteilte Objektverwaltung 3.1 Einführung in die verteilte Objektverwaltung (Distributed Object Management, DOM) Anforderungen Kurzübersicht Java RMI Microsoft COM+ CORBA 3.2 Der CORBA-Standard
MehrKomponentenorientierte Software-Entwicklung. Seite 1 / 44
Seite 1 / 44 Wiederholung EJB-Module/-Projekte SessionBeans Stateless Beans Stateful Beans EntityBeans JPA-Grundlagen (EntityManager, Query-Abfragen) Vorschlag Projektaufbau / Package-Strukturierung Seite
Mehr3.3 Das Orbix CORBA-System
3.3 Das Orbix CORBA-System G Kurzer Überblick zu der CORBA-Implementierung Orbix G Unser Fahrplan: IDL Verwendungsbeispiel Zoom-In: CORBA Kommunikationsmechanismus Orbix Systemübersicht Naming Service,
Mehr1 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
MehrEinfü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
MehrRemote 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
MehrZwischenbericht Diplomarbeit
Zwischenbericht Diplomarbeit Vergleichende Studie zu den Komponentenmodellen COM+, EJB und CCM Stefan Haubold (sh6@inf.tu-dresden.de) 1 Gliederung " Aufgabenstellung " COM+ " Enterprise JavaBeans (EJB)
MehrRemote 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
Mehr3.2 Der CORBA-Standard Common Object Request Broker Architecture
3.2 Der CORBA-Standard Common Object Request Broker Architecture (Bildquelle: OMG) Kapitel 3.2: Vorlesung CORBA 1 CORBA Middleware im Ueberblick G CORBA = Common Object Request Broker Architecture. Standard
MehrInstitut für Programmierung und Reaktive Systeme. Java 7. Markus Reschke
Institut für Programmierung und Reaktive Systeme Java 7 Markus Reschke 14.10.2014 Vererbung in Java Vererbung ermöglicht es, Klassen zu spezialisieren Wiederverwendung vorhandener Klassen Kindsklasse erhält
MehrKommunikation. Björn und Georg
Kommunikation Björn und Georg CORBA CORBA (Common Object Request Broker Architecture) Entwicklung der OMG ( Object Management Group) Zusammenschluss von 800 Firmen Hardware- und Progammiersprachen-unabhängiges
Mehr1. Sie können die zentrale Idee und Bedeutung einer Schnittstelle, wie sie schon im RPC verwendet wird, erklären.
CORBA Lernziele 1. Sie können die zentrale Idee und Bedeutung einer Schnittstelle, wie sie schon im RPC verwendet wird, erklären. Zentrale Idee: Schnittstelle: - mit einer Schnittstelle beschreibt man
MehrCORBA-Konzept. Ziele. Common Object Request Broker Architecture CORBA. Plattformunabhängige Kommunikation Transparente Verteilung von Objekten
CORBA-Konzept Ziele Common Object Request Broker Architecture CORBA Plattformunabhängige Kommunikation Transparente Verteilung von Objekten CORBA-Konzept Object Management Group Spezifiziert den CORBA-Standard
MehrProgrammierkurs C++ Abstrakte Klassen und Methoden
Programmierkurs C++ Abstrakte Klassen und Methoden Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer #2 Vererbungshierarchie Obst double
Mehr9.5 Microsoft.NET
9.5 Microsoft.NET http://www.microsoft.com/net http://msdn.microsoft.com/netframework Architektur: objektorientiert/fernaufrufe (8.1.6 ) IDL: (unsichtbare Metadaten, vom Übersetzer erzeugt) Dienste: (über
MehrVorbereitungen 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
MehrJaneva:.NET meets J2EE
Inhalt: Motivation Was ist Janeva? Systemvoraussetzungen Installation Beispiel Converter Fazit Motivation Motivation: Janeva testen einen Überblick verschaffen Lauffähiges Beispiel Entscheidungshilfe über
MehrKap. 3 Evolution von TP-Monitoren zu Objekt-Monitoren
Kap. 3 Evolution von TP-Monitoren zu Objekt-Monitoren Vergleich TP-Lite versus TP-Heavy Objektorientierung: Object Request Brokers (ORBs) OMs: Object Monitors Kap3-1 3.1 TP-Lite oder TP-Heavy? Aktive Diskussion
MehrDCOM und.net. B. Sc. Tobias Buchloh. Seminar Software-Entwurf Fachgebiet Software Engineering, Institut für Angewandte Informatik Universität Hannover
DCOM und.net B. Sc. Tobias Buchloh Seminar Software-Entwurf Fachgebiet Software Engineering, Institut für Angewandte Informatik Universität Hannover 2004-12-21 Gliederung Motivation Einordnung (D)COM.NET
MehrInhaltsverzeichnis. Teil I Grundlagen der Programmarchitektur... 1. Vorwort... XIII XV XVI XVI
Vorwort......................................................................... Vorwort der Autoren........................................................... Systemanforderungen für die CD zum Buch......................................
MehrMobile 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
MehrInternetanwendungstechnik (Ü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,
MehrPersistenz unter Kontrolle mit JDBI für Java
.consulting.solutions.partnership Persistenz unter Kontrolle mit JDBI für Java DOAG Konferenz 2016 17. November 2016 Persistenz unter Kontrolle mit JBDI für Java 1 2 3 SQL - effizienter Zugriff auf die
MehrTypsystem Plattform- und Sprachenunabhängigkeit in.net
Typsystem Plattform- und Sprachenunabhängigkeit in.net C# J# VB.NET Zwischencode CIL Windows Unix Auf welchen Grundlagen basiert dies? Komponenten & Frameworks Seite 1 Typsystem Grundlagen - CLR Common
MehrPraktikum 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
MehrH.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
MehrInformatik 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.
MehrEclipse 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
MehrClient/Server-Programmierung
lient/server-programmierung WS 2014/2015 etriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, üro: H- 8404 Stand: 15. Oktober 2015 etriebssysteme / verteilte Systeme
MehrOrganisatorisches. Folien (u.a.) gibt's auf der Lva-Homepage zum Download
Organisatorisches Folien (u.a.) gibt's auf der Lva-Homepage zum Download Diesen Mi erstes Tutorium (15-17) Ab nächster Woche montags 10-12 (jeweils im Computerraum) 17.10.2017 IT I - VO 3 1 Organisatorisches
MehrVererbung. Gerd Bohlender. Institut für Angewandte und Numerische Mathematik. Vorlesung: Einstieg in die Informatik mit Java 14.1.
Vererbung Gerd Bohlender Institut für Angewandte und Numerische Mathematik Vorlesung: Einstieg in die Informatik mit Java 14.1.08 G. Bohlender (IANM UNI Karlsruhe) Vererbung 14.1.08 1 / 11 Übersicht 1
MehrComponent Object Model. Detlef Streitferdt Technische Universität Ilmenau. TU-Ilmenau, Softwaresysteme / Prozessinformatik, KBSE Komponentenmodelle 1
Komponentenmodelle Component Object Model Detlef Streitferdt Technische Universität Ilmenau TU-Ilmenau, Softwaresysteme / Prozessinformatik, KBSE Komponentenmodelle 1 COM-Komponenten COM ist...... eine
MehrParallele und Verteilte Systeme
Parallele und Verteilte Systeme Einführung in die Netzwerk Programmierung mit Java : JavaIDL Hello World (C) J.M.Joller 1 Zeitlicher Ablauf Hello World Übersicht IDL Interface Beschreibung Der Client (Der
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
MehrKapitel 9. Programmierkurs. Attribute von Klassen, Methoden und Variablen. 9.1 Attribute von Klassen, Methoden und Variablen
Kapitel 9 Programmierkurs Birgit Engels Anna Schulze Zentrum für Angewandte Informatik Köln Objektorientierte Programmierung Attribute von Klassen, Methoden und Variablen Interfaces WS 07/08 1/ 18 2/ 18
MehrErzeugungsmuster. Kapselung der Objekt-Erzeugung
Erzeugungsmuster Kapselung der Objekt-Erzeugung Definition Erzeugungsmuster dienen für die Lose Koppelung, bei der erst zur Laufzeit der Typ des zu erzeugenden Objekts festgelegt wird. Abstract Factory
MehrUNIVERSITÄT LEIPZIG. Mainframe Internet Integration SS2013. Java Remote Method Invocation Teil 3 RMI over IIOP
UNIVERSITÄT LEIPZIG Mainframe Internet Integration Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013 Java Remote Method Invocation Teil 3 RMI over IIOP el0100 copyright Abt. Technische Informatik,
MehrFactory Method (Virtual Constructor)
Factory Method (Virtual Constructor) Zweck: Definition einer Schnittstelle für Objekterzeugung Anwendungsgebiete: Klasse neuer Objekte bei Objekterzeugung unbekannt Unterklassen sollen Klasse neuer Objekte
MehrSoftwareentwicklung mit Komponenten
Softwareentwicklung mit Komponenten Fachhochschule Gießen 20.10.1999 Dr. Burkhardt Renz Gliederung was sind unsere Ziele? Was ist eine Beispiele, Charakteristika, Technologien Wie funktioniert Ein konkretes
MehrCORBA. Eine kurze Einführung. Common Object Request Broker Architecture. Ying Lu
CORBA Common Object Request Broker Architecture Eine kurze Einführung Ying Lu Verlauf der Präsentation Was ist CORBA CORBA-Architektur Ein Beispiel CORBA im Einsatz CORBA im Vergleich Was ist CORBA Begriffe
MehrKapitel 13. Abstrakte Methoden und Interfaces. Fachgebiet Knowledge Engineering Prof. Dr. Johannes Fürnkranz
Kapitel 13 Abstrakte Methoden und Interfaces 13. Abstrakte Klassen und Interfaces 1. Abstrakte Klassen 2. Interfaces und Mehrfachvererbung Folie 12.2 Abstrakte Methoden und Klassen Manchmal macht es überhaupt
MehrEinstieg in die Informatik mit Java
1 / 35 Einstieg in die Informatik mit Java Vererbung Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 35 1 Grundlagen 2 Verdeckte Variablen 3 Verdeckte Methoden 4 Konstruktoren
MehrProgrammieren 2 Java Überblick
Programmieren 2 Java Überblick 1 Klassen und Objekte 2 Vererbung 4 Innere Klassen 5 Exceptions 6 Funktionsbibliothek 7 Datenstrukturen und Algorithmen 8 Ein-/Ausgabe 9 Graphische Benutzeroberflächen 10
MehrÜberblick. Class-Objekte. Bietet die Möglichkeit das Laufzeitverhalten von Applikationen zu analysieren und es gegebenenfalls sogar zu beeinflussen
Überblick Bietet die Möglichkeit das Laufzeitverhalten von Applikationen zu analysieren und es gegebenenfalls sogar zu beeinflussen Stubs & Skeletons Aufgabe 2 Tutorial: http://download.oracle.com/javase/tutorial/reflect/index.html
MehrÜberblick. Beispiel: get()-methodenaufruf am VSBoard aus Übungsaufgabe 1. Analyse einer Methode: java.lang.reflect.method
Überblick Bietet die Möglichkeit das Laufzeitverhalten von Applikationen zu analysieren und es gegebenenfalls sogar zu beeinflussen Stubs & Skeletons Aufgabe 2 Tutorial: http://docs.oracle.com/javase/tutorial/reflect/index.html
MehrEnterprise JavaBeans Überblick
Enterprise JavaBeans Überblick 1. Überblick Java EE 5 und Komponententechnologien 3. Enterprise JavaBeans Architektur 4. Ressourcen Management und Primäre Services 5. Java Persistence: Entity Manager 6.
MehrVergleich.Net und COM
Vergleich und COM Komponentenorientierte Programmierung und Interoperabilität Einleitung Komponentenmodelle der Firma Microsoft Unterschiedlich in Entstehung und technologischer Umsetzung : Schaffung eines
MehrKonzepte 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.
MehrKomponententechnologien 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
MehrEinstieg in die Informatik mit Java
1 / 25 Einstieg in die Informatik mit Java Objektorientierte Programmierung und Klassen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 25 1 Die Philosophie 2 Definition
MehrVorkurs Informatik WiSe 15/16
Java 7 Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 21.10.2015 Technische Universität Braunschweig, IPS Überblick OO in Java Vererbung Abstrakte Klassen und Interfaces 21.10.2015 Dr. Werner Struckmann
MehrProgrammierkurs Java
Programmierkurs Java Abstrakte Klassen und Methoden & Interfaces Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer #2 Vererbungshierarchie
MehrProjektgruppe. 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
MehrConnection Pooling. Was ist das?? Unter Connection Pooling versteht man generell die Wiederverwendung physischer Datenbankverbindungen.
Connection Pooling Was ist das?? Unter Connection Pooling versteht man generell die Wiederverwendung physischer Datenbankverbindungen. Wo wird es eingesetzt?? Connection Pooling wird vor allem in Verbindung
MehrEnterprise 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 6.
MehrObjektorientierte Datenbanken
OODB 8 Slide 1 Objektorientierte Datenbanken Vorlesung 8 Sebastian Iwanowski FH Wedel OODB 8 Slide 2 Offene Fragen vom letzten Mal: Kann man in einer JDOQL-Anfrage Elemente herausfiltern, deren Attribute
MehrKlassen als Objekte. Smalltalk vs. Objective-C. Self-Nachrichten an Klassen in Objective-C. Klassen als Objekte. Smalltalk: Everything is an object
Smalltalk vs. Objective-C Klassen als Objekte Klassendeklarationen Selektoren als first-class values Objekt-Erzeugung Implementierung: Eigene VM vs. Einbettung in C Smalltalk: Everything is an object Klassen
MehrEinführung in die Programmiersprache Java II
Einführung in die Programmiersprache Java II ??????????? UML OOP "Object oriented programming is bad" - professional retard 90s... UML Entwicklungsziele verschiedenen existierenden objektorienten Modellierungsmethoden
MehrEinführung in C# Teil 1. Matthias Nübling
Einführung in C# Teil 1 Matthias Nübling Vorausgesetzte Grundkenntnisse Programmierung Typen, Variablen, Anweisungen, Funktionen, etc. Objektorientierte Programmierung Klassen, Vererbung, Polymorphismus,
MehrEinstieg in die Informatik mit Java
1 / 41 Einstieg in die Informatik mit Java Vererbung Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 41 1 Überblick: Vererbung 2 Grundidee Vererbung 3 Verdeckte Variablen
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
MehrJava: Kapitel 1. Überblick. Programmentwicklung WS 2008/2009. Holger Röder Holger Röder
Java: Kapitel 1 Überblick Programmentwicklung WS 2008/2009 Holger Röder holger.roeder@informatik.uni-stuttgart.de Was ist Java? Die Java-Technologie umfasst die Programmiersprache Java sowie die Java-Plattform
MehrInhalt I. Blick in die Geschichte. .NET für kleine und grosse Applikationen
.NET für kleine und grosse Applikationen Ralf Günther Consultant HP Services April, 2003 Ralf.Guenther@hp.com DECUS Symposium 2003, Vortrag 1A05 Inhalt I. Blick in die Geschichte II. Was ist.net? III.
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
MehrCreational Patterns. Seminar Software-Entwurf. Thomas Liro WS 2004/05.
Creational Patterns Seminar Software-Entwurf WS 2004/05 Thomas Liro Inhaltsüberblick Einordnung des Themas Beschreibung von Design Pattern Auswahl von Design Patterns Was sind Creational
MehrProgrammiermethodik 3. Klausur Lösung
Programmiermethodik 3. Klausur Lösung 9. 1. 2014 Name Matrikelnummer Aufgabe mögliche Punkte erreichte Punkte 1 20 2 16 3 45 4 19 5 20 Gesamt 120 1 Seite 2 von 10 Aufgabe 1) Objekt-Orientierung und Vererbung
MehrVerteilte Systeme Übung
Verteilte Systeme Übung Tobias Distler, Klaus Stengel, Timo Hönig, Christopher Eibel, Tobias Klaus Friedrich-Alexander-Universität Erlangen-Nürnberg Lehrstuhl Informatik 4 (Verteilte Systeme und Betriebssysteme)
MehrDie Klasse Vertiefung
Die Klasse Vertiefung Vom Objekt zur Klasse Basis des OO-Paradigmas ist (wen verwundert es): Das Objekt Objekte werden in der Lehre und im allgemeinen Programmier-Jargon selbstverständlich mit Klassen
MehrJ2EE-Praktikum. Enterprise JavaBeans Patterns. Peter Thiemann. J2EE-Praktikum, WS2005/2006. Universität Freiburg
J2EE-Praktikum Enterprise JavaBeans Patterns Peter Thiemann Universität Freiburg J2EE-Praktikum, WS2005/2006 Inhalt 1 Designmuster Sitzungsfassade Wertobjekte 2 Implementierungsmuster Geschäftsinterfaces
MehrRemote-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.
MehrCORBA Lebensdauer von Objekten, Transaktionen MD 5/02
CORBA Lebensdauer von Objekten, Transaktionen Lebensdauer von Objekten in einem Programm...wird häufig von Programmiersprachen durch Sichtbarkeitsregeln gesteuert, z.b. in Java: void example() {... { String
MehrJava Beans (22.02.2001)
Component Based Software Development Java Beans (22.02.2001) Stefan Jäger Robert Kalcklösch Veranstalter: M. Bittner W. Koch Inhalt Einführung in Java Die Java Beans Einsatz und Entwicklung von Beans Enterprise
MehrEinführung Verteilte Systeme - Java Threads I -
Einführung Verteilte Systeme - Java Threads I - Prof. Dr. Michael Cebulla 20. November 2014 Fachhochschule Schmalkalden Wintersemester 2014/15 1 / 38 M. Cebulla Verteilte Systeme Gliederung Wiederholung:
MehrDie Magie von MBeans und JMX. DOAG 2014 Andreas Chatziantoniou - Foxglove-IT BV
Die Magie von MBeans und JMX DOAG 2014 Andreas Chatziantoniou - Foxglove-IT BV Bio Andreas Chatziantoniou Freelance Oracle Fusion Middleware Consultant 16 Jahre Oracle Erfahrung/26 Jahre IT (Unix/C) Oracle
MehrWebbasierte Informationssysteme
SS 2004 Prof. Dr. Stefan Böttcher Universität Paderborn - SS 2004 - Prof. Dr. Stefan Böttcher Folie 1 Was ist eine relationale Datenbank? Menge von Relationen (=Tabellen) und Constraints (=Integritätsbedingungen)
MehrOrganisatorisches. Folien (u.a.) auf der Lva-Homepage Skriptum über MU Online
Organisatorisches Folien (u.a.) auf der Lva-Homepage Skriptum über MU Online Nächste Woche VO und UE am Dienstag, den 30.10.! UE im CR IL/IT Wissensüberprüfung am Zettel 25.10.2018 IT I - VO 3 1 Organisatorisches
MehrDatenbank und Informationssysteme
Datenbank und Informationssysteme Inhaltsverzeichnis 1 Programmierung von Datenbankzugriffen 3 1.1 Architektur des SQL/CLI am Beispiel JDBC................... 4 1.2 Anfragen und Ergebnismengen in JDBC......................
MehrPraktische Informatik 1
Praktische Informatik 1 Imperative Programmierung und Objektorientierung Karsten Hölscher und Jan Peleska Wintersemester 2011/2012 Session 2 Programmierung Begriffe C/C++ Compiler: übersetzt Quellcode
MehrKomponentenmodelle II
Komponentenmodelle II DCOM / CORBA Detlef Streitferdt Technische Universität Ilmenau DCOM Architektur Client Proxy Stub Component CoCreateInstance Security Provider DCE RPC Protocol Stack Security Provider
Mehr