Java Enterprise Edition (Java EE)

Größe: px
Ab Seite anzeigen:

Download "Java Enterprise Edition (Java EE)"

Transkript

1 Java Enterprise Edition (Java EE) Eine Einführung

2 Java Enterprise Editon Java EE platform API and runtime environment for developing and running enterprise applications and services large-scale multi-tiered scalable reliable secure distributed network applications designed to reduce the complexity of enterprise application development, providing a development model APIs for standard system services runtime environment allows developers to concentrate on business and presentation logic 2

3 Java EE platform uses a distributed multitiered application model for enterprise applications Application logic is divided into components according to function Components are grouped in a stack of tiers Components are potentially installed on various machines Typically Presentation: client and web tier Business tier Persistent data tier Distributed Multitiered Applications 3

4 Genau genommen: Spezifikation einer Softwarearchitektur für Enterprise Java- Anwendungen von Sun jetzt Oracle In der Praxis aber auch: Spring, Tomcat, Hibernate Spezifiziert werden Komponenten und Dienste Aktuelle Version: JEE 6 JEE 5/6 vereinfacht die Entwicklung enorm gegenüber J2EE (1.4) aus 2003 Wesentlicher Unterschied: Menge der zu erstellenden Artefakte (Schnittstellen, Deployment-Deskriptoren, Implementierungsvorschriften für Callback-Methoden) Java EE 4

5 Standardisierung Skalierbarkeit Interoperabilität Warum JEE? 5

6 Java-EE-Komponenten erfordern als Laufzeitumgebung eine spezielle Infrastruktur, den Java EE Applicationserver Dieser Server stellt verschiedene technische Funktionalitäten bereit Security Transaktionsmanagement Namens- und Verzeichnisdienste Skalierung Kommunikation zwischen Java-EE-Komponenten Management der Komponenten über den gesamten Lebenszyklus (inklusive Instanziierung) Unterstützung für die Installation (Deployment) und den Betrieb von Anwendungen Applicationserver 6

7 Applicationserver Open Source Server Apache Geronimo JBoss Application Server GlassFish... Alternativen Spring-Framework Tomcat WebContainer... Proprietäre Server IBM WebSphere Oracle Application Server Oracle WebLogic Server SAP NetWeaver Application Server... 7

8 Insgesamt 23 Die wichtigsten Spezifikationen innerhalb von JEE: EJB (Enterprise Java Beans) JMS (Java Message Service) JTA (Java Transaction API) JPA (Java Persistence API) CDI (Context and Dependency Injection) JNDI (Java Naming and Directory Interface) JAAS (Java Authentication and Authorization) Wichtige Subspezifikationen 8

9 Applikationsserver 9

10 Applicationserver Ein Java-EE-Server wird in diverse logische Komponenten unterteilt: Web-Container Laufzeitumgebung für Servlets und JavaServer Pages (JSP) Bereitstellung von verschiedenen Diensten für Servlets EJB-Container Laufzeitumgebung für Enterprise Java Beans Überwachung des Lebenszyklus von EJBs Instanzen-Pooling Bereitstellung von verschiedenen Diensten für EJBs (Namens- und Verzeichnisdienst, Transaktionsdienst, Nachrichtendienstes Persistenz JCA-Container (JEE Connector Architecture) Laufzeitumgebung Anbindung heterogener Fremdarchitekturen 10

11 Presentation Tier (Web Tier) JSF Pages (Java Server Faces) JSF Backing Beans Business Tier Enterprise Beans JTA (Java Transaction API) Persistence Tier Entity Beans JPA (Java Persistence API) Aufbau einer Anwendung 11

12 Einordnung der APIs 12 JSP JSF XSL EJB Webservices JPA Darstellungs- schicht Logik & Kommunikation Datenhaltungs- schicht JNDI JMS JTA XML Servlets JMX

13 JavaServer Pages (JSP) Framework für Webapplikationen basiert auf aus JSPs generierten Servlets Java Server Faces (JSF) Framework für Webapplikationen Alternative zu JSP Java Servlet API Erlaubt die Erweiterung von Servern, deren Protokoll auf Anfragen und Antworten basiert JavaEE-APIs 13

14 Java Transaction API (JTA) Schnittstelle zur standardisierten Kontrolle von Transaktionen Java Persistence API (JPA) Schnittstelle zur vereinfachten Zuordnung und Übertragung von Java- Objekten zu Datenbankeinträgen Java Naming and Directory Interface (JNDI) Schnittstelle mit der alle Java Klassen auf Namens- und Verzeichnisdienste zugreifen können über JNDI wird insbesondere der Zugriff auf Java-EE-Komponenten sichergestellt JavaEE-APIs 14

15 Java Message Service (JMS) API zur asynchronen Nachrichtenverarbeitung Java Connector Architecture (JCA) dient der transparenten Integration von externen Systemen Java Management Extensions (JMX) dient der Verwaltung von Java-EE Komponenten Webservice, JAAS, JavaMail, StAX, JavaEE-APIs 15

16 Deployment als EAR (EnterpriseArchive) Deployment einer Anwendung META-INF/ -- application.xml -- MANIFEST.MF -- <Library JAR files> -- <EJB Module JAR files> -- <Web Module WAR files> -- <ResourceAdapter RAR files>

17 Aufbau einer Anwendung am Beispiel Schnelldurchlauf von oben nach unten

18 Umgebung Datenbank MySQL Application Server Glassfish (Referenzimplementierung, besser nicht für produktiven Einsatz) Datenbank MySQL XAMPP-Paket: XAMPP installieren laut Anleitung XAMPP Control zum starten/stoppen von MySQL und Apache (für phpmyadmin) phpmyadmin: Benutzer (hier jee ) mit Datenbank anlegen Demoumgebung 18

19 Applicationserver GlassFish Download kommerziell: Open Source: https://glassfish.java.net/de/ Installation Kurzanleitung: Doku: View Library Installation Guide / Quick Start Guide Schritte MySQL JDBC-Treiber installieren (jar in GlassFish-lib-Verzeichnis) GlassFish starten (siehe JEE- Eclipse) GlassFish JDBC Connection Pool einrichten GlassFish JDBC DataSource unter JNDI-Namen einrichten Demoumgebung 19

20 JEE-Eclipse Download: Eclipse IDE for Java EE Server in Eclipse einrichten Servers View New Server GlassFish (ggf. vorher Download additional server adapters) Kontextmenü auf Server Start, Stop, AdminConsole (i.d.r. localhost:4848) JEE-Project New Other... Web Dynamic Web Project Target runtime: GlassFish Demoumgebung 20

21 Java Server Faces (JSF 2.0) Eine Einführung

22 Presentation Tier (Web Tier) JSF Pages (Java Server Faces) JSF Backing Beans Aufbau einer Anwendung 22

23 Java Server Faces 2.0 JSF: Framework für Web-Anwendungen in JavaEE Trennung von Darstellungsschicht und Programmlogik nach MVC-Pattern Facelet XHTML-Template <html>! <h:body>! <h2>customer with id! "#{bankingbean.customerid}! </h2>! <h:inputtext value=! "#{bankingbean.name} />! <h:commandbutton! value="speichern! action="#{personformular.! speichern}"/>! </h:body>! </html>! View Backing Bean POJO getattr() setattr(...) action() Controller Model 23

24 Backing Beans (einfache Java-Klassen) Zugriff auf Daten durch get- und set- Methoden Aktions-Methoden, die z.b beim Klick auf einen Button ausgeführt werden JSF lädt diese Beans bei Bedarf automatisch in den Speicher Facelets Template-Engine zwischen Backing Beans und Web-Browser erzeugt Webseiten auf der Grundlage von Vorlagen (Facelets), die mit Daten aus den Beans befüllt werden Java Klassen enthalten kein HTML, Facelets enthalten kein Java-Code Trennung von Java-Programmierung von HTML-Entwicklung Facelets und Backing Beans 24

25 Templates für Webseiten (typischerweise Endung.xhtml) enthalten HTML + Ausdrücke aus der Expression Language + JSF Tags Expression Language Ausdrücke #{user.name}!#{geld.eingang - geld.ausgang}! #{auto.farbe!= rot} JSF-Tags Kontrollstrukturen <ui:fragment rendered="#{user.alter > 12} >!!! Du bist alt genug!! </ui:fragment>!! <ui:repeat var="auto" value="#{meinbean.alleautos}">!!! Das Auto #{auto.name} ist #{auto.farbe}.!! </ui:repeat> Facelets 25

26 Facelets JSF-Tags HTML-(Formular-)Elemente! <h:form>!!! <h:inputtext value="#{personformular.name} />!!! <h:commandbutton value="speichern!!!!! action="#{personformular.speichern}"/>!! </h:form> Bestimmung des Page-Flows Facelet-Name als Rückgabewert der Aktions-Methoden (ohne Endung.xhtml)! public String speichern() {!!!... Aufruf Geschäftslogik...!!! return gespeichert ;!! }! ruft Facelet gespeichet.xhml auf 26

27 Zusammenspiel mit Backing Bean 27

28 Grundkonfiguration WebContent/WEB-INF/web.xml (sun-web.xml brauchen wir hier nicht) JSF ist ein Aufsatz auf die Servlet API, d.h. Faces-Servlet konfigurieren <?xml version="1.0" encoding="utf-8"?>! <web-app xmlns:xsi=http://www.w3.org/2001/xmlschema-instance! xmlns=http://java.sun.com/xml/ns/javaee! xmlns:web=http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd! xsi:schemalocation="http://java.sun.com/xml/ns/javaee! id="webapp_id" version="3.0">! <display-name>webapp Name</display-name>! <welcome-file-list>! <welcome-file>index.xhtml</welcome-file>! </welcome-file-list>! <servlet>! <servlet-name>faces Servlet</servlet-name>! <servlet-class>javax.faces.webapp.facesservlet</servlet-class>! <load-on-startup>1</load-on-startup>! </servlet>! <servlet-mapping>! <servlet-name>faces Servlet</servlet-name>! <url-pattern>*.xhtml</url-pattern>! </servlet-mapping>! </web-app>! 28

29 WebContent/WEB-INF/faces-config.xml Überbleibsel von JSF 1.0 Konfiguration bei JSF 2.0 weitgehend über Annotationen d.h. entfällt i.d.r. oder leer Grundkonfiguration 29 <?xml version="1.0" encoding="utf-8"?>! <faces-config! xmlns="http://java.sun.com/xml/ns/javaee"! xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"! xsi:schemalocation="http://java.sun.com/xml/ns/javaee!!!!! version="2.0">! </faces-config>!

30 automatisch bei Bedarf vom Container instantiiert unter dem Klassennamen der Template Engine bekannt gemacht eindeutiger Name für Managed-Beans, egal in welchem Package ) Scoping von Beans, d.h. Definition der Lebensdauer, per genau einmal geladen, solange im Speicher, wie die Applikation für jeden HTTP Request eine neue eigene in der HTTP-Session abgelegt und wieder solange, wie Nutzer die aktuelle Seite benutzt Backing Bean 30

