Table of contents : Table des matières......Page 4 Avant-propos......Page 14 À propos de l’auteur......Page 15 Remerciements......Page 16 Introduction......Page 18 Chapitre 1 - Tour d’horizon de Java EE 6......Page 22 Un peu d’histoire......Page 23 Architecture......Page 26 Composants......Page 27 Conteneurs......Page 28 Services......Page 29 Protocoles réseau......Page 31 Paquetages......Page 32 Spécifications de Java EE 6......Page 33 Nouveautés de Java EE 6......Page 35 Élagage......Page 36 Profils......Page 37 Plus simple d’utilisation......Page 38 Plus riche......Page 39 L’application CD-Bookstore......Page 41 JDK 1.6......Page 43 Maven 2......Page 44 JUnit 4......Page 51 Derby 10.5......Page 56 GlassFish v3......Page 59 Installation de GlassFish......Page 65 Résumé......Page 67 Chapitre 2 - Persistance en Java......Page 68 Résumé de la spécification JPA......Page 69 Historique de la spécification......Page 70 Implémentation de référence......Page 71 ORM = Object-Relational Mapping......Page 72 Interrogation des entités......Page 74 Méthodes de rappel et écouteurs......Page 76 Récapitulatif......Page 77 Écriture de l’entité Book......Page 78 Écriture de la classe Main......Page 79 Unité de persistance pour la classe Main......Page 80 Compilation avec Maven......Page 81 Exécution de la classe Main avec Derby......Page 83 Écriture de la classe BookTest......Page 84 Unité de persistance pour la classe BookTest......Page 86 Exécution de la classe BookTest avec Derby intégré......Page 87 Résumé......Page 88 Association d’une entité......Page 90 Configuration par exception......Page 93 Associations élémentaires......Page 94 Tables......Page 95 Clés primaires......Page 97 Attributs......Page 102 Types d’accès......Page 109 Collections de types de base......Page 112 Association des types de base......Page 114 Associations avec XML......Page 116 Objets intégrables......Page 119 Types d’accès d’une classe intégrable......Page 121 Correspondance des relations......Page 123 Relations dans les bases de données relationnelles......Page 124 Relations entre entités......Page 126 Chargement des relations......Page 138 Tri des relations......Page 139 Traduction de l’héritage......Page 143 Stratégies d’héritage......Page 144 Type de classes dans une hiérarchie d’héritage......Page 152 Résumé......Page 156 Chapitre 4 - Gestion des objets persistants......Page 158 Interrogation d’une entité......Page 159 Le gestionnaire d’entités......Page 162 Obtenir un gestionnaire d’entités......Page 164 Contexte de persistance......Page 166 Manipulation des entités......Page 167 L’API de cache......Page 179 JPQL......Page 180 Select......Page 182 Where......Page 184 Group By et Having......Page 186 Suppressions multiples......Page 187 Requêtes......Page 188 Requêtes dynamiques......Page 191 Requêtes nommées......Page 192 Requêtes natives......Page 195 Concurrence......Page 196 Gestion de version......Page 199 Verrouillage optimiste......Page 200 Verrouillage pessimiste......Page 202 Résumé......Page 203 Cycle de vie d’une entité......Page 204 Méthodes de rappel......Page 206 Écouteurs (listeners)......Page 209 Résumé......Page 215 Chapitre 6 - Enterprise Java Beans......Page 216 Introduction aux EJB......Page 217 Types d’EJB......Page 218 Anatomie d’un EJB......Page 219 Conteneur d’EJB......Page 221 Conteneur intégré......Page 222 Injection de dépendances et JNDI......Page 223 Méthodes de rappel et intercepteurs......Page 224 Historique......Page 226 Nouveautés d’EJB 3.1......Page 227 EJB Lite......Page 228 Récapitulatif......Page 230 L’entité Book......Page 231 Le bean de session sans état BookEJB......Page 232 Unité de persistance pour le BookEJB......Page 233 La classe Main......Page 234 Compilation et assemblage avec Maven......Page 235 Déploiement sur GlassFish......Page 237 La classe BookEJBTest......Page 238 Résumé......Page 240 Chapitre 7 - Beans de session et service timer......Page 242 Beans sans état......Page 243 Beans avec état......Page 246 Singletons......Page 249 Modèle des beans de session......Page 256 Appels asynchrones......Page 269 Conteneurs intégrés......Page 271 Le service timer......Page 273 Expressions calendaires......Page 274 Création automatique d’un timer......Page 277 Création d’un timer par programme......Page 278 Résumé......Page 280 Chapitre 8 - Méthodes de rappel et intercepteurs......Page 282 Beans sans état et singletons......Page 283 Beans avec état......Page 284 Méthodes de rappel......Page 286 Intercepteurs......Page 289 Intercepteurs autour des appels......Page 291 Intercepteurs de méthode......Page 294 Intercepteur du cycle de vie......Page 295 Chaînage et exclusion d’intercepteurs......Page 297 Résumé......Page 299 Transactions......Page 300 ACID......Page 301 Transactions locales......Page 302 XA et transactions distribuées......Page 303 Support des transactions avec les EJB......Page 305 Transactions gérées par le conteneur......Page 306 Transactions gérées par le bean......Page 313 Sécurité......Page 315 Principal et rôle......Page 316 Authentification et habilitation......Page 317 Sécurité déclarative......Page 318 Sécurité par programmation......Page 322 Résumé......Page 324 Chapitre 10 - JavaServer Faces......Page 326 Introduction à JSF......Page 327 Pages et composants......Page 328 Convertisseurs et validateurs......Page 330 Beans gérés et navigation......Page 331 Support d’Ajax......Page 332 Bref historique des interfaces web......Page 333 JSF 2.0......Page 334 Récapitulatif......Page 335 L’EJB BookEJB......Page 337 Le bean géré BookController......Page 338 La page newBook.xhtml......Page 339 La page listBooks.xhtml......Page 342 Configuration avec web.xml......Page 344 Compilation et assemblage avec Maven......Page 345 Exécution de l’application......Page 346 Résumé......Page 347 Chapitre 11 - Pages et composants......Page 348 HTML......Page 349 XHTML......Page 351 CSS......Page 352 JavaScript......Page 355 Java Server Pages......Page 358 Directives......Page 359 Scripts......Page 360 Actions......Page 361 Récapitulatif......Page 362 Langage d’expressions (EL)......Page 364 La bibliothèque de marqueurs standard de JSP (JSTL)......Page 366 Actions fondamentales......Page 367 Actions de formatage......Page 368 Actions SQL......Page 370 Actions XML......Page 372 Fonctions......Page 374 Facelets......Page 375 JavaServer Faces......Page 377 Cycle de vie......Page 378 Composants HTML standard......Page 380 Gestion des ressources......Page 391 Composants composites......Page 392 Objets implicites......Page 398 Résumé......Page 400 Le modèle MVC......Page 402 FacesServlet......Page 404 FacesContext......Page 406 Beans gérés......Page 407 Modèle d’un bean géré......Page 408 Navigation......Page 413 Gestion des messages......Page 417 Conversion et validation......Page 419 Convertisseurs......Page 421 Convertisseurs personnalisés......Page 423 Validateurs......Page 424 Validateurs personnalisés......Page 425 Concepts généraux......Page 427 Ajax et JSF......Page 429 Récapitulatif......Page 430 Résumé......Page 435 Chapitre 13 - Envoi de messages......Page 436 JMS......Page 437 Résumé de la spécification des messages......Page 438 EJB 3.1......Page 439 Envoi et réception d’un message......Page 440 Java Messaging Service......Page 442 Point à point......Page 444 Publication-abonnement......Page 445 API JMS......Page 446 Sélecteurs......Page 459 Mécanismes de fiabilité......Page 460 MDB : Message-Driven Beans......Page 463 Le modèle des MDB......Page 464 MDB comme consommateur......Page 469 MDB comme producteur......Page 470 Transactions......Page 472 Gestion des exceptions......Page 473 OrderDTO......Page 474 OrderSender......Page 475 Compilation et assemblage avec Maven......Page 476 Déploiement du MDB dans GlassFish......Page 478 Résumé......Page 479 Chapitre 14 - Services web SOAP......Page 482 Présentation des services web......Page 483 WSDL......Page 484 Résumé de la spécification des services web......Page 485 Spécifications Java EE......Page 486 Appel d’un service web......Page 488 JAXB : Java Architecture for XML Binding......Page 490 Liaison......Page 493 Annotations......Page 495 WSDL......Page 498 SOAP......Page 501 JAX-WS : Java API for XML-Based Web Services......Page 502 Le modèle JAX-WS......Page 503 Appel d’un service web......Page 511 Récapitulatif......Page 513 Le service web CardValidator......Page 514 Compilation et assemblage avec Maven......Page 515 Déploiement dans GlassFish......Page 516 Le consommateur du service web......Page 518 Création des artefacts du consommateur et assemblage avec Maven......Page 519 Résumé......Page 522 Présentation des services web REST......Page 524 URI......Page 525 Représentations......Page 526 HTTP......Page 527 Historique rapide de REST......Page 533 Implémentation de référence......Page 534 Du Web aux services web......Page 535 Interface uniforme......Page 536 Accessibilité......Page 537 Connectivité......Page 538 Sans état......Page 539 Le modèle JAX-RS......Page 540 Écriture d’un service REST......Page 541 Définition des URI......Page 542 Extraction des paramètres......Page 543 Consommation et production des types de contenus......Page 545 Fournisseurs d’entités......Page 547 Méthodes ou interface uniforme......Page 549 Informations contextuelles......Page 551 Gestion des exceptions......Page 553 Récapitulatif......Page 554 L’entité Book......Page 555 Le service REST BookResource......Page 556 Configuration avec web.xml......Page 559 Compilation et assemblage avec Maven......Page 560 Déploiement dans GlassFish......Page 561 Exécution de l’exemple......Page 562 Résumé......Page 563 Index......Page 564