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 :

donnée non récupérée


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Par défaut donnée non récupérée
    Hello,

    Je sèche depuis un petit bout de temps sur un bout de code, lorsque je sélectionne et affiche un élément de ma table tout se passe bien

    lorsque je ferme la fenêtre et sélectionne un autre élément la page affiche les données de l'élément précédant

    voici un bout de ma page jsf

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <ice:panelTab label="Localisation">
     <ice:panelGrid columns="4">
       <ice:outputText value="Lieu dit"></ice:outputText>
       <ice:inputText value="#{sessionBean.selectedParcelle.lieuDit}"></ice:inputText>
    ...
    dans mon managed bean, j'édite un élément de cette manière

    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
     
    Affaire toEdit = rowSelectController.getSelectedAffaire().getAffaire();
    selectedParcelle = toEditgetParcelles().iterator().next();
    if (selectedParcelle == null || selectedParcelle.getId() == 0) {
      LOG.debug("CREATION OF A NEW LOCALISATION FOR EDITING");
      selectedParcelle = new Localisation();
      setSelectedParcelle(selectedParcelle);
      mainParcelle = new Localisation(); 
    }else {
      LOG.debug("GETTING EXISTING LOCALISATION FOR EDITING : "  
      +selectedParcelle.getId() + selectedParcelle.getLieuDit());
      appendDetachedLocalisation(selectedParcelle);
      setSelectedParcelle(selectedParcelle);
      mainParcelle = getLocalisationCopy(toEdit);
    }			
    ...
    ce qui est étonnant c'est le log affiche les bonnes données (celles du nouvelle élément)

    c'est juste que ma page jsf elle, ne contient pas ces bonnes données

  2. #2
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Par défaut
    j ai beau simpllifé le code ca ne marche pas toujours pas je comprend pas d ou ca peut provenir

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    if (toEdit.getParcelles().size() > 0) {
       LOG.debug("PARCELLES SIZE > 0");
       selectedParcelle = toEdit.getParcelles().iterator().next();
       appendDetachedLocalisation(selectedParcelle);
       mainParcelle = getLocalisationCopy(toEdit);				
    }else {
       LOG.debug("PARCELLES SIZE == 0");
       selectedParcelle = new Localisation();
       mainParcelle = new Localisation(); 				
    }

  3. #3
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Par défaut
    toujours ce problème ... je n'arrive pas à comprendre quelle peut être la cause

    j'applique la même méthode pour mes autres onglets et je n'ai pas de problèmes de récupération des valeurs de l'élément sélectionner

    depuis ma page jsf j'accède simplement à mes valeurs en faisait un #{bean.selectedParcelle.attribut}

    dans mon getter getSelectedParcelle() je log l'appelle et celui-ci renvoye la bonne valeur

    Je créer même une table qui ont elles les bonnes valeurs alors que cette table est construite par la récupération de mon ***** de selectedParcelle

    Je log également la méthode setSelectedParcelle pour être sur que celle-ci n'est jamais appellé durant le traîtement

    Je log la récupération de l'objet courrant qui contient cette parcelle (elle la contient bien)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Affaire toEdit = rowSelectController.getSelectedAffaire().getAffaire();
    LOG.debug("toEDIT = \n" + ToStringBuilder.reflectionToString(toEdit));

    le seule moment ou j'affecte la valeur de selectedParcelle est dans ce code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
     
    selectedParcelle = null;
    try {
      selectedParcelle = toEdit.getParcelles().iterator().next();
       if (selectedParcelle == null) {
         selectedParcelle = new Localisation();
         mainParcelle = new Localisation(); 
       }else {
        LOG.debug("SELECTED AFFAIRE : " + toEdit.getId());		  
        LOG.debug("SELECTED LOCALISATION : " + selectedParcelle.getLieuDit() + " " + selectedParcelle.getId());
        appendDetachedLocalisation(selectedParcelle);
        mainParcelle = getLocalisationCopy(toEdit);
       }
    Je suis à cours d'idées, une piste ?

  4. #4
    Membre éclairé
    Inscrit en
    Juillet 2007
    Messages
    456
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 456
    Par défaut
    Essaye de forcer le rafraichissement d'un de tes composants pour qu'il relie le les infos du bean (un inputText par exemple).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    UIComponent c = (UIComponent)FacesContext.getCurrentInstance().getViewRoot().findComponent("IDDELAFORM:IDDUCOMPOSANT");
     
    c.setValue(null);
    c.setSubmittedValue(null);
    Les bonnes info sont-ils affichées dans ce composant ?

  5. #5
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Par défaut
    je test ca demain, merci

  6. #6
    Inactif  
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    2 189
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 189
    Par défaut
    Le problème est que je ne peux pas setter de valeur car il n'y a pas de setter

    mon composant est de type ce:inputText je cherche donc un moynen de le récupérer mais le cast d'un UIComponent en InputTextTag n'est pas possible

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Données de formulaire non récupérées
    Par Christophe P. dans le forum Struts 1
    Réponses: 5
    Dernier message: 02/09/2006, 11h33
  2. Format de base de données non reconnu
    Par Consultant dans le forum Access
    Réponses: 4
    Dernier message: 05/10/2005, 11h32
  3. Comment sélectionner les données non dupliquées
    Par Dnx dans le forum Langage SQL
    Réponses: 5
    Dernier message: 04/10/2005, 11h43
  4. Réponses: 4
    Dernier message: 01/07/2005, 16h20
  5. [CR] Impression de données non issues d'une base de données
    Par jeroe dans le forum SAP Crystal Reports
    Réponses: 3
    Dernier message: 04/04/2005, 09h09

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