31 Backing Bean package de.skatulla.jee.jsfbeans;! import java.io.serializable;! import javax.faces.bean.managedbean;! public class PersonBean implements Serializable {!! private static final long serialversionuid = L;!! private String _name;!! private String _id;!! public String getname() {!!! return _name;!! }!! public void setname(string name) {!!! _name = name;!! }!! public String getid() {!!! return _id;!! }!! public void setid(string id) {!!! _id = id;!! }!! public String save() {!!! setid(uuid.randomuuid().tostring());!!! return "Person";!! }! }! 31

32 Facelet <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"! "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd">! <html xmlns="http://www.w3.org/1999/xhtml"! xmlns:h="http://java.sun.com/jsf/html"! xmlns:ui="http://java.sun.com/jsf/facelets">! <head>! <title>person</title>! </head>! <body>!! <h:form>!!! <h1>person</h1>!!! <h:panelgrid border="0" columns="2">!!!! <h:outputtext value="id"/>!!!! <h:outputtext value="#{personbean.id}"/>!!!! <h:outputtext value="name"/>!!!! <h:inputtext value="#{personbean.name}"/>!!! </h:panelgrid>!!! <h:commandbutton value="save" action="#{personbean.save}"/>!! </h:form>! </body>! </html>! 32

33 Enterprise Java Beans (EJB 3.1) Eine Einführung

34 Business Tier Enterprise Beans JTA (Java Transaction API) Aufbau einer Anwendung 34

35 Komponente mit Geschäftslogik und/oder Zugriff auf persistente Daten Ausführung im EJB Container Seit JEE 5 POJO mit Annotationen In J2EE 1.4 mit Home-, Remote- und SessionBean-Interface und Deployment- Deskriptor Zugreifbar über die JNDI-Registry Unterscheidung: Stateless Session Bean Stateful Session Bean Message Driven Bean EJB Enterprise Java Bean 35

36 Zwei Status: Non existent und Ready Callbacks im Zustandlos Stateless Session Bean 36

37 Eine Instanz pro Client Status: Non Existent, Ready, Passivated Callbacks Wird eher selten eingesetzt Stateful Session Bean 37

38 Kommunikation über JMS Nimmt Nachrichten entgegen, für Queues/Topics, auf die sich eine MDB registriert hat MessageDrivenBean 38

39 Stateless Session Bean Service IPersonService.save() deklariert durch Interface Implementation durch Stateless Session Bean PersonServiceImpl package de.skatulla.jee.services;! import de.skatulla.jee.jsfbeans.personbean;! public interface IPersonService {!! public abstract void save(personbean personbean);! }! package de.skatulla.jee.services;! import java.util.uuid;! import javax.ejb.stateless;! import public class PersonServiceImpl implements IPersonService public void save(personbean personbean) {!!! personbean.setid(uuid.randomuuid().tostring());!! }!! }! 39

40 Verwendung des Services Backing Bean erhält Zugriff auf Service durch Dependency Injection (DI) keine Abhängigkeit zur Service-Implementation nur zum Interface keine Instanziierung von Service-Bean Service-Bean wird vom Container instanziiert und injiziert (dem annotierten Feld zugewiesen) Vorteile von DI Implementation kann ausgetauscht werden Separates private IPersonService personservice;! public String save() {!! personservice.save(this);!! return "Person";! }! Instanzen-Pooling durch Container 40

41 Transaktionsmanagement (JTA) Management der Transaktionen durch den Container Zwei Möglichkeiten BeanManaged-Transactions (Steuerung durch den Benutzer) ContainerManaged-Transactions Begin-, Commit und Rollback-Steuerung durch Container an den Transaktionsgrenzen (Begin, Commit implizit, Rollback bei System Exception oder manuell mit setrollbackonly()) Steuerung an (Service-)Bean oder Methoden Default: REQUIRED: gerufene Methode in selber TA wie aufrufende, wenn TA bereits geöffnet, sonst neue TA öffnen REQUIRES_NEW: neue (autonome) TA MANDATORY, NEVER, NOT_SUPPORTED, SUPPORTS! 41

42 Java Persistence API (JPA 2.0) Eine Einführung

43 Persistence Tier Entity Beans JPA (Java Persistence API) Aufbau einer Anwendung 43

44 App-Server-Hersteller verwenden meist ihre eigene JPA-Implementation JBOSS Hibernate, Oracle EclipseLink, Glassfish EclipseLink Datenhalter sind Entities, einfache POJOs Eigene Query-Languange JPQL Mapping über Annotationen oder xml JPA Java Persistence API 44

45 JPA Entities Datenbankanbindung durch Mapping von einfachen Java-Klassen auf Tabellen i.d.r. eine Klasse eine Tabelle Klassen als einfache Beans Felder mit Settern und Gettern Mapping Klasse Tabelle an Klasse (optional) an für opt. Spaltenname alternativ TABLE_NAME") public class Customer { } private String public String getname() { return name; } public void setname(string name) { this.name = name; } private String public String getmail() { return mail; } public void setmail(string mail) { this.mail = mail; public String address; public Customer() {} 45

46 In einer SessionBean injiziert Name ) Ist entweder TransactionScoped oder Extended Managed den Lifecycle einer Entity javax.persistence.entitymanager Stellt Methoden für das Finden, Löschen, Einfügen von Daten bereit persist(object), find(class, Id), remove(object), merge(object) Weiterhin Methoden für Queries (createquery), NamedQueries (createnamedquery), NativeQueries(createNativeQuery) JPA EntityManager 46

