Problème avec UPDATE EJB + JSF
Bonjour,
donc j'ai un tableau ou je recupère une liste de produit
Code:
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:
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:
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