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 :

[RichFaces] Bug avec SuggestionBox dans dataTable


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    10
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 10
    Par défaut [RichFaces] Bug avec SuggestionBox dans dataTable
    Bonjour,

    J'ai implémenté une suggestionbox dans un tableau.
    J'ai un bouton Add permettant d'ajouter une ou plusieurs lignes à la fois dans le tableau.

    Si on ajoute une ligne, la suggestionbox marche parfaitement

    Par contre, si on ajoute 2 lignes en une passe, la suggestionBox de la deuxième ligne marche mais celle de la premiere ne s'affiche pas.

    Avez vous des idées?

    Merci d'avance

  2. #2
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    Bon, j'ai repris le problème en main.
    Là, je bute toujours sur ce problème plus que louche !

    J'ai réussi à faire fonctionner l'ensemble dans certaines conditions (non satisfaisantes), mais j'ai un souci énorme quand même avec ces suggestion boxes.
    Nous utilisons la dataTable de RichFaces, et en plus de cela, je positionne des checkboxes en tête de ligne pour permettre la sélection multiple de lignes, chose qui fonctionne habituellement très bien.

    Voilà un code qui va fonctionner :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <rich:dataTable id="table" value="#{myBean.trucs}">
        <rich:column>
            <f:facet name="header">
                <rich:spacer/>
            </f:facet>
            <h:selectBooleanCheckbox/>
        </rich:column>
        ... // Autres colonnes, dont celle contenant la suggestion box.
    </rich:dataTable>
    Voilà le code qui ne fonctionne pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <rich:dataTable id="table" value="#{myBean.trucs}">
        <rich:column>
            <f:facet name="header">
                <h:selectBooleanCheckbox/>
            </f:facet>
            <h:selectBooleanCheckbox/>
        </rich:column>
        ... // Autres colonnes, dont celle contenant la suggestion box.
    </rich:dataTable>
    La seule différence ? La présence d'une checkbox dans l'entête de la colonne !!!
    Le comportement est vraiment bizarre en plus : Si j'ai trois lignes sur ma dataTable, seule la suggestion box de la 3e ligne va fonctionner normalement, mais pas celles des 2 premières...

    Une idée sur ce truc vraiment bizarre ?
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  3. #3
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    Précision qui a son importance :

    Quand on dit que ça ne marche pas sur les premières lignes du tableau, je dirais plutôt que la suggestion box ne s'affiche pas. En effet, tout semble correct : la méthode sur le bean est bien appelée, et en utilisant IE Developper Toolbar, je vois que le DIV et la IFRAME (créée que pour les navigateurs IE) sont bien créés pour la suggestion, mais la boite de suggestion ne s'affiche pas !
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  4. #4
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    Bon, j'ai posté mon problème sur le forum de RichFaces, parce que là, ça dépasse l'entendement.

    Voici le code qui marche :

    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
    18
    19
    20
    21
    22
     
    <h:form>
        <rich:dataTable value="#{fake.elements}" var="elt">
            <rich:column>
                <f:facet name="header">
                    <rich:spacer/>
                </f:facet>
                <h:selectBooleanCheckbox/>
            </rich:column>
            <rich:column>
                <f:facet name="header">
                    <h:outputText value="Description"/>
                </f:facet>
                <h:inputText id="sugg" value="#{elt.description}" styleClass="std"/>
                <rich:suggestionbox height="200" width="200" for="sugg" suggestionAction="#{fake.autocomplete}" var="suggest">
                    <h:column>
                        <h:outputText value="#{suggest.description}"/>
                    </h:column>
                </rich:suggestionbox>
            </rich:column>
        </rich:dataTable>
    </h:form>
    et celui qui ne marche pas :

    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
    18
    19
    20
    21
    22
     
    <h:form>
        <rich:dataTable value="#{fake.elements}" var="elt">
            <rich:column>
                <f:facet name="header">
                    <h:selectBooleanCheckbox/>
                </f:facet>
                <h:selectBooleanCheckbox/>
            </rich:column>
            <rich:column>
                <f:facet name="header">
                    <h:outputText value="Description"/>
                </f:facet>
                <h:inputText id="sugg" value="#{elt.description}" styleClass="std"/>
                <rich:suggestionbox height="200" width="200" for="sugg" suggestionAction="#{fake.autocomplete}" var="suggest">
                    <h:column>
                        <h:outputText value="#{suggest.description}"/>
                    </h:column>
                </rich:suggestionbox>
            </rich:column>
        </rich:dataTable>
    </h:form>
    La seule différence réside dans le header de la colonne contenant les checkboxes...
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  5. #5
    Rédacteur
    Avatar de romaintaz
    Homme Profil pro
    Java craftsman
    Inscrit en
    Juillet 2005
    Messages
    3 790
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Java craftsman
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2005
    Messages : 3 790
    Par défaut
    C'est marrant cette erreur, parce qu'en écrivant d'abord toutes les entêtes, puis ensuite les contenus des colonnes, ça fonctionne à peu près (excepté que pour les lignes de 1 à N-1, le suggestion box ne s'affiche qu'après 2 lettres tapées). Autrement dit avec ce code, ça fonctionne :

    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    <h:form>
        <rich:dataTable value="#{fake.elements}" var="elt">
            <f:facet name="header">
                <rich:columnGroup>
                    <rich:column>
                        <h:selectBooleanCheckbox/>
                    </rich:column>
                    <rich:column>
                        <h:outputText value="Description"/>
                    </rich:column>
                </rich:columnGroup>
            </f:facet>
     
            <rich:column>
                <h:selectBooleanCheckbox/>
            </rich:column>
            <rich:column>
                <h:inputText id="sugg" value="#{elt.description}" styleClass="std"/>
                <rich:suggestionbox height="200" width="200" for="sugg" suggestionAction="#{fake.autocomplete}" var="suggest">
                    <h:column>
                        <h:outputText value="#{suggest.description}"/>
                    </h:column>
                </rich:suggestionbox>
            </rich:column>
        </rich:dataTable>
    </h:form>
    Franchement, si quelqu'un a une idée du problème, il aura ma reconnaissance éternelle jusqu'à la fin de la semaine !
    Nous sommes tous semblables, alors acceptons nos différences !
    --------------------------------------------------------------
    Liens : Blog | Page DVP | Twitter
    Articles : Hudson | Sonar | Outils de builds Java Maven 3 | Play! 1 | TeamCity| CitConf 2009
    Critiques : Apache Maven

  6. #6
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    et si tu force le nombre de caractere à 1.. dans la suggestionBox?


Discussions similaires

  1. Bugs avec QRadioButton dans des QGroupBox
    Par Deamon dans le forum Qt
    Réponses: 2
    Dernier message: 07/06/2010, 09h26
  2. bug avec Find dans une function
    Par paiva44 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 05/01/2010, 18h04
  3. Réponses: 3
    Dernier message: 16/04/2008, 16h10
  4. Réponses: 7
    Dernier message: 27/02/2008, 11h09
  5. Réponses: 3
    Dernier message: 26/11/2007, 12h11

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