47 Weitere Mapping-Annotationen für Spalteneigenschaften Not Null, Default, Datentyp, Generierung des Wertes, Indexe,... Beziehungen Many-to-One, One-To-One, One-To-Many Referentielle Itegrität Ableitungshierarchien bei Entities können definiert werden verschiedene Abbildungsstrategien auf Tabellen Hierarchietabelle horizontal / vertikal partitioniert Tabelle pro Subtyp... JPA Entities 47

48 JPA Entity package de.skatulla.jee.entities;! import javax.persistence.column;! import javax.persistence.entity;! import public class Person {!! private String _name;!! private String public String getname() {!!! return _name;!! }!! public void setname(string name) {!!! _name = name;!! public String getid() {!!! return _id;!! }!! public void setid(string id) {!!! _id = id;!! }! }! 48

49 JPA-Konfiguration src/meta-inf/persistence.xml <?xml version="1.0" encoding="utf-8"?>! <persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence"!!! xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"!!! xsi:schemalocation="http://java.sun.com/xml/ns/persistence! <persistence-unit name="mypersistenceunit">!!! <jta-data-source>jdbc/jee-test</jta-data-source>!!! <properties>!!!! <!-- EclipseLink should create the database schema automatically -->!!!! <property name="eclipselink.logging.level" value="off" />!!!! <property name="eclipselink.ddl-generation" value="create-tables" />!!!! <property name="eclipselink.ddl-generation.output-mode" value="database" />!!! </properties>!! </persistence-unit>! </persistence>! 49

50 JPA Verwendung in Session Beans Zugriff auf Entity-Manager per Dependency Injection Interface EntityManager! mit definiertem Namen der Persistence Unit Entity anlegen über Entity-Manger speichern package de.skatulla.jee.services;! public class PersonServiceImpl implements IPersonService private EntityManager public void save(personbean personbean) {!!! personbean.setid(uuid.randomuuid().tostring());!!!!!! Person person = new Person();!!! person.setid(personbean.getid());!!! person.setname(personbean.getname());!!! entitymanager.persist(person);!! }!!! }! 50

51 getsingleresult() getresultlist() getfirstresult() setparameter() sethint() excecuteupdate() JPA Query 51

52 Transaktionsteilnahme erfolgt wie konfiguriert Resource_Local EntityManager em = emf.createentitymanager(); em.gettransaction().begin(); //Operationen auf dem EntityManager em.close(); JTA bei CMT voll automatisch (Methoden-Ein- und Austritt) Bei BMT TransactionManager vom Context holen TransaktionManager.begin(), commit() und rollback() JPA Transaktionen 52

53 SQL-ähnliche Syntax Navigation über Objektgraphen Beispiel select protocol from Protocol protocol where protocol.protocolid.prt_id = :id JPA Query Language 53

54 Callbacks @PreUpdate, Vererbungsstrategien Eine Tabelle pro Klassenhierachie (mit Diskriminator-Feld) Eine Tabelle pro konkreter Entityklasse Join-Tabelle mit separaten Tabellen per SubClass und ParentClass Unterstützung verschiedener Generierungsmechanismen für Ids (z. B. Sequences, UUID) JPA Weitere Möglichkeiten 54

55 Java EE Verschiedene Anmerkungen Eine Einführung

56 Trennung von API und dessen Implementierung Spezifikation von Schnittstellen für verschiedenste Komponenten und Aspekte Einsatz von APIs erleichtert in der Theorie den Austausch der verwendeten Implementierung Dependency Injection Beans mit minimalen Abhängigkeiten untereinander Abhängigkieten nur zum Interface Wiring von Instanzen von außen Abhängige Objekte werden von DI-Framework injiziert Wichtige Konzepte 56

57 Client-Server-Modell JavaSE ausgerichtet auf Entwicklung und Betrieb von Java Programmen auf Einzelplatzrechnern / JavaEE für Betrieb auf Servern zur Umsetzung von Diensten gedacht Client verwendet die bereitgestellten Server-Dienste Aufteilung auf mehrere VMs (und verschiedene Rechner) / Kommunikation zwischen Client und Server als zusätzlicher Aspekt Mehrschichtige Anwendungen Aufteilung von Anwendungen in verschiedene Schichten mit klar getrennten Aufgabenbereichen Wichtige Konzepte 57

58 Aufteilung der zu erstellenden Komponenten auf die verschiedenen Schichten Verwendung der spezifizierten und vom Applicationserver bereitgestellten JavaEE Komponenten mit ihren jeweiligen Schnittstellen (APIs) Externe Ressourcen werden den Anwendungen vom Applicationserver zugänglich gemacht Konfiguration dieser Ressourcen mittels Applicationserver-Schnittstellen Deployment einzelner Anwendungen in Form von.war und.ear Paketen mit zum Teil Applicationserver spezifischen Konfigurationen Management und Überwachung von installierten Anwendungen durch Applicationserver Klassische JavaEE-Anwendung 58

59 Queues Point-to-Point Topics Publish - Subscribe JMS 59

60 JMS 60

61 Message Nachricht ohne Inhalt (Body) StreamMessage Nachricht mit einem Stream von Java-Primitiven MapMessage Nachricht mit einer Map von Java-Objekten TextMessage Nachricht mit einem String (z. B. für XML-Messages) ObjectMessage Nachricht mit einem serialisierten Java Objekt BytesMessage Nachricht mit einem Stream von Bytes JMS Arten von Nachrichten 61

62 ConnectionFactory erstellen Connection erstellen Session erzeugen Message erzeugen Message senden Asynchron MessageProducer.send(Message) MessageProducer versendet die Nachricht, ohne auf eine Antwort zu warten Synchron QueueRequestor.request(Message) Request-/Response-Verfahren MessageProducer.send(Message) und MessageConsumer.receive(timeToWait) MessageConsumer wartet bestimmte Zeit auf Antwort JMS Nachrichten versenden 62

63 Entweder MessageDrivenBean, die sich auf eine Queue/Topic registriert hat oder Thread, der auf eingehende Nachrichten wartet Implementiert wird javax.jms.messagelistener onmessage(message) Consumer (Queue) bzw. Subscriber (Topic) lauscht über den Listener JMS Nachrichten empfangen 63

64 Gelten als Komponenten einer Anwendung und beinhalten deren Geschäftslogik oder gestatten Zugriff auf persistente Daten Werden innerhalb eines EJB-Containers ausgeführt Aufgaben Kapselung der Geschäftslogik Transaktionsmanagement Loadbalancing Es gibt drei unterschiedliche Typen von EJBs Session-Beans, sowohl statusbehaftet als auch ohne internen Status, welche die Geschäftslogik implementieren und meistens vom Client zugreifbar sind Message-Driven-Beans (MDB) für die Verarbeitung von JMS-Nachrichten Entity-Beans für die Abbildung von persistenten Datenobjekten EJBs Enterprise Java Beans 64

65 Portabilität von JavaEE-Anwendungen auf verschiedene Applicationserver ist durch proprietäre Erweiterungen stark eingeschränkt durch die hohe Anzahl der APIs ist der Lernaufwand sehr hoch Theoretisch sollte durch die APIs die Komplexität reduziert werden. Praktisch muss der Entwickler trotzdem oft wissen, was genau hinter der API steckt J2EE mit EJB2 war sehr umständlich - EJB3 verbessert durch zahlreiche Vereinfachungen Standardisierte Rahmenbedingungen können als Einschränkungen wirken Probleme von Java EE 65

66 Ausblick auf die weiteren Veranstaltungen Uni Jena,

67 Michael Plöd, Senacor JPA Ralph Winzinger, Senacor Ein großes MDSD-JavaEE-Projekt Christian Zander, Greenpike Scrum-Einführung in einem großen MDSD-JavaEE-Projekt * 8-12 Detlef Hornbostel, Ibykus Ein alternativer MDSD-Ansatz * 8-12 Alexander Nittka, itemis Modellierung von Verhalten Algorithmen in Modellen * evtl. Termine vertauscht Die nächsten Veranstaltungen mit Gästen 67

Entwicklung von Web-Anwendungen auf JAVA EE Basis

