Bonjour,

donc j'ai un tableau ou je recupère une liste de produit

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
52
53
54
   <h:form>
                    <h:dataTable value="#{MaterielApp.materiel}"
                                 var="materiel"
                                 border="1">
                        <h:column>
                            <f:facet name="header">
                                <h:outputText value="Nom"/>
                            </f:facet>
 
                            <h:outputText value="#{materiel.nomProduit}"/>
                        </h:column>
 
                        <h:column>
                            <f:facet name="header">
                                <h:outputText value="Description"/>
                            </f:facet>
                                <h:outputText value="#{materiel.descriptionProduit}"/>
 
                        </h:column>
                        <h:column>
                            <f:facet name="header">
                                <h:outputText value="Emballage"/>
                            </f:facet>
                                <h:outputText value="#{materiel.emballage}"/>
 
                        </h:column>
                        <h:column>
                            <f:facet name="header">
                                <h:outputText value="Emballage"/>
                            </f:facet>
                                <h:outputText value="#{materiel.stockProduit}"/>
 
                        </h:column>
                         <h:column>
                            <f:facet name="header">
                                <h:outputText value="Prix"/>
                            </f:facet>
                                <h:outputText value="#{materiel.coutProduit}"/>
 
                        </h:column>
                        <h:column>
                            <h:commandLink value="Remove" action="#{MaterielRemover.removeProduit}">
    <f:setPropertyActionListener target="#{MaterielRemover.idMateriel}" value="#{materiel.idMateriel}" />
</h:commandLink>
                        </h:column>
                                                <h:column>
  <h:commandLink value="Edit" action="editProduit">
 
     <f:setPropertyActionListener target="#{MaterielEdit.idMateriel}" value="#{materiel.idMateriel}" />
                            </h:commandLink>
                        </h:column>
                    </h:dataTable>
 
                </h:form>
Voici ma classe materielEdit

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
public class MaterielEdit {
 
    private Materiel materiel;
 
    @EJB
    private MaterielService materielService;
 
    private int idMateriel;
 
    public int getIdMateriel() {
        return idMateriel;
    }
 
    public void setIdMateriel(int idMateriel) {
        this.idMateriel = idMateriel;
    }
 
    public MaterielService getMaterielService() {
        return materielService;
    }
 
    public void setMaterielService(MaterielService materielService) {
        this.materielService = materielService;
    }
 
    public String updateProduit(){
 
  getMaterielService().updateMateriel(getMateriel());
    return "listProduitAdmin";
  }
 
      public Materiel getMateriel() {
      System.out.println(">>>>>>>>>>>>>>>>" + getMaterielService().getMateriel(idMateriel));
      materiel = getMaterielService().getMateriel(idMateriel);
        return materiel;
    }
 
    public void setMateriel(Materiel materiel) {
        this.materiel = materiel;
    }
quand je clique sur EDIT j'ai bien mon formulaire avec tous les renseignement du produit

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
           <h:form>
           <h:outputText
                    value="Edition of Produit"/>
            <h:panelGrid columns="3">
 
                <h:outputLabel for="name" value="Name:"/>
                <h:inputText id="name" value="#{MaterielEdit.materiel.nomProduit}"
                             required="true"/>
                <h:message for="name" style="color: red"/>
 
 
                <h:outputLabel for="prix" value="prix : "/>
                <h:inputText id="url" value="#{MaterielEdit.materiel.coutProduit}"
                             size="50"
                             required="true"/>
                <h:message for="prix"/>
 
 
                <h:outputLabel for="stock" value="Stock :"/>
                <h:inputText id="language"
                             value="#{MaterielEdit.materiel.stockProduit}"/>
                <h:message for="stock"/>
 
                <h:outputLabel for="description" value="Description:"/>
                <h:inputText id="description"
                             value="#{MaterielEdit.materiel.descriptionProduit}"
                             required="true"/>
                <h:message for="description"/>
               <h:outputLabel for="id" value="Description:"/>
               <h:inputText id="id"
                             value="#{MaterielEdit.materiel.idMateriel}"
                             />
            </h:panelGrid>
            <br/>
            <br/>
 <h:commandButton value="Update" action="#{MaterielEdit.updateProduit}">
  <f:setPropertyActionListener target="#{MaterielEdit.idMateriel}" value="#{materiel.idMateriel}" />
   </h:commandButton>
        </h:form>
Mais quand je clique sur le bouton UPDATE iva sur MaterielEdit.updateProduit pour mettre a jour mais j'ai cette erreur qui apparait :

type Exception report
message
descriptionThe server encountered an internal error () that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: /EditMateriel.xhtml @32,47 value="#{MaterielEdit.materiel.nomProduit}": Target Unreachable, 'materiel' returned null
root cause
javax.el.PropertyNotFoundException: /EditMateriel.xhtml @32,47 value="#{MaterielEdit.materiel.nomProduit}": Target Unreachable, 'materiel' returned null
note The full stack traces of the exception and its root causes are available in the Sun Java System Application Server 9.1_01 logs.


Merci d'avance