Comment remplacer @ManagedBean / @ViewScope en CDI en JSF 2.0/2.1

Je suis actuellement en train d'évaluer Java EE 6 /JSF 2.1 avec RichFaces.

Un haricot qui est déclarée comme

@ManagedBean
@ViewScoped
  1. Obtient un IDENTIFIANT (à préparer par exemple une opération de suppression).
  2. Via JSF une fenêtre de confirmation s'affiche.
  3. Si l'utilisateur confirme, la suppression de la méthode est invoquée et supprime la ligne dont l'ID est stocké dans l'étape 1.

Depuis CDI haricots n'ont pas ViewScope j'ai essayé de déclarer le bean:

@Named
@ConversationScoped

Maintenant le traitement échoue à l'étape 3. parce que la valeur qui a été définie lors de l'étape 1 (vérifié) n'est plus disponible.

Dois-je utiliser Conversation.begin() et Conversation.end() méthodes?

Si oui, où serait bon endroit pour les invoquer?

  • Pour une référence future: dans JSF 2.2 il y a un CDI compatible portée de vue dans le noyau de la JSF.
InformationsquelleAutor stacker | 2013-01-17