Entwicklung von Web-Anwendungen auf JAVA EE Basis Entwicklung von Web-Anwendungen auf JAVA EE Basis Java Enterprise Edition - Überblick Prof. Dr. Bernhard Schiefer Inhalt der Veranstaltung Überblick Java EE JDBC, JPA, JNDI Servlets, Java Server Pages

Mehr

Softwareentwicklung mit Enterprise JAVA Beans

Softwareentwicklung mit Enterprise JAVA Beans Softwareentwicklung mit Enterprise JAVA Beans Java Enterprise Edition - Überblick Was ist J2EE Java EE? Zunächst mal: Eine Menge von Spezifikationen und Regeln. April 1997: SUN initiiert die Entwicklung

Mehr

Programmierung von Client/Server- Anwendungen

Programmierung von Client/Server- Anwendungen Programmierung von Client/Server- Anwendungen Komponenten des Web-Containers (Java EE) SoSe2015 Prof. Dr. Andreas Schmietendorf 1 Übersicht zur Vorlesung Entwicklung der Java Enterprise Edition Servlets,

Mehr

Übungsaufgabe Transaktion als Middleware

Übungsaufgabe Transaktion als Middleware Übungsaufgabe Transaktion als Middleware und Java Persistence API Client/Server Abstraktes Komponentenmodell Entscheidende Punkte Erweiterung der Invoke-Methode Context-Verwaltung Transaktionsbehandlung

Mehr

Application Server und Continuous Integration

Application Server und Continuous Integration Application Server und Continuous Integration Outline 2 Einleitung Application Server Java EE Enterprise Applikationen vs. Web Applikationen Web Application Life Cycle Servlets JavaServer Pages verschiedene

Mehr

Enterprise Java Beans Einführung

Enterprise Java Beans Einführung Enterprise Java Beans Einführung Vorlesung 8 Ralf Gitzel ralf_gitzel@hotmail.de 1 Themenübersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht EJBs im JEE Umfeld Verschiedene Typen von EJBs Von der Javaklasse

Mehr

ENTWICKLUNGS- UND LAUFZEITUMGEBUNG DER CSE: ECLIPSE UND JBOSS. Piotr Kasprzak

ENTWICKLUNGS- UND LAUFZEITUMGEBUNG DER CSE: ECLIPSE UND JBOSS. Piotr Kasprzak ENTWICKLUNGS- UND LAUFZEITUMGEBUNG DER CSE: ECLIPSE UND JBOSS Piotr Kasprzak Agenda Laufzeitumgebung Java EE (J2EE) Motivation APIs / Technologien JBoss Entwicklungsumgebung Eclipse Ausblick Java EE -

Mehr

G s e a s m a t m ar a ch c i h tek e tur u I und IoC

G s e a s m a t m ar a ch c i h tek e tur u I und IoC Gesamtarchitektur I und IoC Schichten einer Web-Anwendung Initiiert durch J2EE und Spring: Strukturierte Sicht auf UI und Fachlogik (Domäne) Ergibt 5 Schichten: Man unterscheidet Präsentations- und Domänenmodell!

Mehr

Schritt 4: Hallo Enterprise Bean

Schritt 4: Hallo Enterprise Bean Prof. Dr. Th. Letschert FB MNI JEE Schritt 4: Hallo Enterprise Bean Einstieg: EJBs erzeugen und nutzen Meine erstes EJB Projekt Enterprise Beans sind eine Backend Technologie, die mit unterschiedlichen

Mehr

Inhaltsverzeichnis. Enterprise Java im Überblick. Technologien der Java2 Enterprise Edition

Inhaltsverzeichnis. Enterprise Java im Überblick. Technologien der Java2 Enterprise Edition Inhaltsverzeichnis Vorwort 13 I Enterprise Java im Überblick 1 Bedeutung von Enterprise Java und IBM WebSphere 21 1.1 Enterprise Java 23 1.1.1 Anforderungen 23 1.1.2 E-Business 30 1.1.3 Java 36 1.2 IBM

Mehr

Erfahrungen und Erkenntnisse. Klaus Richarz, HBT GmbH

Erfahrungen und Erkenntnisse. Klaus Richarz, HBT GmbH Erfahrungen und Erkenntnisse Klaus Richarz, HBT GmbH Java Enterprise Edition 5.0 JBoss Seam Konsequenzen für Realisierung Qualitätssicherung Build & Deployment Fazit & Empfehlungen JBoss Seam in Projekten,

Mehr

5. JavaServer Faces(JSF)

5. JavaServer Faces(JSF) 5. JavaServer Faces(JSF) Grundlagen Nutzung von JSF-Annotationen Validierung von Eingaben Ausgabe von Fehlermeldungen Auswahl darzustellender Elemente typische elementare Software-Architektur JSF + JPA

Mehr

Anwendung eines Enterprise Java Beans

Anwendung eines Enterprise Java Beans Anwendung eines Enterprise Java Beans EJB Server EJB Container Remote Interface Home Interface EJB Object Der EJB Container kümmert sich um die Kommunikation des Beans mit anderen Komponenten, wobei er

Mehr

Benutzung von Eclipse zur Entwicklung von Java EE 5 Anwendungen mit dem JBoss Application Server

Benutzung von Eclipse zur Entwicklung von Java EE 5 Anwendungen mit dem JBoss Application Server Benutzung von Eclipse zur Entwicklung von Java EE 5 Anwendungen mit dem JBoss Application Server Starten und Auswahl des Workspaces Starten Sie Eclipse als die Entwicklungsumgebung. Wählen Sie als Workspace

Mehr

Erste Erfahrungen mit NSASJ anhand der OmnivoBase Portierung. September 2013

Erste Erfahrungen mit NSASJ anhand der OmnivoBase Portierung. September 2013 GTUG Java Arbeitskreis Erste Erfahrungen mit NSASJ anhand der OmnivoBase Portierung September 2013 Jürgen Depping CommitWork GmbH Seite 1 Info@CommitWork.de www.commitwork.de Agenda Was ist OmnivoBase?

Mehr

jetzt lerne ich J2EE Der einfache Einstieg in die Programmierung mit der Java 2 Enterprise Edition THOMAS STARK

jetzt lerne ich J2EE Der einfache Einstieg in die Programmierung mit der Java 2 Enterprise Edition THOMAS STARK jetzt lerne ich J2EE Der einfache Einstieg in die Programmierung mit der Java 2 Enterprise Edition THOMAS STARK Inhaltsverzeichnis jetzt lerne ich Vorwort 17 1 Einleitung 19 1.1 Zentrale Konzepte 20 1.1.1

Mehr

Web 2.0 Software-Architekturen

Web 2.0 Software-Architekturen Web 2.0 Software-Architekturen Servlets als Controller einer MVC Web Architektur Prof. Dr. Nikolaus Wulff HTTP und HTML Das HyperText TransferProtokoll (HTTP) beschreibt eine einfache verbindungslose Kommunikation,

Mehr

FWP Aktuelle Technologien zur Entwicklung verteilter Java- Anwendungen

FWP Aktuelle Technologien zur Entwicklung verteilter Java- Anwendungen FWP Aktuelle Technologien zur Entwicklung verteilter Java- Anwendungen Sommersemester 2013 Michael Theis, Lehrbeauftragter Java EE Spezifikation definiert ein Programmiermodell für Applikationen die Eigenschaften

Mehr

J2EEKurs. J2EE eine Plattform für betriebliche Anwendungen. Peter Thiemann. Sommercampus J2EEKurs, Freiburg, Germany, 10.-14.10.

J2EEKurs. J2EE eine Plattform für betriebliche Anwendungen. Peter Thiemann. Sommercampus J2EEKurs, Freiburg, Germany, 10.-14.10. J2EE eine Plattform für betriebliche Anwendungen Universität Freiburg, Germany Sommercampus, Freiburg, Germany, 10.-14.10.2005 Plattform Betriebliche Anwendung J2EE Kontrahenten J2EE im Überblick Was ist

Mehr

FH LU JEE Vorlesung SS 2010. Ralf Gitzel ralf_gitzel@hotmail.de

FH LU JEE Vorlesung SS 2010. Ralf Gitzel ralf_gitzel@hotmail.de FH LU JEE Vorlesung SS 2010 Ralf Gitzel ralf_gitzel@hotmail.de 1 Einführung + Organisatorisches Ralf Gitzel ralf_gitzel@hotmail.de 2 Dozent Dr. Ralf Gitzel Promotion an der Universität Mannheim in Wirtschaftsinformatik

