Bonjour,
Je cherche à créer un client via JSF pour l'afficher dans un dataTable.
Je dois utiliser la fonctionnalité de JSF pour créer le client. Autrement dit, je ne dois pas faire Client c = new Client(nom, prenom);
Dans la vue, j'ai "clientEdition.jsp"
Dans la couche présentation, j'ai "clientEditionBean"
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 <f:view> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <link href="bootstrap/css/bootstrap.css" rel="stylesheet"> <link href="bootstrap/css/bootstrap-responsive.css" rel="stylesheet"> <link href="bootstrap/css/docs.css" rel="stylesheet"> <link href="bootstrap/js/google-code-prettify/prettify.css" rel="stylesheet"> <title>JSP Page</title> </head> <body> <h:form id="EditionClient"> <h:outputLabel id="labelName" for="nom" value="Nom"/> <h:inputText id="nom" required="true" value="#{clientEditionBean.client.nom}"/> <h:outputLabel id="labelFirstName" for="prenom" value="Prénom"/> <h:inputText id="prenom" required="true" value="#{clientEditionBean.client.prenom}"/> <br/> <h:commandButton id="edition" styleClass="btn btn-primary" type="submit" value="Créer Client" action="#{clientEditionBean.addClient}"/> </h:form> </body> </html> </f:view>
J'ai l'erreur suivante lorsque je soumets le formulaire (lorsque je clique sur Créer Client) :
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 @ManagedBean(name="clientEditionBean") @SessionScoped public class ClientEditionBean implements Serializable { private Client client; public ClientEditionBean(){}; public String addClient() { ClientService.addClient(client); return "CleNavigation"; } /** * @return the client */ public Client getClient() { return client; } /** * @param client the client to set */ public void setClient(Client client) { this.client = client; }
J'imagine que la cible (Target) est Client. Mais je ne comprends pas pourquoi le client serait null. Dans Scoped Variables, nom et prenom sont renseignés.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 javax.el.PropertyNotFoundException: Target Unreachable, 'null' returned null
Lorsque je remplace l'objet client, par 2 paramètres String (nom, prénom), tout fonctionne parfaitement. Néanmoins, pour l'exercice, je ne dois pas faire de bricolage avec des String.
Partager