Bonjour,
J’ai n'arrive pas à mettez a jour une partie de ma JSF (le panel qui contient des champs texte) en plus je n'ai pas de message qui dit qu'il y un id qui n'est pas reconnu, pas de message je suis dans le flous...
En plus ce que j'ai remarqué c'est que
Ma particularités c’est que j'utiliser des composant composite pour réaliser un sorte de bouton qui me ramène un DataTable dans une Dialogue et au choix de la ligne il remplit des champs Texte qui sont dans mon panel, pour ce là j’utilise l'évenement onRowSelectUpdate.
Je voudrais savoir s'il y a une solution à ce problème ? (j'ai utilisé le @form, sa met à jour met champs texte mais ça me cause un autre problème celui de ressortir plusieurs fois la boit de dialogue une sorte de boucle de update donc j'évite de l'utiliser le @form)
Aussi je voudrais savoir si j'ai male utiliser tout sais propriété parce que je ne domine pas totalement tout leur impacte (un peu débutant JSF et Primefaces)
PS: voilà mon code
Ma page JSF que j'utilise:
-----------
-----------
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 <?xml version='1.0' encoding='UTF-8' ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <ui:composition template="/resources/templates/newTemplatePage.xhtml" xmlns="http://www.w3.org/1999/xhtml" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core" xmlns:p="http://primefaces.prime.com.tr/ui" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:elit="http://java.sun.com/jsf/composite/elit" > <ui:define name="contenu"> <h:form id="formInputM" prependId="false" > <!-- ! Important ??? --> <elit:inputSelectMultiple _id="selectMultiple_wilaya" label="inputText" icon="ui-icon-person" > <p:inputText id="idWilaya" value="#{labCtrl.listSelectWilaya.selectedEnregistrement.id}" /><p:watermark for="idWilaya" value="0" /> <p:inputText id="libWilaya" value="#{labCtrl.listSelectWilaya.selectedEnregistrement.libeller}" /><p:watermark for="libWilaya" value="libeller1" /> </elit:inputSelectMultiple> <elit:tableSelectMultiple _id="selectMultiple_wilaya" label="Select Code Wilaya" emptyMessage="Actualiser la table ou Modifier votre filtre" showTitleDialog="true" handleTableRud="#{labCtrl.listSelectWilaya}" > <p:column sortBy="#{item.id}" filterBy="#{item.id}" > <f:facet name="header"> <h:outputText value="Code Wilaya" /> </f:facet> <h:outputText value="#{item.id}" /> </p:column> <p:column sortBy="#{item.libeller}" filterBy="#{item.libeller}" > <f:facet name="header"> <h:outputText value="Libellé" /> </f:facet> <h:outputText value="#{item.libeller}" /> </p:column> </elit:tableSelectMultiple> </h:form> </ui:define> </ui:composition>
--définition de la balise : tableSelectMultiple--
----
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 <?xml version='1.0' encoding='UTF-8' ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:composite="http://java.sun.com/jsf/composite" xmlns:p="http://primefaces.prime.com.tr/ui" > <!-- INTERFACE --> <composite:interface> <composite:attribute name="_id" required="true" ></composite:attribute> <composite:attribute name="label" required="true" ></composite:attribute> <composite:attribute name="icon" required="true" ></composite:attribute> </composite:interface> <!-- IMPLEMENTATION --> <composite:implementation > <p:panel id="#{cc.attrs._id}" > <composite:insertChildren id="inputSelectMultiple" ></composite:insertChildren> <p:commandButton id="person" oncomplete="InsererFrDialogue.show()" image="#{cc.attrs.icon}" immediate="true" title="#{cc.attrs.label}" update="tableVar" /> </p:panel> </composite:implementation> </html>
--définition de la balise : tableSelect--
----
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 <?xml version='1.0' encoding='UTF-8' ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:composite="http://java.sun.com/jsf/composite" xmlns:p="http://primefaces.prime.com.tr/ui" > <!-- INTERFACE --> <composite:interface> <composite:attribute name="emptyMessage" required="true" ></composite:attribute> <composite:attribute name="handleTableRud" required="true" ></composite:attribute> <composite:attribute name="label" required="true" ></composite:attribute> <composite:attribute name="_id" required="true" ></composite:attribute> <composite:attribute name="showTitleDialog" required="false" default="false" ></composite:attribute> </composite:interface> <!-- IMPLEMENTATION --> <composite:implementation > <p:dialog widgetVar="InsererFrDialogue" resizable="false" position="center" modal="true" header="#{cc.attrs.label}" showHeader="#{cc.attrs.showTitleDialog}" minWidth="400" > <p:commandButton value="Actualiser la table" action="#{cc.attrs.handleTableRud.doGetAllEnregistrement}" update="tableVar"/> <p:dataTable id="tableVar" var="item" value="#{cc.attrs.handleTableRud.listEnregistrement}" widgetVar="LaTable" paginator="true" rows="10" selectionMode="single" emptyMessage="#{cc.attrs.emptyMessage}" onRowSelectUpdate="#{cc.attrs._id}" onRowSelectComplete="InsererFrDialogue.hide()" rowSelectListener="#{cc.attrs.handleTableRud.onSelectionerEnregistrement}" rowEditListener="#{cc.attrs.handleTableRud.onEditerEnregistrement}" > <composite:insertChildren id="colonneTableRud" /> </p:dataTable> </p:dialog> </composite:implementation> </html>
Cordialement
B.REDOUANE
Partager