SeamFramework.orgCommunity Documentation

Seam - Les composants contextuels

Un Serveur d'application pour Java Enterprise

2.2.1.CR1


Introduction à JBoss Seam
1. Contribuez à Seam
1. Seam Tutorial
1.1. Using the Seam examples
1.1.1. Running the examples on JBoss AS
1.1.2. Running the examples on Tomcat
1.1.3. Running the example tests
1.2. Your first Seam application: the registration example
1.2.1. Understanding the code
1.2.2. How it works
1.3. Clickable lists in Seam: the messages example
1.3.1. Understanding the code
1.3.2. How it works
1.4. Seam and jBPM: the todo list example
1.4.1. Understanding the code
1.4.2. How it works
1.5. Seam pageflow: the numberguess example
1.5.1. Understanding the code
1.5.2. How it works
1.6. A complete Seam application: the Hotel Booking example
1.6.1. Introduction
1.6.2. Overview of the booking example
1.6.3. Understanding Seam conversations
1.6.4. The Seam Debug Page
1.7. Nested conversations: extending the Hotel Booking example
1.7.1. Introduction
1.7.2. Understanding Nested Conversations
1.8. A complete application featuring Seam and jBPM: the DVD Store example
1.9. Bookmarkable URLs with the Blog example
1.9.1. Using "pull"-style MVC
1.9.2. Bookmarkable search results page
1.9.3. Using "push"-style MVC in a RESTful application
2. Démarrage avec Seam en utilisant seam-gen
2.1. Avant de démarrer
2.2. Configurer un nouveau projet Eclipse
2.3. Création d'une nouvelle action
2.4. Création d'un formulaire avec une action
2.5. Generation d'une application depuis une base de données existante
2.6. Génération d'une application depuis des entitées JPA/EJB3 existantes
2.7. Déploiement d'une application avec un EAR
2.8. Seam et le déploiement incrémental à chaud
2.9. Utilisation de Seam avec JBoss 4.0
2.9.1. Installation de JBoss 4.0
2.9.2. Installation de JSF 1.2 RI
3. Démarrer avec Seam en utilisant JBoss Tools
3.1. Avant de commencer
3.2. Configuration d'un nouveau projet Seam
3.3. Création d'une nouvelle action
3.4. La création d'un formulaire avec une action
3.5. La génération d'une application depuis une base de données existante
3.6. Seam et le déploiement incrémental à chaud avec JBoss Tools
4. Le modèle de composant contextuel
4.1. Les contextes de Seam
4.1.1. Le contexte sans état
4.1.2. Le contexte évenementiel
4.1.3. Le contexte de Page
4.1.4. Le contexte conversationnel
4.1.5. Le contexte de Session
4.1.6. Le contexte de processus métier
4.1.7. Le contexte d'Application
4.1.8. Les variables de contexte
4.1.9. Priorité dans la recherche de contexte
4.1.10. Modèle de concurrence
4.2. Les composants de Seam
4.2.1. Les beans de session sans état
4.2.2. Les Beans de session avec état
4.2.3. Les beans entité
4.2.4. JavaBeans
4.2.5. Les beans conducteur-de-message
4.2.6. L'intercepteur
4.2.7. Les noms de component
4.2.8. Définition de l'étendue de composant
4.2.9. Les composants avec des rôles multiples
4.2.10. Les composants livrés
4.3. La bijection
4.4. Les méthode du cycle de vie
4.5. Installation conditionelle
4.6. Mettre des traces
4.7. Les interfaces Mutable et @ReadOnly
4.8. Fabrique et composants gestionnaire
5. Configuring Seam components
5.1. Configuring components via property settings
5.2. Configuring components via components.xml
5.3. Fine-grained configuration files
5.4. Configurable property types
5.5. Using XML Namespaces
6. Evènements, intercepteurs et gestion des exceptions
6.1. Les évènements de Seam
6.2. Les actions de page
6.3. Les paramètres de page
6.3.1. La liaison des paramètres de requêtes avec le modèle
6.4. La propagation des paramètres de requêtes
6.5. La ré-écriture des URL avec les paramètres de page
6.6. La conversion et la validation
6.7. La navigation
6.8. Les fichiers bien dimmensionnés pour la navigation, les actions de page et les paramêtres
6.9. Les évènements conducteur de composant
6.10. Les évènements contextuels
6.11. Les intercepteurs de Seam
6.12. La gestion des exceptions
6.12.1. Les exceptions et les transactions
6.12.2. Activer la gestion d'exception de Seam
6.12.3. Utilisation des annotations pour la gestion d'exception
6.12.4. Utilisation d'XML pour la gestion d'exception
6.12.5. Quelques exceptions communes
7. Les conversations et le gestionnaire de l'espace de travail
7.1. Le modèle conversationnel de Seam
7.2. Les conversations liées
7.3. Démarrage des conversations avec les requêtes GET
7.4. Demander une conversation à exécution longue
7.5. L'utilisation de <s:link> et de <s:button>
7.6. Message de succès
7.7. Utilisation d'un identifiant de conversation "explicite"
7.8. La création d'une conversation explicite
7.9. Redirection vers une conversation explicite
7.10. Le gestionnaire d'espace de travail
7.10.1. Le gestionaire d'espace de trvail et la navigation JSF
7.10.2. Le gestionnaire d'espace de travail et l'enchainement de page jPDL
7.10.3. Le commutateur de conversation
7.10.4. La liste de conversation
7.10.5. Le fil d'ariane
7.11. Les composants conversationnels et la liaison avec les composants JSF
7.12. Les appels concurentiels de composants conversationnels
7.12.1. Comment allons nous construire notre application AJAX conversationnelle?
7.12.2. La gestion des erreurs
7.12.3. RichFaces (Ajax4jsf)
8. L'enchainement des pages et les processus métiers
8.1. L'enchainement de page dans Seam
8.1.1. Les deux modèles de navigation
8.1.2. Seam et le bouton précédent
8.2. Utilisation des enchainements de page jPDL
8.2.1. Installation des enchainements de page
8.2.2. Démarrage des enchainements de pages
8.2.3. Les noeuds de page et transitions
8.2.4. Controler le flot
8.2.5. Terminer le flot
8.2.6. La composition de l'enchainement de page
8.3. La gestion des processus métier dans Seam
8.4. Utilisation des définitions de processus métier jPDL
8.4.1. Installation des définition de processus
8.4.2. Initialisation des identifiants des acteurs
8.4.3. Initialisation d'un processus métier
8.4.4. Assigner une tâche
8.4.5. Liste des tâches
8.4.6. Réalisation d'une tâche
9. Seam and Object/Relational Mapping
9.1. Introduction
9.2. Seam managed transactions
9.2.1. Disabling Seam-managed transactions
9.2.2. Configuring a Seam transaction manager
9.2.3. Transaction synchronization
9.3. Seam-managed persistence contexts
9.3.1. Using a Seam-managed persistence context with JPA
9.3.2. Using a Seam-managed Hibernate session
9.3.3. Seam-managed persistence contexts and atomic conversations
9.4. Using the JPA "delegate"
9.5. Using EL in EJB-QL/HQL
9.6. Using Hibernate filters
10. JSF form validation in Seam
11. L'intégration avec Groovy
11.1. Introduction à Groovy
11.2. L'écriture d'applications Seam en Groovy
11.2.1. Ecriture de composants en Groovy
11.2.2. seam-gen
11.3. Le déploiement
11.3.1. Le déploiement de code Groovy
11.3.2. Le déploiement de fichier .groovy natif au moment du déploiement
11.3.3. seam-gen
12. Writing your presentation layer using Apache Wicket
12.1. Adding Seam to your wicket application
12.1.1. Bijection
12.1.2. Orchestration
12.2. Setting up your project
12.2.1. Runtime instrumentation
12.2.2. Compile-time instrumentation
12.2.3. The @SeamWicketComponent annotation
12.2.4. Defining the Application
13. Le serveur d'application Seam
13.1. Introduction
13.2. Les objets Home
13.3. Le objets Query
13.4. Les objets Controleur
14. Seam et Jboss Rules
14.1. Installation des règles
14.2. L'utilisation des règles d'un composant de Seam
14.3. L'utilisation des règles depuis une définition de processus jBPM
15. Security
15.1. Overview
15.2. Disabling Security
15.3. Authentication
15.3.1. Configuring an Authenticator component
15.3.2. Writing an authentication method
15.3.3. Writing a login form
15.3.4. Configuration Summary
15.3.5. Remember Me
15.3.6. Handling Security Exceptions
15.3.7. Login Redirection
15.3.8. HTTP Authentication
15.3.9. Advanced Authentication Features
15.4. Identity Management
15.4.1. Configuring IdentityManager
15.4.2. JpaIdentityStore
15.4.3. LdapIdentityStore
15.4.4. Writing your own IdentityStore
15.4.5. Authentication with Identity Management
15.4.6. Using IdentityManager
15.5. Error Messages
15.6. Authorization
15.6.1. Core concepts
15.6.2. Securing components
15.6.3. Security in the user interface
15.6.4. Securing pages
15.6.5. Securing Entities
15.6.6. Typesafe Permission Annotations
15.6.7. Typesafe Role Annotations
15.6.8. The Permission Authorization Model
15.6.9. RuleBasedPermissionResolver
15.6.10. PersistentPermissionResolver
15.7. Permission Management
15.7.1. PermissionManager
15.7.2. Permission checks for PermissionManager operations
15.8. SSL Security
15.8.1. Overriding the default ports
15.9. CAPTCHA
15.9.1. Configuring the CAPTCHA Servlet
15.9.2. Adding a CAPTCHA to a form
15.9.3. Customising the CAPTCHA algorithm
15.10. Security Events
15.11. Run As
15.12. Extending the Identity component
15.13. OpenID
15.13.1. Configuring OpenID
15.13.2. Presenting an OpenIdDLogin form
15.13.3. Logging in immediately
15.13.4. Deferring login
15.13.5. Logging out
16. Internationnalisation, les langues locales et les thèmes
16.1. Internationnalisation de votre application.
16.1.1. La configuration du serveur d'application
16.1.2. Les chaines de caractères de l'application traduites
16.1.3. D'autres réglages pour l'encodage
16.2. Les locales
16.3. Les labels
16.3.1. La définition des labels
16.3.2. L'affichage des labels
16.3.3. Les messages Faces
16.4. Les fuseaux horaires
16.5. Les thèmes
16.6. La préservation des préférences de langue et de thème via des cookies
17. Seam Text
17.1. Basic fomatting
17.2. Entering code and text with special characters
17.3. Links
17.4. Entering HTML
17.5. Using the SeamTextParser
18. Génération iText PDF
18.1. Utilisation du support PDF
18.1.1. La création d'un document
18.1.2. Les éléments d textes basiques
18.1.3. Entêtes et pieds de page
18.1.4. Les chapitres et les sections
18.1.5. Les listes
18.1.6. Les tableaux
18.1.7. Les constantes du document
18.2. Diagrammes
18.3. Les codes Bar.
18.4. Remplissage de formulaires
18.5. Le rendu des composants Swing/AWT
18.6. La configuration de iText
18.7. Pour plus de documentation
19. The Microsoft® Excel® spreadsheet application
19.1. Le support d'The Microsoft® Excel® spreadsheet application
19.2. La création d'une simple classeur de travail
19.3. Les Workbooks
19.4. Les feuilles de calculs
19.5. Les colonnes
19.6. Les cellules
19.6.1. La validation
19.6.2. Masque de formatage
19.7. Les formules
19.8. Les images
19.9. Les hyperliens
19.10. Les entêtes et les pieds de page
19.11. Les zones d'impressions et les titres
19.12. Les commandes du classeur de calcul
19.12.1. Le regroupement
19.12.2. Saut de page
19.12.3. La fusion
19.13. Exportateur de tableau de données
19.14. Les polices et les calques
19.14.1. Les liens vers les feuilles de styles
19.14.2. Les polices
19.14.3. Les bordures
19.14.4. Arrière plan
19.14.5. Les réglages de la colonne
19.14.6. Les réglages de la cellule
19.14.7. L'exportateur de base de données
19.14.8. Les exemples de calques
19.14.9. Les limitations
19.15. Internationalisation
19.16. Les liens et de la documentation additionnelle
20. RSS support
20.1. Installation
20.2. Generating feeds
20.3. Feeds
20.4. Entries
20.5. Links and further documentation
21. Email
21.1. Creating a message
21.1.1. Attachments
21.1.2. HTML/Text alternative part
21.1.3. Multiple recipients
21.1.4. Multiple messages
21.1.5. Templating
21.1.6. Internationalisation
21.1.7. Other Headers
21.2. Receiving emails
21.3. Configuration
21.3.1. mailSession
21.4. Meldware
21.5. Tags
22. Asynchronisme et messagerie
22.1. Messagerie dans Seam
22.1.1. La configuration
22.1.2. L'expédition de messages
22.1.3. Réception des messages en utilisant tout bean conducteur de message
22.1.4. La réception des message dans le client
22.2. Asynchronisme
22.2.1. Le sméthodes assynchrones
22.2.2. Les méhtodes assynchrones avec le Dispatcher Quartz
22.2.3. Les évènements assynchrones
22.2.4. La gestion des exceptions pour les appels assynchrones
23. Mise en cache
23.1. Utilisation de JBossCache dans Seam
23.2. La mise en cache de fragment de page
24. Web Services
24.1. Configuration and Packaging
24.2. Conversational Web Services
24.2.1. A Recommended Strategy
24.3. An example web service
24.4. RESTful HTTP webservices with RESTEasy
24.4.1. RESTEasy configuration and request serving
24.4.2. Resources as Seam components
24.4.3. Securing resources
24.4.4. Mapping exceptions to HTTP responses
24.4.5. Exposing entities via RESTful API
24.4.6. Testing resources and providers
25. Remoting
25.1. Configuration
25.2. The "Seam" object
25.2.1. A Hello World example
25.2.2. Seam.Component
25.2.3. Seam.Remoting
25.3. Client Interfaces
25.4. The Context
25.4.1. Setting and reading the Conversation ID
25.4.2. Remote calls within the current conversation scope
25.5. Batch Requests
25.6. Working with Data types
25.6.1. Primitives / Basic Types
25.6.2. JavaBeans
25.6.3. Dates and Times
25.6.4. Enums
25.6.5. Collections
25.7. Debugging
25.8. Handling Exceptions
25.9. The Loading Message
25.9.1. Changing the message
25.9.2. Hiding the loading message
25.9.3. A Custom Loading Indicator
25.10. Controlling what data is returned
25.10.1. Constraining normal fields
25.10.2. Constraining Maps and Collections
25.10.3. Constraining objects of a specific type
25.10.4. Combining Constraints
25.11. Transactional Requests
25.12. JMS Messaging
25.12.1. Configuration
25.12.2. Subscribing to a JMS Topic
25.12.3. Unsubscribing from a Topic
25.12.4. Tuning the Polling Process
26. Seam et le Google Web Toolkit
26.1. La configuration
26.2. La préparation de votre composant
26.3. Interception deu widget GWT vers un composant de Seam
26.4. Les cibles Ant GWT
27. Spring Framework integration
27.1. Injecting Seam components into Spring beans
27.2. Injecting Spring beans into Seam components
27.3. Making a Spring bean into a Seam component
27.4. Seam-scoped Spring beans
27.5. Using Spring PlatformTransactionManagement
27.6. Using a Seam Managed Persistence Context in Spring
27.7. Using a Seam Managed Hibernate Session in Spring
27.8. Spring Application Context as a Seam Component
27.9. Using a Spring TaskExecutor for @Asynchronous
28. L'intégration Guice
28.1. La création d'un composant hybride Seam-Guice
28.2. La configuration d'une injection
28.3. L'utilisation de multiples injecteurs
29. Hibernate Search
29.1. Introduction
29.2. La configuration
29.3. Utilisation
30. Configuring Seam and packaging Seam applications
30.1. Basic Seam configuration
30.1.1. Integrating Seam with JSF and your servlet container
30.1.2. Using Facelets
30.1.3. Seam Resource Servlet
30.1.4. Seam servlet filters
30.1.5. Integrating Seam with your EJB container
30.1.6. Don't forget!
30.2. Using Alternate JPA Providers
30.3. Configuring Seam in Java EE 5
30.3.1. Packaging
30.4. Configuring Seam in J2EE
30.4.1. Boostrapping Hibernate in Seam
30.4.2. Boostrapping JPA in Seam
30.4.3. Packaging
30.5. Configuring Seam in Java SE, without JBoss Embedded
30.6. Configuring Seam in Java SE, with JBoss Embedded
30.6.1. Installing Embedded JBoss
30.6.2. Packaging
30.7. Configuring jBPM in Seam
30.7.1. Packaging
30.8. Configuring SFSB and Session Timeouts in JBoss AS
30.9. Running Seam in a Portlet
30.10. Deploying custom resources
31. Les annotations Seam
31.1. Les annotations pour la définition des composants.
31.2. Les annotations pour les bijections
31.3. Les annotations pour les méthodes de cycle de vie.
31.4. Les annotations pour la démarcation de contexte
31.5. Les annotations utilisées avec les composants JavaBean Seam dans une environnement JEE
31.6. Les annotations pour les exceptions
31.7. Les annotations pour Seam Remoting
31.8. Les annotations pour les intercepteurs de Seam.
31.9. Les annotations pour l'asynchronicité
31.10. Les annotations utilisés avec JSF
31.10.1. Les annotations pour dataTable
31.11. Les metas-annotations pour le databinding
31.12. Les annotations pour le packaging
31.13. Les annotations pour l'intégration avec le conteneur de Servlets
32. Les composants livrés par Seam
32.1. Les composant d'injection de contexte
32.2. Les composants liés à JSF
32.3. Les composants utilitaires
32.4. Les composants pour l'internationnalisation et les thèmes
32.5. Components for controlling conversations
32.6. jBPM-related components
32.7. Security-related components
32.8. JMS-related components
32.9. Mail-related components
32.10. Infrastructural components
32.11. Miscellaneous components
32.12. Special components
33. Les contrôles JSF de Seam
33.1. Les balises
33.1.1. Les contrôle de navigation
33.1.2. Les convertisseurs et les validateurs
33.1.3. Le formatage
33.1.4. Le texte de Seam
33.1.5. Le support de formulaire
33.1.6. Divers
33.2. Les annotations
34. JBoss EL
34.1. Les expressions paramétisées
34.1.1. Utilisation
34.1.2. Les limitations et les astuces
34.2. La projection
35. Mise en cluster et Mise en pause EJB
35.1. Mise en cluster
35.1.1. La programmation pour la mise en cluster
35.1.2. Le déploiement d'une application Seam dans un cluster de JBoss AS avec la réplication de session
35.1.3. La validation de service distributée d'une application s'exécutant dans un cluster de JBoss AS
35.2. Mise en pause EJB et le ManagedEntityInterceptor
35.2.1. La frictions entre la mise en pause et la persistance
35.2.2. Cas d'utilisation #1: Survivre à la mise en pause EJB
35.2.3. Cas d'utilisation #2: La survie de la réplication de la session HTTP
35.2.4. Emballage du ManagedEntityInterceptor
36. Performance Tuning
36.1. Bypassing Interceptors
37. Testing Seam applications
37.1. Unit testing Seam components
37.2. Integration testing Seam components
37.2.1. Using mocks in integration tests
37.3. Integration testing Seam application user interactions
37.3.1. Configuration
37.3.2. Using SeamTest with another test framework
37.3.3. Integration Testing with Mock Data
37.3.4. Integration Testing Seam Mail
38. Seam tools
38.1. jBPM designer and viewer
38.1.1. Business process designer
38.1.2. Pageflow viewer
39. Seam on BEA's Weblogic
39.1. Installation and operation of Weblogic
39.1.1. Installing 10.3
39.1.2. Creating your Weblogic domain
39.1.3. How to Start/Stop/Access your domain
39.1.4. Setting up Weblogic's JSF Support
39.2. The jee5/booking Example
39.2.1. EJB3 Issues with Weblogic
39.2.2. Getting the jee5/booking Working
39.3. The jpa booking example
39.3.1. Building and deploying jpa booking example
39.3.2. What's different with Weblogic 10.x
39.4. Deploying an application created using seam-gen on Weblogic 10.x
39.4.1. Running seam-gen setup
39.4.2. What to change for Weblogic 10.X
39.4.3. Building and Deploying your application
40. Seam on IBM's WebSphere AS v7
40.1. WebSphere AS environment and version recommendation
40.2. Configuring the WebSphere Web Container
40.3. Seam and the WebSphere JNDI name space
40.3.1. Strategy 1: Specify which JNDI name Seam must use for each Session Bean
40.3.2. Strategy 2: Override the default names generated by WebSphere
40.3.3. Strategy 3: Use EJB references
40.4. Configuring timeouts for Stateful Session Beans
40.5. The jee5/booking example
40.5.1. Building the jee5/booking example
40.5.2. Deploying the jee5/booking example
40.5.3. Deviation from the original base files
40.6. The jpa booking example
40.6.1. Building the jpa example
40.6.2. Deploying the jpa example
40.6.3. Deviation from the generic base files
41. Seam avec le serveur d'application GlassFish
41.1. L'environement GlassFish et les informations de déploiement
41.1.1. Installation
41.2. L'exemple jee5/booking
41.2.1. Compilation de l'exemple jee5/booking
41.2.2. Le déploiement de l'application dans GlassFish
41.3. L'exemple de réservation jpa
41.3.1. La construction de l'exemple jpa
41.3.2. Le déploiement de l'exemple jpa
41.3.3. Ce qui est différent pour GlassFish v2 UR2
41.4. Le déploiement d'une application générée par seam-gen sur GlassFish v2 UR2
41.4.1. Exécution du configurateur seam-gen
41.4.2. Les modifications nécéssaires pour le déploiement dans GlassFish
42. Les dépendances
42.1. Les dépendances du JDK
42.1.1. Les considérations sur le JDK6 de Sun
42.2. Les dépendans de projet
42.2.1. Noyau
42.2.2. Les RichFaces
42.2.3. Seam Mail
42.2.4. Seam PDF
42.2.5. Seam Microsoft® Excel®
42.2.6. Le support des RSS de Seam
42.2.7. JBoss Rules
42.2.8. JBPM
42.2.9. GWT
42.2.10. Spring
42.2.11. Groovy
42.3. La gestion des dépendances en utilisant Maven