Sie sind hier
E-Book

JBoss Seam

Die Web-Beans-Implementierung

AutorBernd Müller
VerlagCarl Hanser Fachbuchverlag
Erscheinungsjahr2008
Seitenanzahl283 Seiten
ISBN9783446414150
FormatPDF
KopierschutzWasserzeichen/DRM
GerätePC/MAC/eReader/Tablet
Preis27,99 EUR

Bernd Müller
JBoss Seam
Die Web-Beans-Implementierung
JavaEE INNOVATIV UND AGIL MIT JBOSS SEAM


- Lernen Sie die grundlegenden Konzepte und Komponenten von Seam kennen.

- Erfahren Sie, wie Sie Seam erfolgreich in der Praxis nutzen.

- Mit einer umfassenden Beispielanwendung (Online-Banking), Projekten und zahlreichen Praxistipps.

- Im Internet: Der Sourcecode der Beispielanwendung und der Projekte des Buches unter www.webbeans.eu

Seam, das innovative und agile Framework im Bereich von JavaEE, integriert JavaServer Faces, Enterprise JavaBeans und Java Persistence-API und macht viele Konfigurations- und Codierungsarbeiten überflüssig. Zusätzlich integriert Seam Frameworks wie jBPM, JBoss-Rules, AJAX und iText. So können Sie Webapplikationen deutlich schneller und einfacher entwickeln und bauen gleichzeitig auf eine skalierbare und standardisierte Java-EE-Architektur auf.

Dieses Arbeitsbuch führt Sie in die Funktionsweise von Seam ein. Sie lernen die wichtigsten Konzepte und Komponenten im Detail kennen. Dazu zählen lang laufende Transaktionen, Authentifizierung und Autorisierung, PDF-Erzeugung, Geschäftsprozesse, AJAX und das Generieren und Testen von Seam-Anwendungen. Eine umfassende Beispielanwendung (Online-Banking), Projekte und Praxistipps unterstützen Sie bei der Umsetzung des Gelernten in Ihren Projekten.

Aus dem Inhalt:

- Einleitung
- Seam als modernes Komponenten
- Framework
- Zustände, Konversationen, Transaktionen
- Innovative Komponenten
- Geschäftsprozesse und Pageflows mit jBPM
- AJAX und Remoting
- Seam-Konfiguration, Java-EE und Werkzeuge

Der Autor
Prof. Dr. Bernd Müller unterrichtet Software-Technik im Fachbereich Informatik an der FH Braunschweig/Wolfenbüttel und ist Autor von Fachbüchern und zahlreichen Veröffentlichungen in Fachzeitschriften und auf Konferenzen.

Kaufen Sie hier:

Horizontale Tabs

Leseprobe

Kapitel 5 Geschäftsprozesse und Pageflows mit jBPM (S. 136-137)

Die software-technische Unterstützung von Geschäftsprozessen (Business-Processes) ist ein gegenwärtig aktuelles Thema. Insbesondere im Bereich der service-orientierten Architekturen (SOA) ist BPEL (Business Process Execution Language) relativ weit verbreitet, da die Sprache von IBM, Microsoft, BEA, SAP und weiteren Firmen unterstützt wird. Mittlerweile ist BPEL durch OASIS als WS-BPEL (Web-Service-BPEL) in Version 2.0 standardisiert. JBoss bietet mit jBPM (Java Business Process Management) eine Alternative zur Unterstützung und Realisierung von Geschäftsprozessen an. Neben Geschäftsprozessen können auch sogenannte Pageflows (Seitenfolgen, Dialogfolgen) definiert werden. jBPM ist als separates Framework in Java-SE- und Java-EE-Anwendungen einsetzbar. Die Integration in Seam erfolgte nahtlos und ermöglicht die einfache Kombination von Seam-Komponenten, Oberfläche und Datenbank mit jBPM.

Die beiden Verwendungsarten von jBPM in Seam, zum einen die Möglichkeit der Definition von Geschäftsprozessen, zum anderen die Möglichkeit der Defi- nition von Pageflows innerhalb komplexer Benutzerinteraktionen, sind deutlich zu unterscheiden. Da dieModellierung und dasManagement von Geschäftsprozessen deutlich komplexer als die Definition von Pageflows und wahrscheinlich den meisten Lesern weniger geläufig ist, widmen wir die nächsten Abschnitte der Realisierung von Geschäftsprozessen und gehen erst in Abschnitt 5.4 auf Pageflows ein.

Wie alle JBoss-Systeme kann auch jBPM[URL-JBPM] als Open-Source-System in kommerziellen Projekten verwendet werden.

5.1 Geschäftsprozesse und das jBPM-Framework

