Bonjour à tous,
Je suis en train de tester la combo Google App Engine et JSF.
En version "locale" (environnement GAE simulé), tout fonctionne parfaitement.
par contre, lorsque je déploie sur la plateforme GAE, mon objet voit ses attributs récupérés du formulaire à null...
le formulaire incriminé dans mon fichier xhtml
La méthode utilisée (la méthode createTechnoListe() est identique, la seule différence est dans la redirection vers la page de la liste)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <h:form id="formTechno"> <p:panelGrid columns="2" id="panelFormTechno"> <h:outputLabel value="Libellé de la technologie"/> <h:inputText id="libTechno" value="#{creationTechno.technoCreated.libTechno}" required="true" requiredMessage="Libellé obligatoire"/> <h:outputLabel value="Note de la technologie"/> <h:inputText id="noteTechno" value="#{creationTechno.technoCreated.noteTechno}" required="true" requiredMessage="Note obligatoire"/> <p:commandButton id="createButton" value="Enregistrer" title="Enregistrer" action="#{creationTechno.createTechno()}" update="panelFormTechno" /> <p:commandButton id="createListButton" value="Enregistrer et retour" title="Enregistrer et retour" action="#{creationTechno.createTechnoListe()}" /> </p:panelGrid> </h:form>
Je sèche totalement...
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 // le package, les imports // public class CreationTechno implements Serializable{ /** * */ private static final long serialVersionUID = 1L; public Techno technoCreated = new Techno(); public CreationTechno() { } public Techno getTechnoCreated() { return technoCreated; } public void setTechnoCreated(Techno technoCreated) { this.technoCreated = technoCreated; } public String createTechno(){ UserService userService = UserServiceFactory.getUserService(); User user = userService.getCurrentUser(); technoCreated.setAuthor(user); PersistenceManager pm = PMF.get().getPersistenceManager(); // ici le code pour le StringBuffer composant le code du mail à envoyer // try { Logger logger = Logger.getLogger("logger"); logger.log(Level.WARNING, "valeur de technoCreated :" + technoCreated.getLibTechno() ); pm.makePersistent(technoCreated); // Ici le code pour l'envoi du mail à l'administrateur à chaque création de technologie } finally { pm.close(); } return "technoForm?faces-redirect=true"; }
Merci d'avance, je m'arrache le peu de cheveux qui me restent...
Allcats
Partager