Mehr

Um asynchrone Aufrufe zwischen Browser und Web Anwendung zu ermöglichen, die Ajax Hilfsmittel DWR ist gebraucht.

Um asynchrone Aufrufe zwischen Browser und Web Anwendung zu ermöglichen, die Ajax Hilfsmittel DWR ist gebraucht. Technisches Design Inhalt Design Übersicht Menü und DispatcherServlet DWR Servlet Viewer Servlets Controllers Managers Sicherheit Anwendung Architektur Component Diagram Deployment Diagram Komponente Sequence

Mehr

11. Enterprise Java Beans Grundlagen der Programmierung II (Java)

11. Enterprise Java Beans Grundlagen der Programmierung II (Java) 11. Enterprise Java Beans Grundlagen der Programmierung II (Java) Prof. Dr. Bernhard Humm Hochschule Darmstadt University of Applied Sciences Sommersemester 2006 Übersicht Grundlagen der Programmierung

Mehr

JSP und Servlet Programmierung

JSP und Servlet Programmierung Seminarunterlage Version: 5.02 Copyright Version 5.02 vom 1. März 2013 Dieses Dokument wird durch die veröffentlicht. Copyright. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen

Mehr

UNIVERSITÄT LEIPZIG. Mainframe Internet Integration SS2013. Java Enterprise Edition Teil 4. Schnittstellen

UNIVERSITÄT LEIPZIG. Mainframe Internet Integration SS2013. Java Enterprise Edition Teil 4. Schnittstellen UNIVERSITÄT LEIPZIG Mainframe Internet Integration Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013 Java Enterprise Edition Teil 4 Schnittstellen el0100 copyright W. G. Spruth, wgs 04-10

Mehr

Enterprise JavaBeans

Enterprise JavaBeans Enterprise JavaBeans Sebastian Pipping 18. Dezember 2006 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License. Teil I J2EE J2EE Was ist J2EE? Was ist J2EE?

Mehr

VS12 Slide 1. Verteilte Systeme. Vorlesung 12 Sebastian Iwanowski FH Wedel

VS12 Slide 1. Verteilte Systeme. Vorlesung 12 Sebastian Iwanowski FH Wedel VS12 Slide 1 Verteilte Systeme Vorlesung 12 Sebastian Iwanowski FH Wedel Mögliche Plattformen für Web Services VS12 Slide 2 VS12 Slide 3 Java-Software für verteilte Systeme J2EE: Java 2 Enterprise Edition

Mehr

A Java EE component is a self-contained functional software unit that is assembled into a Java EE. communicates with other components.

A Java EE component is a self-contained functional software unit that is assembled into a Java EE. communicates with other components. Begriffsdefinitionen Java EE A Java EE component is a self-contained functional software unit that is assembled into a Java EE application with its related classes and files and that communicates with

Mehr

SE2-10-Entwurfsmuster-2 15

SE2-10-Entwurfsmuster-2 15 Architektur und Skalierbarkeit SE2-10-Entwurfsmuster-2 15 Skalierbarkeit Skalierbarkeit bedeutet die Anpassung einer Software an wachsende Last: Interaktionsfrequenz Nutzerzahl Anpassung durch Hinzufügen

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

Enterprise Java Beans (EJB)

Enterprise Java Beans (EJB) silbergrau Consulting & Software GmbH Enterprise Java Beans (EJB) Fachhochschule Hagenberg WS 2002 / 2003 Silbergrau Consulting & Software GmbH Dr. Andreas Erlach Inhaltsübersicht Application Server J2EE

Mehr

Inhaltsverzeichnis. 1 Ein Einstieg mit Profil 1. 2 Aufsetzen der Entwicklungsumgebung 19

Inhaltsverzeichnis. 1 Ein Einstieg mit Profil 1. 2 Aufsetzen der Entwicklungsumgebung 19 xi 1 Ein Einstieg mit Profil 1 1.1 Java EE 7 der Standard für Enterprise Java.................. 1 1.1.1 Struktur einer Enterprise-Java-Anwendung............. 1 1.1.2 Die Java Enterprise Edition (Java EE)..................

Mehr

Java EE kompakt - Power Workshop

Java EE kompakt - Power Workshop Java EE kompakt - Power Workshop Seminarunterlage Version: 2.02 Version 2.02 vom 28. April 2015 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen

Mehr

Behandelt Java EE 6. O Reillys Taschenbibliothek. Java EE. kurz & gut. Arun Gupta O REILLY. Übersetzung von Thomas Demmig

Behandelt Java EE 6. O Reillys Taschenbibliothek. Java EE. kurz & gut. Arun Gupta O REILLY. Übersetzung von Thomas Demmig O Reillys Taschenbibliothek Behandelt Java EE 6 Java EE kurz & gut O REILLY Arun Gupta Übersetzung von Thomas Demmig Inhalt Vorwort... 1 Java Platform, Enterprise Edition... 1 Einführung... 1 Deliverables...

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

anaptecs JEAF Plattform JEAF Developer Guide

anaptecs JEAF Plattform JEAF Developer Guide anaptecs JEAF Plattform JEAF Developer Guide : JEAF Framework Die technische Grundlage für Applikationen auf Basis der JEAF Plattform bildet das JEAF Framework. Dabei handelt es sich um ein leichtgewichtiges

Mehr

EJB3 Zugriff auf DB2. Teil 2. Entwicklung einer EJB3 Anwendung für WebSphere 6.1 mit RAD 7.5. Einführung

