IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JSF Java Discussion :

Problème avec la balise <h:inputHidden>


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 20
    Par défaut Problème avec la balise <h:inputHidden>
    Bonjour à tous,

    Dans le formulaire d'une page xhtml JSF, je souhaite remplir un champ caché du Managed Bean (appelons le MB1) qui mappe l'objet à enregistrer du formulaire.

    Je veux le remplir par la valeur d'une propriété d'un autre Managed Bean (appelons le MB2 de scope session).

    J'ai trouvé plusieurs réponses sur Internet : jamais la même façon de procéder. Je les ai toutes essayées. Aucune n'a fonctionné...

    Donc si une personne a déjà fait cela et que cela a fonctionné je lui serai très reconnaissant pour son aide.

    Merci à l'avance.

    Rudy.

  2. #2
    Membre éclairé Avatar de clubist
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2008
    Messages
    217
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Février 2008
    Messages : 217
    Par défaut
    Bonjour,
    faces-config.xml permet de faire l'initialisation des propriétés de managed Bean
    pour votre cas: on pose que la propriété de votre inputHidden dans MB2 est appelé "textCache2" et la propriété de MB1 qui va donner sa valeur à inputHidden est appelé textCache1 donc voila un exemple de configuration de fichier faces-config.xml pour ce scénario:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
     
    <managed-bean>
      <managed-bean-name>MB1</managed-bean-name>
      <managed-bean-class>mb.MB1</managed-bean-class>
      <managed-bean-scope>request</managed-bean-scope>
    </managed-bean>
     
    <managed-bean>
      <managed-bean-name>MB2</managed-bean-name>
      <managed-bean-class>mb.MB2</managed-bean-class>
      <managed-bean-scope>request</managed-bean-scope>
    <managed-property>
      <property-name>textCache2</property-name> 
          <value>#{MIB1.textCache1}</value>
      </managed-property>
      </managed-bean>
    remarque:

    managedBean enregistré avec le scope :
    1- none appelle seulement none
    2- request appelle seulement none request,session et application
    3- session appelle seulement none, session et application
    4- application appelle seulement none et application.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 20
    Par défaut merci
    Je viens juste de voir ta réponse, merci.

  4. #4
    Membre Expert
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    2 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 938
    Par défaut
    Citation Envoyé par clubist Voir le message
    Bonjour,
    faces-config.xml permet de faire l'initialisation des propriétés de managed Bean
    pour votre cas: on pose que la propriété de votre inputHidden dans MB2 est appelé "textCache2" et la propriété de MB1 qui va donner sa valeur à inputHidden est appelé textCache1 donc voila un exemple de configuration de fichier faces-config.xml pour ce scénario:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
     
    <managed-bean>
      <managed-bean-name>MB1</managed-bean-name>
      <managed-bean-class>mb.MB1</managed-bean-class>
      <managed-bean-scope>request</managed-bean-scope>
    </managed-bean>
     
    <managed-bean>
      <managed-bean-name>MB2</managed-bean-name>
      <managed-bean-class>mb.MB2</managed-bean-class>
      <managed-bean-scope>request</managed-bean-scope>
    <managed-property>
      <property-name>textCache2</property-name> 
          <value>#{MIB1.textCache1}</value>
      </managed-property>
      </managed-bean>
    remarque:

    managedBean enregistré avec le scope :
    1- none appelle seulement none
    2- request appelle seulement none request,session et application
    3- session appelle seulement none, session et application
    4- application appelle seulement none et application.
    Et s'il devait récupérer pas une valeur, ni 2 ou 3 de ce bean en session, mais 4 ou plus ? tu vois que ça grossirait ton faces-config? Le plus simple ne serait pas d'avoir une référence complète du bean MB2 en session côté controleur MB1? exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    FacesContext context = FacesContext.getCurrentInstance()
    		.getCurrentInstance();
    mb2 = (MB2) context.getApplication()
    		.createValueBinding("#{nomMB2DansFacesConfig}").getValue(context);
    Object maPremiereValeurCherchee = mb2.getPremiereValeurCherchee();
    ...
    C'est expliqué ici

Discussions similaires

  1. [XHTML] Problème avec des balise de type block
    Par kei-kun41 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 05/06/2006, 13h55
  2. problème avec la balise marquee
    Par lipao17 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 04/01/2006, 14h40
  3. [W3C] Problème avec la balise div et le style "display:none&a
    Par Golork dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 14/11/2005, 20h30
  4. [HTML] Problème avec la balise <mailto>
    Par Taylor² dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 10/10/2005, 16h36
  5. problème avec une balise <A>
    Par leywos dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 13/09/2005, 09h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo