Diplomarbeit, 2004
165 Seiten, Note: 1.1
1. Einleitung
1.1. Thematik und Aufbau der Arbeit
1.2. Motivation
1.3. Aufgabenstellung
2. Theoretische Grundlagen
2.1. Einführung in plattformunabhängige Programmierung
2.1.1. Die Java-Plattform
2.1.2. XML als plattformunabhängiges Datenformat
2.1.3. SQL, die Standard-Datenbank-Anfragesprache
2.2. Verteilte Anwendungen
2.2.1. Komponenten
2.2.2. Komponentenmodelle in Java
2.2.3. Alternative Komponentenmodelle
2.2.4. Vergleich der Komponentenmodelle
2.3. Softwareentwicklung für komponentenbasierte Systeme
2.3.1. Komponenten-Engineering
2.3.2. UML als Standard zur Modellierung des Entwicklungsprozesses
3. Enterprise JavaBeans
3.1. Rollenmodell bei J2EE
3.1.1. Enterprise Bean-Provider
3.1.2. Application Assembler
3.1.3. Deployer
3.1.4. EJB-Server-Provider
3.1.5. EJB-Container-Provider
3.1.6. System-Administrator
3.2. Architektur der Enterprise JavaBeans
3.2.1. J2EE-Server
3.2.2. EJB-Container
3.2.3. Programmierrestriktionen bei EJB
3.3. Enity Beans
3.3.1. Aufbau einer Entity Bean
3.3.2. Bean Managed Persistence
3.3.3. Container Managed Persistence
3.3.4. Container Managed Relations
3.3.5. Client-Sicht
3.3.6. Alternativen für persistente Objekte
3.4. Session Beans
3.4.1. Stateless Session Beans
3.4.2. Stateful Session Beans
3.4.3. Client-Sicht
3.5. Message-Driven Beans
3.6. Transaktionen
4. JBoss Application Server
4.1. Architektur des JBoss
4.1.1. Java Management Extension
4.1.2. Aufbau des JBoss-Kerns
4.1.3. JBoss Interceptor-Architektur
4.2. Deployment
4.2.1. JBoss Classloading
4.2.2. JBoss Deployment-Komponenten
4.2.3. Hot-Deployment
4.2.4. Vorgang des Deployments
4.2.5. Clustering
4.2.6. Cluster-Architektur des JBoss
4.3. EJB-Container
4.4. Webserver
4.5. JBoss-Konfiguration
4.5.1. JBoss-Standard-Konfigurationen
4.5.2. JBoss-spezifische Deployment-Deskriptoren
4.5.3. Konfiguration für HTTPS-Verbindungen
4.6. JBoss Version 4.0
4.6.1. AOP
4.7. Werkzeuge für den JBoss Application Server
4.7.1. Ant
4.7.2. XDoclet
4.7.3. Entwickler-Werkzeuge für die JBoss-Plattform
4.7.4. Integrierte Entwicklungsumgebungen
4.8. Vergleich zwischen J2EE-Application-Servern
4.8.1. JOnAS
4.8.2. Oracle 10g und Orion Application Server
4.8.3. BEA WebLogic 8.1
4.8.4. IBM WebSphere
4.9. Fazit
5. Referenz-Anwendung
5.1. Zielsetzung
5.2. Anwendungsfälle - UML
5.3. Aufbau, Architektur und Entwurfsmuster
5.3.1. Multitier-Anwendung
5.3.2. Entwurfsmuster: MVC 2 - Web
5.3.3. Entwurfsmuster: Session-Fassade
5.3.4. Entwurfsmuster: DTO Data Transfer Object
5.3.5. Entwurfsmuster: UUID
5.4. Backend der Anwendung
5.4.1. Datenmodell
5.5. Web-Anwendung
5.5.1. Aufbau und Architektur der Anwendung
5.5.2. Web-Benutzer-Interface
5.5.3. Konfiguration der Anwendung
5.6. Administrator-Anwendung
5.6.1. Architektur der Administrator-Anwendung
5.6.2. Verbindung mit JBoss
5.7. WAP-Frontend
6. Zusammenfassung und Ausblick
6.1. Zukunftsprognose
6.2. Einsatzmöglichkeiten der entwickelten Anwendung
6.2.1. Notwendige Erweiterungen für einen produktiven Einsatz
6.2.2. Die Anwendung als Beispiel zur Erstellung von J2EE Applikationen
6.3. Fazit
A. Anhang
A.1. Servlet und JavaServer Pages
A.1.1. Servlets
A.1.2. JavaServer Pages
A.2. Deployment
A.3. JBoss Management Konsole
A.4. Datenmodell der Referenzanwendung
A.5. Konfiguration der Web-Anwendung
A.6. Inhalt der CD
Die Arbeit befasst sich mit der Entwicklung einer Referenzimplementierung auf Basis des JBoss Application Servers unter Verwendung der Java 2 Enterprise Edition (J2EE). Das Ziel ist es, dem Leser ein grundlegendes Verständnis für die Erstellung von J2EE-Anwendungen zu vermitteln, etablierte Entwurfsmuster für komponentenbasierte Systeme vorzustellen und den JBoss Application Server einer detaillierten sowie kritischen Untersuchung zu unterziehen, einschließlich seiner Konfiguration und Markteinordnung.
3.3.1. Aufbau einer Entity Bean
Eine Entity Bean besteht aus zwei oder vier Interfaces (je zwei Local- und/oder Remote-Interfaces) und einer Bean-Klasse. Die Bean-Klasse definiert alle Attribute, Methoden und Beziehungen (vgl. Kapitel 3.3.4) einer Entität.
Dabei wird ein Attribut oder eine Reihe von Attributen als Primärschlüssel benutzt. Über diesen Primärschlüssel werden die Geschäfts-Entitäten einer Anwendung eindeutig unterscheidbar, weshalb er auch zum Auffinden der Entitäten benutzt wird (vgl. 3.3). Der Primärschlüssel muss ein Objekt einer serialisierbaren Klasse sein, um den Anforderungen von RMI-IIOP zu entsprechen. Bei nicht zusammengesetzten Primärschlüsseln bieten sich daher Klassen wie String oder Integer an.
Die Methoden der Bean-Klasse bieten Zugriff auf deren Daten und ermöglichen einfache Manipulationen. Die Beziehungen definieren die Abhängigkeiten zwischen verschiedenen Entity Beans.
Jede Entity Bean-Klasse implementiert die Callback-Methoden des Interface javax.ejb.EntityBean. Diese werden vom EJB-Container benutzt um die Instanz der EB zu überwachen und zu steuern. Die Callbackmethoden werden immer ausgeführt, wenn der Container in den Lebenszyklus der Bean eingreift. Das gibt dem Programmierer die Möglichkeit bestimmte Aktionen vor einem Zustandswechsel auszuführen. Sinnvoll ist es z.B. in manchen Umgebungen, das Löschen oder Erzeugen von Entitäten zu protokollieren. Bei BMP-Entity Beans werden die Callbackmethoden mit der Funktionalität für die Persistenz der Komponenten ausimplementiert.
1. Einleitung: Diese Einleitung führt in das Thema der Vernetzung von Unternehmensanwendungen ein und definiert das Ziel der Arbeit, eine Evaluation des JBoss Application Servers durchzuführen und eine Referenzanwendung auf J2EE-Basis zu erstellen.
2. Theoretische Grundlagen: Dieses Kapitel erläutert die Basis-Technologien wie Java, XML und SQL sowie die Konzepte verteilter Anwendungen und die Softwareentwicklung für komponentenbasierte Systeme unter Verwendung der UML.
3. Enterprise JavaBeans: Hier wird das EJB-Komponentenmodell detailliert beschrieben, einschließlich des Rollenmodells, der Architektur, der verschiedenen Beantypen (Entity, Session, Message-Driven Beans) und Transaktionsmechanismen.
4. JBoss Application Server: Dieses Kapitel untersucht die Architektur des JBoss, insbesondere den Micro-Kernel-Ansatz, das Deployment-Konzept, Clustering-Möglichkeiten und Vergleichsstudien zu anderen J2EE-Servern.
5. Referenz-Anwendung: Dieser Abschnitt beschreibt die praktische Implementierung des Projektmanagement-Prototyps, erläutert die Anwendung von Entwurfsmustern (MVC 2, Session-Fassade, DTO, UUID) und die Konfiguration der Anwendung im JBoss.
6. Zusammenfassung und Ausblick: Hier werden die Ergebnisse evaluiert, eine Zukunftsprognose für J2EE-Server gegeben und die Einsatzmöglichkeiten der entwickelten Anwendung für produktive Szenarien diskutiert.
JBoss Application Server, J2EE, Enterprise JavaBeans, EJB, Java, XML, Deployment, Clustering, MVC, Session-Fassade, Data Transfer Object, DTO, Transaktionsverwaltung, SQL, Softwareentwicklung.
Die Arbeit beschäftigt sich mit der Implementierung einer Referenzanwendung für den JBoss Application Server auf Basis der Java 2 Enterprise Edition.
Die Arbeit umfasst theoretische Grundlagen verteilter Systeme, die Enterprise JavaBeans-Technologie, die Architektur des JBoss Application Servers sowie die praktische Anwendung von Entwurfsmustern.
Das Ziel ist die Evaluation des JBoss Application Servers und die Vermittlung eines Verständnisses für das Erstellen von Anwendungssoftware auf J2EE-Basis durch eine Referenzimplementierung.
Die Arbeit nutzt die Literaturrecherche zur theoretischen Fundierung sowie die Methoden der objektorientierten Softwareentwicklung und Modellierung mittels UML für die Erstellung der Referenzanwendung.
Der Hauptteil gliedert sich in eine detaillierte Erläuterung der Enterprise JavaBeans-Architektur und eine tiefgehende Analyse des JBoss Application Servers, inklusive Deployment, Clustering und Konfiguration.
Zu den prägenden Begriffen gehören JBoss, J2EE, Enterprise JavaBeans, Deployment, Clustering, MVC und Entwurfsmuster.
JBoss wurde gewählt, da es sich um einen Open-Source-Server handelt, der durch seine große Entwicklergemeinde eine schnelle Weiterentwicklung erfährt und sowohl für kleine als auch für große Unternehmen eine interessante, kosteneffiziente Alternative zu kommerziellen Servern darstellt.
Entwurfsmuster wie MVC 2, die Session-Fassade und DTOs werden eingesetzt, um die Software modularer, skalierbarer und wartbarer zu gestalten sowie die Performance durch reduzierte Netzwerkzugriffe zu verbessern.
Der GRIN Verlag hat sich seit 1998 auf die Veröffentlichung akademischer eBooks und Bücher spezialisiert. Der GRIN Verlag steht damit als erstes Unternehmen für User Generated Quality Content. Die Verlagsseiten GRIN.com, Hausarbeiten.de und Diplomarbeiten24 bieten für Hochschullehrer, Absolventen und Studenten die ideale Plattform, wissenschaftliche Texte wie Hausarbeiten, Referate, Bachelorarbeiten, Masterarbeiten, Diplomarbeiten, Dissertationen und wissenschaftliche Aufsätze einem breiten Publikum zu präsentieren.
Kostenfreie Veröffentlichung: Hausarbeit, Bachelorarbeit, Diplomarbeit, Dissertation, Masterarbeit, Interpretation oder Referat jetzt veröffentlichen!