EJB3 Zugriff auf DB2. Teil 2. Entwicklung einer EJB3 Anwendung für WebSphere 6.1 mit RAD 7.5. Einführung EJB3 Zugriff auf DB2 Teil 2 Entwicklung einer EJB3 Anwendung für WebSphere 6.1 mit RAD 7.5 Einführung Dieses Tutorial zeigt, wie eine einfache EJB 3 Anwendung mit Rational Application Developver 7.5 (kurz

Mehr

Liste V Enterprise JavaBeans

Liste V Enterprise JavaBeans Liste V Enterprise JavaBeans Fachhochschule Wiesbaden, FB Design Informatik Medien Studiengang Allgemeine Informatik Vorlesung zur Vertiefungslehrveranstaltung Spezielle Methoden der Softwaretechnik SS

Mehr

Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java

Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java Erstellung eines Frameworks für Shop Systeme im Internet auf Basis von Java Präsentation zur Diplomarbeit von Übersicht Java 2 Enterprise Edition Java Servlets JavaServer Pages Enterprise JavaBeans Framework

Mehr

J2EEKurs. Enterprise JavaBeans Einführung. Peter Thiemann. Sommercampus J2EEKurs, Freiburg, Germany, 10.-14.10.2005. Universität Freiburg, Germany

J2EEKurs. Enterprise JavaBeans Einführung. Peter Thiemann. Sommercampus J2EEKurs, Freiburg, Germany, 10.-14.10.2005. Universität Freiburg, Germany Enterprise JavaBeans Einführung Universität Freiburg, Germany Sommercampus, Freiburg, Germany, 10.-14.10.2005 Inhalt Allgemeines Motivation Rollen Aufbau einer EJB Arten von Beans Enterprise JavaBeans

Mehr

FH LU JEE Vorlesung SS 2014. Ralf Gitzel ralf_gitzel@hotmail.de

FH LU JEE Vorlesung SS 2014. Ralf Gitzel ralf_gitzel@hotmail.de FH LU JEE Vorlesung SS 2014 Ralf Gitzel ralf_gitzel@hotmail.de 1 Einführung + Organisatorisches Ralf Gitzel ralf_gitzel@hotmail.de 2 Dozent Dr. Ralf Gitzel Promotion an der Universität Mannheim in Wirtschaftsinformatik

Mehr

JavaEE Grundlagen. Theis Michael - Senior Developer UniCredit Global Information Services S.C.p.A

JavaEE Grundlagen. Theis Michael - Senior Developer UniCredit Global Information Services S.C.p.A JavaEE Grundlagen FWP Aktuelle Technologien zur Entwicklung verteilter Java-Anwendungen Theis Michael - Senior Developer UniCredit Global Information Services S.C.p.A Sommersemester 2012 2 Die Java EE

Mehr

Modell 2 und JSF. JSP und Modell 1 MVC und Modell 2 Java Web Frameworks und Struts Java Server Faces

Modell 2 und JSF. JSP und Modell 1 MVC und Modell 2 Java Web Frameworks und Struts Java Server Faces Modell 2 und JSF JSP und Modell 1 MVC und Modell 2 Java Web Frameworks und Struts Java Server Faces JSP ein mächtiges Werkzeug! Client JSP Bean Fachlogik JSP Eine JSP empfängt Benutzer-Anfragen, "Requests"

Mehr

Oracle Weblogic Administration Grundlagen

Oracle Weblogic Administration Grundlagen Oracle Weblogic Administration Grundlagen Seminarunterlage Version: 1.07 Version 1.07 vom 14. September 2015 Dieses Dokument wird durch die veröffentlicht.. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen

Mehr

AS 7 / EAP 6 - Clustering. heinz.wilming@akquinet.de @akquinet h3p://blog.akquinet.de

AS 7 / EAP 6 - Clustering. heinz.wilming@akquinet.de @akquinet h3p://blog.akquinet.de AS 7 / EAP 6 - Clustering heinz.wilming@akquinet.de @akquinet h3p://blog.akquinet.de Was ist die EAP 6? EAP6!= EAP5 +1 JBoss Enterprise ApplicaBon PlaCorm 6 Stabile und unterstützte Pla>orm Basiert auf

Mehr

Web-Design mit JSF und AJAX. Java Enterprise Erkner, 6.1.2007 Carsten Mjartan (mjartan@codecentric.de)

Web-Design mit JSF und AJAX. Java Enterprise Erkner, 6.1.2007 Carsten Mjartan (mjartan@codecentric.de) Web-Design mit JSF und AJAX Java Enterprise Erkner, 6.1.2007 Carsten Mjartan (mjartan@codecentric.de) 0 Agenda Ajax als Web 2.0 Technologie Java-Server Faces 1 Java Server Faces Sun-Spezifikation (JSR-127)

Mehr

JMS JAVA MESSAGE SERVICES. Entwicklung von Webanwendungen SS 07

JMS JAVA MESSAGE SERVICES. Entwicklung von Webanwendungen SS 07 JMS JAVA MESSAGE SERVICES Entwicklung von Webanwendungen SS 07 Marc Seeger Stephan Helten [ms155] [sh094] Agenda Teil 1: Marc Seeger [ms155] Einführung: Was ist Messaging Message Oriented Middleware [MOM]

Mehr

Enterprise Java Beans

Enterprise Java Beans Enterprise Java Beans Beispiel Minibank nur: Kunde, Konto, Überweisung personen.person Attributes Name:String Vorname:String überweisungen.überweisung Attributes Verwendungszweck:String Datum:Date betrag:integer

Mehr

SpringSource Enterprise & Application Platform: Wo geht die Reise hin?

SpringSource Enterprise & Application Platform: Wo geht die Reise hin? SpringSource Enterprise & Application Platform: Wo geht die Reise hin? Eberhard Wolff Regional Director & Principal Consultant SpringSource Copyright 2007 SpringSource. Copying, publishing or distributing

Mehr

jbpm5 in Java EE 6 Marek Iwaszkiewicz Pascal Schaerf akquinet AG

jbpm5 in Java EE 6 Marek Iwaszkiewicz Pascal Schaerf akquinet AG jbpm5 in Java EE 6 Marek Iwaszkiewicz Pascal Schaerf akquinet AG Über uns Developer @ akquinet AG Marek Iwaszkiewicz marek.iwaszkiewicz@akquinet.de JBoss Compentence Center Pascal Schaerf pascal.schaerf@akquinet.de

Mehr

Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Version: 2014 Orientation 1.0 in Objects GmbH Der Sprecher Erik Bamberg (OIO) 2 1 s Aufgaben des Cachings Datenbank

Mehr

Rechnernetze Projekt SS 2015

Rechnernetze Projekt SS 2015 30/03/15 Seite 1 Aspektorientierte Programmierung logische Aspekte (Concerns) im Programm separieren Crosscutting Concerns (Ziel: generische Funktionalitäten über mehrere Klassen hinweg zu verwenden -

Mehr

EJB3.0 Unit-Testing Reloaded

EJB3.0 Unit-Testing Reloaded EJB3.0 Unit-Testing Reloaded Werner Eberling werner.eberling@mathema.de www.mathema.de Werner Eberling, MATHEMA Software GmbH - EJB3.0 - Unit-Testing Reloaded (G4 - Folie 1) Java Forum Stuttgart 2007 Automatisiertes

Mehr

Enterprise JavaBeans Überblick: 17. Enterprise Information System Schicht

Enterprise JavaBeans Überblick: 17. Enterprise Information System Schicht 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

Konfigurationslanleitung für J2EE und Eclipse im KBS-Pool

Konfigurationslanleitung für J2EE und Eclipse im KBS-Pool Konfigurationslanleitung für J2EE und Eclipse im KBS-Pool JBoss vorbereiten Wir haben ein zip-archiv mit JBoss 4.0.5 in /opt/jboss-4.0.5.zip hinterlegt. Entpacken Sie dieses in ihrem Homeverzeichnis an

Mehr

Web-Anwendungen mit Arquillian testen

Web-Anwendungen mit Arquillian testen Michael Kotten open knowledge @michaelkotten @_openknowledge Wozu denn testen? Ich mach doch keine Fehler! Wozu denn testen? > Notwendig bei komplexen Systemen > Sicherung von > Qualität > Funktionalität

Mehr

Softwareentwicklung mit Enterprise JAVA Beans

Softwareentwicklung mit Enterprise JAVA Beans Softwareentwicklung mit Enterprise JAVA Beans Enterprise JavaBeans Basics Enterprise JavaBeans (EJB) Enterprise JavaBeans (EJB) Komponenten sind wohl definiert verteilt (MI-based) serverseitig Sie dienen

Mehr

Fujitsu BeanConnect TM V3.0 Software 0 FUJITSU LIMITED 2013

Fujitsu BeanConnect TM V3.0 Software 0 FUJITSU LIMITED 2013 Fujitsu BeanConnect TM V3.0 Software 0 FUJITSU LIMITED 2013 Die Herausforderung: Hostanbindung Viele Unternehmen besitzen Mainframe- und Legacy-Anwendungen, so genannte Enterprise Information Systems (EIS),

Mehr

Clustering von Application Servern am Beispiel von JBoss 3.2

Clustering von Application Servern am Beispiel von JBoss 3.2 Clustering von Application Servern am Beispiel von JBoss 3.2 Cluster Workshop iternum GmbH Alexanderstraße 7 60489 Frankfurt/Main www.iternum.com Agenda Clustertechnik allgemein Was ist Clustering? Gründe

Mehr

Geronimo, konfigurierbarer Java EE Application Server

Geronimo, konfigurierbarer Java EE Application Server Geronimo, konfigurierbarer Java EE Application Server http://www.hs furtwangen.de http://www.informatik.hs furtwangen.de/~reich http://geronimo.apache.org/ Christoph Reich 01.06.2007 Überblick Geronimo

Mehr

Mainframe Internet Integration. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013. WebSphere Application Server Teil 4

Mainframe Internet Integration. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013. WebSphere Application Server Teil 4 UNIVERSITÄT LEIPZIG Mainframe Internet Integration Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013 WebSphere Application Server Teil 4 Leistungsverhalten el0100 copyright W. G. Spruth,

Mehr

Hibernate. Vortragender : Nabil Janah Kursleiter : Prof. Dr. Björn Dreher Lehrveranstaltung : Komponenten-Architekturen. Nabil janah 1 Hibernate

Hibernate. Vortragender : Nabil Janah Kursleiter : Prof. Dr. Björn Dreher Lehrveranstaltung : Komponenten-Architekturen. Nabil janah 1 Hibernate Hibernate Vortragender : Nabil Janah Kursleiter : Prof. Dr. Björn Dreher Lehrveranstaltung : Komponenten-Architekturen Nabil janah 1 Hibernate Inhalt Hibernate allgemeines Vorteile von Hibernate Hibernate-Architektur

Mehr

Android Kurs Online Kurs Entwicklung auf Android-Handys

Android Kurs Online Kurs Entwicklung auf Android-Handys Android Kurs Online Kurs Entwicklung auf Android-Handys Akademie Domani info@akademiedomani.de Allgemeines Programm des Kurses Modul Eins - Programmierung J2ee 1) Grundlegende Java - Programmierung : Grundlegende

Mehr

Von SAP R/3 zu mysap ERP und NetWeaver

Von SAP R/3 zu mysap ERP und NetWeaver Von SAP R/3 zu mysap ERP und NetWeaver Bremerhaven 06.05.2006 T4T Bremerhaven 1 Inhaltsverzeichnis 1. Motivation für SAP NetWeaver 2. SAP R/3 mysap ERP und SAP Business Suite 3. Application Platform T4T

Mehr

BPMN 2.0 gehört in den Werkzeugkasten JEDES Java Entwicklers! bernd.ruecker@camunda.com

BPMN 2.0 gehört in den Werkzeugkasten JEDES Java Entwicklers! bernd.ruecker@camunda.com BPMN 2.0 gehört in den Werkzeugkasten JEDES Java Entwicklers! bernd.ruecker@camunda.com Bernd Rücker camunda services GmbH Was ist Prozessautomatisierung? Das Ganze ist ein BPMN Prozess Aber auch (und

Mehr

Multimedia im Netz. Wintersemester 2011/12. Übung 10. Betreuer: Verantwortlicher Professor: Sebastian Löhmann. Prof. Dr.

Multimedia im Netz. Wintersemester 2011/12. Übung 10. Betreuer: Verantwortlicher Professor: Sebastian Löhmann. Prof. Dr. Multimedia im Netz Wintersemester 2011/12 Übung 10 Betreuer: Verantwortlicher Professor: Sebastian Löhmann Prof. Dr. Heinrich Hussmann Organisatorisches 2 Gesundes neues Jahr 3 Blatt 08 Videoformate im

Mehr

Bridging the Gap between the Enterprise and You. Who s the JBoss now?

Bridging the Gap between the Enterprise and You. Who s the JBoss now? or Who s the JBoss now? Patrick Hof (patrick.hof@redteam-pentesting.de) Jens Liebchen (jens.liebchen@redteam-pentesting.de) RedTeam Pentesting GmbH http://www.redteam-pentesting.de FrOSCon 2009 22./23.

Mehr

BIRT in Enterprise Architekturen

BIRT in Enterprise Architekturen BIRT in Enterprise Architekturen Orientation in Objects GmbH Tobias Kieninger Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Java, XML und Open Source seit 1998 ) Software Factory ) ) Object

