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 :

Problem de "facet" et de "columnGroup"


Sujet :

JSF Java

  1. #1
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2008
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2008
    Messages : 102
    Par défaut Problem de "facet" et de "columnGroup"
    Bonjour à tous, mon petit souci concerne un tableau que j'ai modifié en remplaçant mes column de base par des column group et je voudrais par contre conserver le meme comportement.
    Je m'explique :

    Voici mon tableau de base:

    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
     
    	<rich:dataTable value="#{Animator.getList()}"var="a"				columnClasses="colCSS" styleClass="stylCSS" headerClass="headerCSS" footerClass="footerCSS" rowClasses="rowCSS">
     
    					<rich:column styleClass="detailCol">
    						<f:facet name="header">
    							<h:graphicImage url="/img/cross.png" id="deletelink" styleClass="btnDreams" />
    						</f:facet>
    						<h:selectBooleanCheckbox value="#{Animator.deleteMap[a]}" />
    					</rich:column>
     
    					<rich:column styleClass="detailCol">
    						<h:commandButton title="#{messages['detail']}" image="/img/zoom.png" action="#{Animator.showDetail(a)}" styleClass="btnDreams" />
    					</rich:column>
     
    					<rich:column sortOrder="ASCENDING" sortBy="#{a.id}" filterBy="#{a.id}" filterEvent="onkeyup" style="text-align:left;">
    						<f:facet name="header">
    							<h:outputText value="#{messages['workspace.batch.alerte.id']}" />
    						</f:facet>
    						<h:outputText value="#{a.id}" />
    					</rich:column>
    </rich:dataTable
    On a un champs pour trier les listes dans l'entête de la colonne et un sorter.

    Je dois maintenant ajouter d'autres elements dans cette table ce qui m'a obligé a utiliser les columngroup :

    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
     
     
    <rich:dataTable value="#{Animator.getAlertList()}" rows="#{messages['RowsTable']}" id="alertTable" var="a"
    					columnClasses="colCSS" styleClass="stylCSS" headerClass="ceaderCSS" footerClass="footerCSS" rowClasses="rowCSS">
     
    					<f:facet name="header" >
    						<rich:columnGroup>
    							<rich:column styleClass="delCol">
    								<h:graphicImage url="/img/cross.png" id="deletelink" styleClass="btnDreams" />
    							</rich:column>
     
    							<rich:column styleClass="detailCol">
    								<h:graphicImage url="/img/zoom.png" styleClass="btnDreams" />
    							</rich:column>
     
    							<rich:column sortOrder="ASCENDING" sortBy="#{a.id}" filterBy="#{a.id}" filterEvent="onkeyup" style="text-align:left;">
    								<h:outputText value="#{messages['id']}" />
    								<h:outputText value="#{a.id}" />
    							</rich:column>
                                                      </rich:columnGroup>
    					</f:facet>
     
                                         <rich:column>
    						<h:selectBooleanCheckbox value="#{alertListAnimator.deleteAlertMap[a]}" />
    					</rich:column>
     
    					<rich:column>
    						<h:commandButton title="#{messages['detail']}" action="#{Animator.showDetail(a)}" image="/img/zoom.png" styleClass="btnDreams" />
    					</rich:column>
     
    					<rich:column style="text-align:left">
    						<h:outputText value="#{a.id}" style="text-align:left" />
    					</rich:column>
     
     
     
    					<rich:subTable onRowMouseOver="this.style.backgroundColor='#F8F8F8'" onRowMouseOut="this.style.backgroundColor='#{a4jSkin.tableBackgroundColor}'"
    						var="v" value="#{a.getActivitiesAlerts()}">
     
    						<rich:column>
    							<h:selectBooleanCheckbox value="#{Animator.deleteMap[a]}" />
    						</rich:column>
     
    						<rich:column>
    							<h:commandButton title="#{messages['detail']}" image="/img/zoom.png" action="#{Animator.showDetail2(v)}" styleClass="btnDreams" />
    						</rich:column>
     
    						<rich:column>
    						</rich:column>
                                      </rich:subTable>
    </rich:dataTable>
    Voila, ici je ne réussi pas a mettre les mêmes filtres et sorters sur mon columngroup comme sur mes colonnes classiques !

    J'espère que j'ai été clair

    Merci par avance de toute l'aide apportés

  2. #2
    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
    l'ajout de columnsGroup ne change rien à filter et sort, tu les gardes dans column.

  3. #3
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2008
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2008
    Messages : 102
    Par défaut
    Bonjour Sniper,

    Comme indiqué dans mon code ci-dessus dans mon 2ème exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <rich:column sortOrder="ASCENDING" sortBy="#{a.id}" filterBy="#{a.id}" filterEvent="onkeyup" style="text-align:left;">
    	<h:outputText value="#{messages['id']}" />
    	<h:outputText value="#{a.id}" />
    </rich:column>
    => cela ne fonctionne pas dans le columngroup, je n'ai ni le facet, ni le sorter ni le champs de tri !

    D'où mon dilemme

  4. #4
    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
    Pourquoi:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    	<h:outputText value="#{messages['id']}" />
    le header est déjà déclaré dans le columnGroup.

    il faut spécifier le colspan..et ajouter breakBefore à la première colonne.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <f:facet name="header">
    <rich:columnGroup >
    <rich:column colspan="4">
    Group de 4 colonnes
    </rich:column>
    <rich:column breakBefore="true">
    Index
    </rich:column>
    ..
    ..

  5. #5
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2008
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2008
    Messages : 102
    Par défaut
    Tu m'excuseras sniper mais je n'ai pas saisi toutes tes explications :

    "il faut spécifier le colspan..et ajouter breakBefore à la première colonne."

    De quelle premiere colonne tu parles ?

    Je ne vois pas pourquoi ajouter le colspan

  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
    Citation Envoyé par kyryan Voir le message
    Tu m'excuseras sniper mais je n'ai pas saisi toutes tes explications :

    "il faut spécifier le colspan..et ajouter breakBefore à la première colonne."

    De quelle premiere colonne tu parles ?

    Je ne vois pas pourquoi ajouter le colspan
    J'ai un ajouté un bout de code pour que ce soit plus clair, si ça ne l'est toujours pas, regarde l'exemple de Richfaces

  7. #7
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Juin 2008
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2008
    Messages : 102
    Par défaut
    Ok c'est bon pour les sorter et les filtres Merci

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

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