Unter einem Geschäftsprozess wird im Allgemeinen eine Menge von automatisierten, teilautomatisierten, aber auch manuellen betrieblichen Aktivitäten verstanden, die der Umsetzung der Unternehmensziele und der Sicherung des Unternehmenserfolgs dienen [LWS06, SH04, RS03]. Die einzelnen Aktivitäten werden von verschiedenen Akteuren durchgeführt und sind in ihrer Abfolge zwar festgelegt, aber beliebig unterbrechbar und später weiter fortführbar. Sie unterscheiden sich daher in ihrer technischen Implementierung prinzipiell von Anwendungsfällen (Use-Cases), die meist von einem Akteur in einer Sitzung durchgeführt werden. Die in den vorangegangenen Kapiteln eingeführten Konzepte wie z. B. Zustände, Konversationen, Authentifizierung und Autorisierung bezogen sich auf die Implementierung einzelner Anwendungsf älle. Die Realisierung von Geschäftsprozessen auf Basis dieser Konzepte zieht einen erheblichen Implementierungsmehraufwand nach sich, so dass Aktivitäten zur Realisierung der benötigten Infrastruktur für die Modellierung und Implementierung von Geschäftsprozessen entstanden sind. Das Ergebnis der JBoss-Aktivitäten auf diesem Gebiet ist das jBPM-Framework.

Geschäftsprozesse sind durch mehrere Aufgaben (Tasks) charakterisiert, die von verschiedenen Akteuren zu unterschiedlichen Zeiten durchgeführt werden. Der Abschluss einer Task durch einen Benutzer kann Vorbedingung für den Beginn einer oder mehrerer anderer Tasks anderer Benutzer sein. Ein BPMSystem muss die einzelnen Zustände (Abschluss von Task A durch Benutzer X) kennen und Abhängigkeiten (Task B kann durch Benutzer Y erst begonnen werden, wenn Task A abgeschlossen wurde) kontrollieren bzw. den Geschäftsprozess basierend auf diesen Abhängigkeitsregeln steuern. In einer Task erzeugte Daten müssen evtl. in einer anderen Task verfügbar sein, auch nach einem Neustart des Servers. Das BPM-System muss daher eine Möglichkeit haben, die einzelnen Tasks, deren Abhängigkeiten sowie Kontrollflüsse inklusive Verzweigungen zu spezifizieren und den Zustand des Prozesses persistent zu verwalten. Das jBPM-Framework verwendet als Spezifikationssprache den XML-Dialekt jPDL (jBPM Process Definition Language). Die Sprache jPDL ist in Abschnitt 18.4 des jBPM-Benutzerhandbuchs [URL-JBPMREF] beschrieben. Wir werden jPDL hier nur so weit einführen, wie wir es für unsere Beispiele benötigen. Für detailliertere Ausführungen verweisen wir auf das jBPM-Benutzerhandbuch [URL-JBPMREF] und auf das im Augenblick einzige Buch zu jBPM, das Buch von Cumberlidge [Cum07].

Inhaltsverzeichnis
Inhaltsverzeichnis6
Vorwort10
Einleitung12
Evolution in der Software-Entwicklung12
JavaServer-Faces mit Hibernate versus Seam14
Innovative Konzepte und Komponenten14
Zielsetzung und Aufbau dieses Buches16
Der Leser und die Sprache dieses Buches18
Seam als modernes Komponenten-Framework20
JSF und Facelets22
EJBs und JPA28
Seam-Komponenten31
Das Anwendungsbeispiel33
Zustände, Konversationen, Transaktionen50
Die gute alte Session53
Konversationen63
Programmierung mit Kontexten71
Konversationen im Detail76
Codierung von Konversationsinformationen78
Geschachtelte Konversationen79
Transaktionen80
Lang laufende Transaktionen81
Optimistisches Sperren88
Explizite Rollbacks90
Lesezeichen94
Innovative Komponenten100
Authentifizierung und Autorisierung100
Grundlagen100
Autorisierter Zugriff auf Web-Seiten104
Autorisierter Zugriff auf Komponenten109
Regelbasierte Zugriffsrechte111
PDF-Erzeugung116
Erzeugung von E-Mails119
Dies und das126
Behandlung von Exceptions und die Debug-Seite126
EL-Erweiterungen130
Captcha133
Anklickbare Tabellenzeilen135
Hochladen von Dateien142
Geschäftsprozesse und Pageflows mit jBPM146
Geschäftsprozesse und das jBPM-Framework147
Rollenbasierte Bearbeitung von Prozessen156
Verwendung von Entities162
Pageflows167
Konfiguration173
jBPM-Konfiguration173
Pageflow-Konfiguration175
AJAX und Remoting178
Hello-World mit Remoting179
Das Remoting-API im Überblick181
Remoting mit Entity-Zugriff182
Remoting-Konfiguration185
Das Seam-Beispiel Progress-Bar187
Auto-Vervollständigung mit ICEfaces191
Der ICEfaces-Showcase196
Seam-Konfiguration, Java-EE und Werkzeuge200
Packaging und Konfiguration von Seam-Anwendungen200
JBoss-AS202
JBoss-IDE, Hibernate-Tools, Developer-Studio205
Seam-Gen209
Konfiguration209
Projektgenerierung212
Verwendung von Eclipse214
Generieren von Session- und Entity-Beans216
Generierung einer einfachen CRUD-Anwendung219
Testen von Seam-Anwendungen223
Grundlagen223
Zugriff auf die Datenbank226
Oberfläche und JSF228
Vereinfachungen mit JSF-EL231
Konfiguration232
Tag-Referenz234
Annotationen-Referenz242
Komponentendefinition242
Bijection245
Lebenszyklus247
Kontextabgrenzung248
Transaktionen251
Exceptions252
Remoting252
Datentabellen253
Validierung254
Komponenten-Referenz258
Facelets-Referenz262
Beispielprojekte266
Allgemeine Projektstruktur266
Projektbesonderheiten266
Bibliotheksprojekte266
Geschäftsprozesse und Pageflows267
Testen im Projekt Online-Banking268
Hibernate-Tools im Projekt Online-Banking268
URL-Verzeichnis270
Literaturverzeichnis274
Sachverzeichnis276