Mehr

InQMy Application Server Flexible Softwareinfrastruktur für verteilte Anwendungen

InQMy Application Server Flexible Softwareinfrastruktur für verteilte Anwendungen InQMy Application Server Flexible Softwareinfrastruktur für verteilte Anwendungen IN-Q-My Title Company (Name) / 1 Agenda Firmenübersicht ebusiness Evolution InQMy Application Server Architektur Zusammenfassung

Mehr

Webinar: Einführung in ICEfaces

Webinar: Einführung in ICEfaces Webinar: Einführung in ICEfaces präsentiert von VOIP-Audio ist standardmässig aktiviert Alternatives Einwählen: +41 (0) 415 0008 65 ICESOFT TECHNOLOGIES INC ICESOFT Donnerstag, TECHNOLOGIES 26. März 2009

Mehr

Web- Applikationen. in Java-Web

Web- Applikationen. in Java-Web Einführung in Java-Web Web- Applikationen Frank Huber Humboldt-Universität zu Berlin Allgemeines Java: Programmierung ist Programmierung nach Konvention Insbesondere bei Web-Applikationen wurde eine API

Mehr

Software Engineering II

Software Engineering II Software Engineering II Codegenerierung für den SmartIO Editor mit der Modeling Workflow Engine Wintersemester 10/111 Fachgebiet Software Engineering Albert Zündorf / Wiederholung Bisher im Laufe des Semesters

Mehr

5. JavaServer Faces (JSF) / JEE

5. JavaServer Faces (JSF) / JEE 5. JavaServer Faces (JSF) / JEE 5.1 Grundlagen 5.2 Einführendes nulltes Beispiel 5.3 Validierung 5.4 Einschub: Contexts and Dependency-Injection 5.5 JSF mit JPA und JNDI 5.6 Funktionale Erweiterung 5.7

Mehr

UNIVERSITÄT LEIPZIG. Mainframe Internet Integration SS2013. WebSphere Application Server Teil 2. Schnittstellen

UNIVERSITÄT LEIPZIG. Mainframe Internet Integration SS2013. WebSphere Application Server Teil 2. Schnittstellen UNIVERSITÄT LEIPZIG Mainframe Internet Integration Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth SS2013 WebSphere Application Server Teil 2 Schnittstellen el0100 copyright W. G. Spruth, wgs

Mehr

Integrating Architecture Apps for the Enterprise

Integrating Architecture Apps for the Enterprise Integrating Architecture Apps for the Enterprise Ein einheitliches Modulsystem für verteilte Unternehmensanwendungen Motivation und Grundkonzept Inhalt Problem Ursache Herausforderung Grundgedanke Architektur

Mehr

Lightweight Java in der Automatisierungstechnik

Lightweight Java in der Automatisierungstechnik Lightweight Java in der Automatisierungstechnik Erfahrungen aus dem Anlagenbau Dr. Markus Eiglsperger eig@zuehlke.com Business Driver im Anlagenbau Kosten Modularisierung Vernetzung Agilität Paradigmenwechsel

Mehr

JSP Grundlagen. JEE Vorlesung Teil 5. Ralf Gitzel ralf_gitzel@hotmail.de

JSP Grundlagen. JEE Vorlesung Teil 5. Ralf Gitzel ralf_gitzel@hotmail.de JSP Grundlagen JEE Vorlesung Teil 5 Ralf Gitzel ralf_gitzel@hotmail.de 1 Übersicht Ralf Gitzel ralf_gitzel@hotmail.de 2 Übersicht JSP Konzept Model-View-Controller mit JSPs JSP Expression Language EL Literale

Mehr

3... SAP NetWeaver Developer Studio: Schritt für Schritt zur Beispielanwendung... 119

3... SAP NetWeaver Developer Studio: Schritt für Schritt zur Beispielanwendung... 119 1... SAP NetWeaver... 25 1.1... Plattform für die Enterprise Service-Oriented Architecture... 26... 1.1.1... Enterprise-SOA-Definition... 26... 1.1.2... Vorteile einer serviceorientierten Architektur...

Mehr

Praktikum Spring MVC. 1.2. Spring integrieren In der pom.xml Einträge für Spring hinzufügen.

Praktikum Spring MVC. 1.2. Spring integrieren In der pom.xml Einträge für Spring hinzufügen. Praktikum Spring MVC Aufgabe 1 Im ersten Teil des Praktikums wird eine Test Webapplikation entwickelt, anhand derer einige Konzepte von Spring nachvollzogen werden können. Dabei handelt es sich um Spring

Mehr

Open-Source Transparente Persistence (keine Interfaces, keine Ober- Klassen) Caching

Open-Source Transparente Persistence (keine Interfaces, keine Ober- Klassen) Caching 1 Was ist Hibernate Hibernate ist ein Open-Source-Java-Persistenz-Framework für relationale Datenbanken Persistenz-Frameworks: kapseln und abstrahiert den Zugriff auf eine Speicherschicht -> Zwischenschicht

Mehr

Java Forum Stuttgart 2008

Java Forum Stuttgart 2008 Professionelle Open Source SOA in 45 Minuten! Java Forum Stuttgart 2008 Dr. Halil-Cem Gürsoy, CDI AG Der Referent Insgesamt ca. 10 Jahre Beratung, davor Forschung Senior Consultant - JEE Evangelist Hauptsächlich

Mehr

Inhalt: Konfiguration: web.xml ; server.xml Workflow: Weiterleitung von Requests Lektion II-IV Lektion V-VI

Inhalt: Konfiguration: web.xml ; server.xml Workflow: Weiterleitung von Requests Lektion II-IV Lektion V-VI Servlet II Inhalt: Konfiguration: web.xml ; server.xml Workflow: Weiterleitung von Requests Lektion II-IV Lektion V-VI 3-1 1. Grundlagen 2. Servlets 3. JSP 4 1.1. JAR Files 4 1.2. TCP/IP, Sockels 4 1.3.

