Bonjour à tous,

J'ai un souci avec un bouton qui ne fait strictement rien alors qu'il devrait soumettre mon formulaire...

Voila ma page xhtml :
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
 
<h:body>
	<h2>Choix des Infos générales :</h2>
	<h:form>
 
		<h:outputText value="Titre du Questionnaire : "/>
		<h:inputText id="titre"  value="#{infoGeneralesCtrl.libQuest}"/>
 
		<h:outputLabel value="Ajouter le message du questionnaire : "/>
		<h:inputTextarea cols="80" rows="5" value="#{infoGeneralesCtrl.messageQuestionnaire}"/>
 
		<h:outputText value="idGoogleAnalytics : "/>
		<h:inputText id="idGoogleAnalytics" value="#{infoGeneralesCtrl.idGoogleAnalytics}"/>
 
	</h:form>
	<h:commandButton value="Etape suivante" action="#{infoGeneralesCtrl.persist()}"/>
</h:body>
En gros je propose des champs de saisie pour remplir mes champs dans mon managed Bean infoGeneralesCtrl...

Voile le code de ce bean :

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
@Named("infoGeneralesCtrl")
@RequestScoped
public class InfoGeneralesQuestionnaireController extends AbstractController{
 
	@EJB QuestionnaireService questionnaireService;
	Questionnaire questionnaire;
	//Infos relatives au questionnaire
	String libQuest;
	String messageQuestionnaire;
	String idGoogleAnalytics;
 
	/**
         * Getteurs et Setteur des infos du questionnaire
         * 
         */
	public String getLibQuest() {
		return libQuest;
	}
	public void setLibQuest(String libQuest) {
		this.libQuest = libQuest;
	}
	public String getMessageQuestionnaire() {
		return messageQuestionnaire;
	}
	public void setMessageQuestionnaire(String messageQuestionnaire) {
		this.messageQuestionnaire = messageQuestionnaire;
	}
	public String getIdGoogleAnalytics() {
		return idGoogleAnalytics;
	}
	public void setIdGoogleAnalytics(String idGoogleAnalytics) {
		this.idGoogleAnalytics = idGoogleAnalytics;
	}
	public Questionnaire getQuestionnaire() {
		return questionnaire;
	}
	public void setQuestionnaire(Questionnaire questionnaire) {
		this.questionnaire = questionnaire;
	}
 
	/**
         * persistance du questionnaire
         * @return l'url de la page de destination
         */
	public String persist(){
		questionnaire.setClient(getClientStoredInSession());
		questionnaireService.persistQuestionnaire(questionnaire);
		return "/vues/listeQuestionnaire.jsf?faces-redirect=true&clientId="+getClientStoredInSession().getIdClient();		
	}	
}
Enfin, la methode persist appel ma classe service QuestionnaireService pour le persister

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
@Stateless
public class QuestionnaireService {
 
	@PersistenceContext
	private EntityManager entityManager;
 
public int persistQuestionnaire(Questionnaire questionnaire){
		idQuestionnairePersist=questionnaire.getIdQuestionnaire();
		entityManager.persist(questionnaire);
		return idQuestionnairePersist;	
	}
Pourtant je n'ai aucune trace du serveur glassfish comme quoi il y aurait un probleme.
Et quand je passe en debug les methodes set des infos du questionnaire ne sont jamais appellées.

(P.S: le problème ne vient pas du fait que ma fontion persist de mon questionnaireService me renvoie un int car je l'ai mis dans une variable que j'ai oublier sur le code )

Merci à toute personne suceptible de m'aider

Anack.