Bonjour
Dans une application en 3 couches, dans la partie métier(sessionBean) je peux affecter des etudiants a une classe
comme ceci:
// addStudent, et findByLibelle, sont d'autres classse que j'ai déja développé auparavent
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 public void updateClasse(String nom, String arg2){ Classe classe= findBylibelle(arg2); Student etudient= findStudentBylibelle(nom); classe.addStudent(etudient); }
Si je faits ce test, dans la partie métier , ça passe bien, et je peux faire l'affectation.
Mon probleme se situe au niveau de ma classeBean.java (couche presentation):
ch1 et ch2 sont deux String définies dans classeBean.java, avec leus getters et setters.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 public String updateClasse(){ try { context = new InitialContext(); cl = (ClasseDAORemote) context.lookup("classeDAO/remote"); cl.updateClasse(ch1, ch2); } catch (NamingException e) { e.printStackTrace(); } return "update_success"; }
J'ai aussi essayer de mettre: cl.updateClasse(classe.toString(), student.toString()), qui sont deux methodes qui me retournent le libelle de classe et student. (Student student=new Student(); Classe classe=new Classe(), avec leurs getters et setters aussi)
MaPage.jsp:
j'obtients: java.lang.NullPointerException, avec comme cause classeBean.java..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 <h:outputText value="Etudiant"></h:outputText> <h:selectOneMenu value="#{studentBean.student}"> <f:selectItems value="#{studentBean.listStudents}" /> <f:converter converterId="studentConverter" /> </h:selectOneMenu> <h:outputText value="Classe"></h:outputText> <h:selectOneMenu value="#{classeBean.classe}"> <f:selectItems value="#{classeBean.listClasses}"/> <f:converter converterId="classeConverter" /> </h:selectOneMenu>
Sachant que mes deux selectOneMenu sont peuplés par les donnés de ma base.
Merci pour votre aide
Partager