Mehr

JBoss Open Source für geschäftskritische Anwendungen

JBoss Open Source für geschäftskritische Anwendungen JBoss Open Source für geschäftskritische Anwendungen Daniel Braunsdorf Geschäftsführer Viada GmbH & Co. KG E-Mail: braunsdorf@viada.de Web: www.viada.de Kerstin Ruhnau Account Manager Viada GmbH & Co.

Mehr

Einsatz von Applikationsservern. Untersucht am Beispiel des Sybase Enterprise Application Server

Einsatz von Applikationsservern. Untersucht am Beispiel des Sybase Enterprise Application Server Einsatz von Applikationsservern Untersucht am Beispiel des Sybase Enterprise Application Server Architektur von Datenbanksystemen Client / Server Modell (2 Schichten Modell) Benutzerschnittstelle Präsentationslogik

Mehr

Eclipse Smart Client Beyond Eclipse RCP. Christian Campo, compeople, 24.April 2007

Eclipse Smart Client Beyond Eclipse RCP. Christian Campo, compeople, 24.April 2007 Eclipse Smart Client Beyond Eclipse RCP Christian Campo, compeople, 24.April 2007 1 Übersicht Definition / Architektur Smart Client Smart Client mit RCP Gesamtfazit 2 Fat - Thin - Smart Fat Client lokale

Mehr

Sicherheit. letzten beiden Punkte typischerweise durch Verschlüsselung realisiert. Komponentenbasierte Software Entwicklung. Prof. Dr.

Sicherheit. letzten beiden Punkte typischerweise durch Verschlüsselung realisiert. Komponentenbasierte Software Entwicklung. Prof. Dr. Sicherheit Vier Aufgaben Authentifizierung: Nutzer erkennen; klassisch über Name und Passwort Autorisierung: Nutzer darf nur bestimmte Aktionen durchführen, klassisch über Rechte Rollen System Vertraulichkeit:

Mehr

Karl Kessler, Peter Tillert, Panayot Dobrikov Java-Programmierung mit dem SAP Web Application Server

Karl Kessler, Peter Tillert, Panayot Dobrikov Java-Programmierung mit dem SAP Web Application Server 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Karl Kessler, Peter Tillert, Panayot Dobrikov Java-Programmierung

Mehr

Security Technologien in Java EE 6

Security Technologien in Java EE 6 Security Technologien in Java EE 6 Java Forum Stuttgart 2010 Sebastian Glandien Acando GmbH sebastian.glandien@acando.de Agenda I. Einleitung II. Java Authentication SPI for Containers (JSR-196) I. Message

Mehr

Benutzerdokumentation Web-Portal

Benutzerdokumentation Web-Portal GRUPP: SWT0822 Benutzerdokumentation Web-Portal Yet Another Reversi Game Martin Gielow, Stephan Mennicke, Daniel Moos, Christine Schröder, Christine Stüve, Christian Sura 05. Mai 2009 Inhalt 1. Einleitung...3

Mehr

Server-centric vs. Client-centric Web Applications. BITKOM Software Summit 2014, Frankfurt

Server-centric vs. Client-centric Web Applications. BITKOM Software Summit 2014, Frankfurt Server-centric vs. Client-centric Web Applications BITKOM Software Summit 2014, Frankfurt Alexander Rühl SyroCon Competence Lead M2M & Web Applications Diplom-Informatiker (FH) 10 Jahre bei SyroCon und

Mehr

Dennis Schulte / Tobias Flohre codecentric AG. Enterprise Java Batch mit Spring

Dennis Schulte / Tobias Flohre codecentric AG. Enterprise Java Batch mit Spring Dennis Schulte / Tobias Flohre Enterprise Java Batch mit Spring Dennis Schulte Düsseldorf @denschu www.github.com/denschu blog.codecentric.de/author/dsc tel +49 (0) 1515 _ 288 2395 dennis.schulte@codecentric.de

Mehr

Erfahrungen beim Bau einer Prototyp Anwendung auf Basis des JBoss

Erfahrungen beim Bau einer Prototyp Anwendung auf Basis des JBoss Erfahrungen beim Bau einer Prototyp Anwendung auf Basis des JBoss Klaus Richarz, Hamburger Berater Team GmbH 23.05.2003 Klaus Richarz, HBT Folie 1 Agenda Teil 1: J2EE Architekturbewertung Teil 2: JBoss

Mehr

Dataport IT Bildungs- und Beratungszentrum. HTML- Grundlagen und CSS... 2. XML Programmierung - Grundlagen... 3. PHP Programmierung - Grundlagen...

Dataport IT Bildungs- und Beratungszentrum. HTML- Grundlagen und CSS... 2. XML Programmierung - Grundlagen... 3. PHP Programmierung - Grundlagen... Inhalt HTML- Grundlagen und CSS... 2 XML Programmierung - Grundlagen... 3 PHP Programmierung - Grundlagen... 4 Java - Grundlagen... 5 Java Aufbau... 6 ASP.NET Programmierung - Grundlagen... 7 1 HTML- Grundlagen

Mehr

Internet Integration für

Internet Integration für für Systemprogrammierer systemorientierte Mitarbeiter Version 1.0 I März 2011 Autor: Wolfram Greis European Mainframe Academy GmbH Max von Laue Straße 9 D 86156 Augsburg Tel. +49 821 56756 10 info@mainframe

Mehr

Java Enterprise Edition 6 & Projekt GlassFish. Daniel Adelhardt Senior Software Architect Sun Microsystems GmbH

Java Enterprise Edition 6 & Projekt GlassFish. Daniel Adelhardt Senior Software Architect Sun Microsystems GmbH Java Enterprise Edition 6 & Projekt GlassFish Daniel Adelhardt Senior Software Architect Sun Microsystems GmbH 1 Agenda Java Enterprise Edition Rückblick > Java EE 5 Status Quo > Motivation für Java EE

Mehr

ORACLE Business Components for Java (BC4J) Marco Grawunder

ORACLE Business Components for Java (BC4J) Marco Grawunder ORACLE Business Components for Java (BC4J) Marco Grawunder Gliederung 2 Probleme von J2EE/EJB J2EE-Pattern Lösungsansatz: BC4J Architektur einer BC4J-Anwendung Komponenten Entity Objects View Objects Application

Mehr

Das Interceptor Muster

Das Interceptor Muster Das Interceptor Muster Implementierung des Interceptor Musters basierend auf OSGi and Friends Benjamin Friedrich Hochschule für Technik und Wirtschaft des Saarlandes Praktische Informatik - Entwurfsmuster

Mehr

SaaS-Referenzarchitektur. iico-2013-berlin

SaaS-Referenzarchitektur. iico-2013-berlin SaaS-Referenzarchitektur iico-2013-berlin Referent Ertan Özdil Founder / CEO / Shareholder weclapp die Anforderungen 1.000.000 registrierte User 3.000 gleichzeitig aktive user Höchste Performance Hohe

Mehr

5. Übung zur Vorlesung Service-orientierte Architekturen

5. Übung zur Vorlesung Service-orientierte Architekturen 5. Übung zur Vorlesung Service-orientierte Architekturen Webservices und WSDL SoSe 2011 Anmerkung Hausaufgabe 03 BPMN Auch hier gilt: Layout! Zu Unterschieden zw. BPMN und eepk Relative Aussagen sind geschickter

Mehr

Performance Tuning mit @enterprise

Performance Tuning mit @enterprise @enterprise Kunden-Forum 2005 Performance Tuning mit @enterprise Herbert Groiss Groiss Informatics GmbH, 2005 Inhalt Datenbank RMI JAVA API HTTP Konfiguration Analyse Groiss Informatics GmbH, 2005 2 Datenbank

Mehr

Web Service Entwicklung mit Java. Sven Lindow

Web Service Entwicklung mit Java. Sven Lindow Web Service Entwicklung mit Java Sven Lindow 22.11.2006 Agenda Einleitung SOAP, REST, WSDL, UDDI Web Services mit Java JWSDP JAX-RPC, JAX-WS 2.0 AXIS, AXIS2 Web Services nutzen Google, Ebay Web Services

Mehr