Weitere E-Books zum Thema: Programmiersprachen - Softwareentwicklung

ASP.NET Shortcut

E-Book ASP.NET Shortcut
Format: PDF

Shortcut-Tipps für ASP.NET-Profis Die neue .NET-Version der Active Server Pages stellt eine Umgebung zur Entwicklung von Web-Applikationen im .NET-Framework bereit. Viele aus der Desktop-…

ASP.NET Shortcut

E-Book ASP.NET Shortcut
Format: PDF

Shortcut-Tipps für ASP.NET-Profis Die neue .NET-Version der Active Server Pages stellt eine Umgebung zur Entwicklung von Web-Applikationen im .NET-Framework bereit. Viele aus der Desktop-…

ASP.NET Shortcut

E-Book ASP.NET Shortcut
Format: PDF

Shortcut-Tipps für ASP.NET-Profis Die neue .NET-Version der Active Server Pages stellt eine Umgebung zur Entwicklung von Web-Applikationen im .NET-Framework bereit. Viele aus der Desktop-…

Programmieren lernen in PHP 5

E-Book Programmieren lernen in PHP 5
Format: PDF

Mit der Version 5 erreicht PHP einen bemerkenswerten Reifegrad, der PHP zu einer festen Größe in der Welt der Webprogrammierung macht. Gerade die leichte Erlernbarkeit macht PHP zur idealen…

Mathematik für Informatiker

E-Book Mathematik für Informatiker
Format: PDF

Die Informatik entwickelt sich in einer unglaublichen Geschwindigkeit. Häufig ist die Mathematik Grundlage von Neuerungen. Deshalb ist sie unverzichtbares Werkzeug jedes Informatikers und Pflichtfach…

Mathematik für Informatiker

E-Book Mathematik für Informatiker
Format: PDF

Die Informatik entwickelt sich in einer unglaublichen Geschwindigkeit. Häufig ist die Mathematik Grundlage von Neuerungen. Deshalb ist sie unverzichtbares Werkzeug jedes Informatikers und Pflichtfach…

Mathematik für Informatiker

E-Book Mathematik für Informatiker
Format: PDF

Die Informatik entwickelt sich in einer unglaublichen Geschwindigkeit. Häufig ist die Mathematik Grundlage von Neuerungen. Deshalb ist sie unverzichtbares Werkzeug jedes Informatikers und Pflichtfach…

Weitere Zeitschriften

arznei-telegramm

arznei-telegramm

Das arznei-telegramm® informiert bereits im 53. Jahrgang Ärzte, Apotheker und andere Heilberufe über Nutzen und Risiken von Arzneimitteln. Das arznei-telegramm®  ist neutral und ...

Berufsstart Bewerbung

Berufsstart Bewerbung

»Berufsstart Bewerbung« erscheint jährlich zum Wintersemester im November mit einer Auflage von 50.000 Exemplaren und ermöglicht Unternehmen sich bei Studenten und Absolventen mit einer ...

cards Karten cartes

cards Karten cartes

Die führende Zeitschrift für Zahlungsverkehr und Payments – international und branchenübergreifend, erscheint seit 1990 monatlich (viermal als Fachmagazin, achtmal als ...

crescendo

crescendo

Die Zeitschrift für Blas- und Spielleutemusik in NRW - Informationen aus dem Volksmusikerbund NRW - Berichte aus 23 Kreisverbänden mit über 1000 Blasorchestern, Spielmanns- und Fanfarenzügen - ...

Der Steuerzahler

Der Steuerzahler

Der Steuerzahler ist das monatliche Wirtschafts- und Mitgliedermagazin des Bundes der Steuerzahler und erreicht mit fast 230.000 Abonnenten einen weitesten Leserkreis von 1 ...