Inhoudsopgave cursusboek EJB 3.2 (JEE8)
1 Inleiding tot JEE
1.1 Multitier gedistribueerde applicaties
1.1.1 One-tier-applicaties
1.1.2 Two-tier-applicaties
1.1.3 Three-tier-applicaties
1.2 Multitier-applicaties in Java
1.2.1 Java Client Tier
1.2.2 Java Middle Tier
1.2.3 Enterprise Information System
1.2.4 Interoperability met andere systemen
1.3 JavaBeans versus Enterprise JavaBeans
2 EJB-Containers
2.1 Enterprise-servers en containers
2.2 Wildfly
2.2.1 Installatie
2.2.2 Configuratie
2.2.3 Integratie in een IDE
3 EJB-architectuur
3.1 Onderdelen van de business-logica
3.2 Soorten Enterprise JavaBeans
4 Mijn eerste EJB
4.1 Inleiding
4.2 Opzetten van het project
4.3 De broncode
4.3.1 De remote interface
4.3.2 De bean-klasse
4.4 Het compileren
4.5 Het JAR-bestand
4.6 De EJB in werking stellen
4.7 Het maken van een client-applicatie
5 Session Beans
5.1 Inleiding
5.2 Onderdelen en architectuur van Session
Beans
5.3 Session Beans zonder interface
5.4 Stateless Session Beans
5.4.1 De interfaces
5.4.2 De bean-klasse
5.4.3 Lifecycle van een stateless session bean
5.4.4 Het JAR-bestand
5.4.5 Het deployment
5.4.6 De client-applicatie
5.4.7 De SessionContext
5.4.8 Deployment descriptors
5.5 Stateful Session Beans
5.5.1 De interfaces
5.5.2 De bean-klasse
5.5.3 Lifecycle van een stateful session bean
5.5.4 De client-applicatie
5.5.5 De deployment descriptor
5.6 Singleton Session Beans
5.7 Asynchrone communicatie met Session Beans
6 Dependency injections
6.1 Inleiding
6.2 Environment Entries
6.3 Resource Manager Connection Factories
7 Web Clients
7.1 Inleiding
7.2 Webcomponenten
7.3 Deployment descriptors
7.4 WAR-bestand
7.5 EAR-bestand
8 EJB 3.2 & JPA 2.2
8.1 Inleiding
8.2 Configuratie van de persistence unit
8.3 Entity-klassen
8.4 De entity manager
8.5 Transactiebeheer
8.6 De persistence context
8.6.1 Transaction-scoped persistence context
8.6.2 Extended persistence context
8.6.3 Unsynchronized persistence context
9 Message Driven Beans
9.1 Inleiding
9.2 Messaging-architectuur
9.2.1 Point-to-point-domein
9.2.2 Publish/Subscribe-domein
9.2.3 Synchrone - asynchrone verwerking
9.2.4 De Naming Service
9.3 De configuratie van een Destination
9.4 Java Messaging Service API
9.4.1 Overzicht
9.5 Message Driven Bean
9.6 De externe MDB-client
9.7 EJB als MDB-client
10 Timer Service
10.1 Inleiding
10.2 Programmatische timer
10.3 Configuratieve timer
10.4 Session Bean Timers
10.5 Message Driven Bean Timers
11 Beveiliging
11.1 Inleiding
11.2 Authenticatie
11.2.1 Aanmelden via de webapplicatie
11.2.1.1 Configureren van gebruikers en
groepen
11.2.1.2 Configuratie van de webapplicatie
11.2.2 Programmatisch aanmelden
11.3 Autorisatie
11.3.1 Declaratieve beveiliging
11.3.2 Programmatische beveiliging
12 Transacties
12.1 Inleiding
12.2 Container Managed Transactions
12.2.1 Transaction Scope
12.2.1.1 REQUIRED
12.2.1.2 REQUIRES_NEW
12.2.1.3 MANDATORY
12.2.1.4 NOT_SUPPORTED
12.2.1.5 SUPPORTS
12.2.1.6 NEVER
12.2.2 Stateless Session Beans
12.2.3 Externe diensten
12.2.4 Stateful Session Beans
12.2.5 Message Driven Beans
12.2.6 Entity beans
12.3 Programmatisch transactiebeheer
12.3.1 Bean Managed Transactions
12.3.2 Client Managed Transactions
13 Exception handling
13.1 Inleiding
13.2 Application Exceptions
13.3 System Exceptions
14 Interceptors
14.1 Inleiding
14.2 Interceptor klassen
14.3 Interceptors in de bean-klasse
15 Web Services
15.1 Inleiding
15.2 SOAP Web Services
15.2.1 SOAP
15.2.2 Communicatiepatronen
15.2.3 WSDL
15.2.4 UDDI
15.2.5 SOAP Web Services binnen JEE
15.2.5.1 POJO's als Service Endpoint
15.2.5.2 Session Beans als Service Endpoint
15.2.5.3 Web Services Client Applicatie
15.2.5.4 Web Services Security
15.3 RESTful Web Services
15.3.1 Inleiding: Web API
15.3.2 REST architectuur
15.3.3 Web Services volgens de
REST-architectuur
15.3.3.1 HTTP-protocol
15.3.3.2 URL's
15.3.3.3 URL templates
15.3.3.4 Methoden
15.3.3.5 Representaties van resources
15.3.3.6 Status-codes
15.3.3.7 Verwijzingen
15.3.3.8 Request parameters
15.3.3.9 Documentatie van een REST API
15.3.4 RESTful Web Services met JAX-RS
15.3.4.1 Configuratie van JAX-RS
15.3.4.2 Domeinmodel en Repository
15.3.4.3 EJB als Rest Endpoint
15.3.4.4 Client-toepassingen
15.3.4.5 URL's
15.3.4.6 HTTP-methoden
15.3.4.7 Validatie
15.3.4.8 Mime types en Data binding
16 Richtlijnen & Design patterns
16.1 Inleiding
16.2 Richtlijnen
16.2.1 Remote versus Local Interfaces
16.2.2 Stateful versus stateless session beans
16.3 Design Patterns
16.3.1 Session Façade
16.3.2 Message Façade
16.3.3 Fast Lane en Data Transfer RowSets