Problème de requête avec JPA
Fermé
Streamooc
Messages postés
79
Date d'inscription
samedi 17 juin 2017
Statut
Membre
Dernière intervention
8 février 2023
-
30 nov. 2018 à 15:29
Streamooc Messages postés 79 Date d'inscription samedi 17 juin 2017 Statut Membre Dernière intervention 8 février 2023 - 4 janv. 2019 à 14:11
Streamooc Messages postés 79 Date d'inscription samedi 17 juin 2017 Statut Membre Dernière intervention 8 février 2023 - 4 janv. 2019 à 14:11
A voir également:
- Problème de requête avec JPA
- Quelle requête écrire pour demander au moteur de recherche de présenter de préférence les pages web traitant de pomme mais pas de pomme de terre ? - Forum Minecraft
- Il y a eu un problème avec cette requête. nous travaillons à sa résolution aussi vite que nous le pouvons. - Forum Facebook
- Erreur de requete facebook rencontre - Forum Facebook
- Requête sql pix - Forum Python
- Facebook rencontre erreur de requete - Forum Facebook
5 réponses
KX
Messages postés
16733
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
31 janvier 2024
3 015
30 nov. 2018 à 17:17
30 nov. 2018 à 17:17
Bonjour,
Si on traduit
D'où ton exception : illegal attempt to dereference collection
SELECT e FROM Employe e WHERE e.groupes.numeroGroupe=:x
Si on traduit
e.groupes.numeroGroupe=:xen Java, ça ferait :
Employe e = ... Collection<Groupe> g = e.groupes; Long n = g.numeroGroupe; // Erreur : g est une Collection, pas un Group !!
D'où ton exception : illegal attempt to dereference collection
Streamooc
Messages postés
79
Date d'inscription
samedi 17 juin 2017
Statut
Membre
Dernière intervention
8 février 2023
30 nov. 2018 à 21:09
30 nov. 2018 à 21:09
Merci beaucoup KX mais si j'utilise
//class Employe
@ManyToMany
@JoinTable(name="EMPLOYE_GROUPE",
joinColumns=@JoinColumn(name="CODE_EMPLOYE"),
inverseJoinColumns=@JoinColumn(name="NUMERO_GROUPE")
)
private Groupe groupe;
//class Groupe
@OneToMany(mappedBy="groupe")
private Collection<Employe> employes;
//DaoImpl
String jpql="SELECT e FROM Employe e WHERE e.groupe.numeroGroupe=:x";
j'aurai cette erreur:
Caused by: org.hibernate.AnnotationException: Illegal attempt to map a non collection as a @OneToMany, @ManyToMany or @CollectionOfElements: sn.objis.livrablejpa.domaine.Employe.groupe
at org.hibernate.cfg.annotations.CollectionBinder.getCollectionBinder(CollectionBinder.java:322)
at org.hibernate.cfg.AnnotationBinder.processElementAnnotations(AnnotationBinder.java:1864)
at org.hibernate.cfg.AnnotationBinder.processIdPropertiesIfNotAlready(AnnotationBinder.java:904)
at org.hibernate.cfg.AnnotationBinder.bindClass(AnnotationBinder.java:731)
at org.hibernate.boot.model.source.internal.annotations.AnnotationMetadataSourceProcessorImpl.processEntityHierarchies(AnnotationMetadataSourceProcessorImpl.java:245)
at org.hibernate.boot.model.process.spi.MetadataBuildingProcess$1.processEntityHierarchies(MetadataBuildingProcess.java:222)
at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.complete(MetadataBuildingProcess.java:265)
at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.metadata(EntityManagerFactoryBuilderImpl.java:847)
at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:874)
at org.jboss.as.jpa.hibernate5.TwoPhaseBootstrapImpl.build(TwoPhaseBootstrapImpl.java:44)
at org.jboss.as.jpa.service.PersistenceUnitServiceImpl$1$1.run(PersistenceUnitServiceImpl.java:154)
... 7 more
Comment pourrais-je procéder?
//class Employe
@ManyToMany
@JoinTable(name="EMPLOYE_GROUPE",
joinColumns=@JoinColumn(name="CODE_EMPLOYE"),
inverseJoinColumns=@JoinColumn(name="NUMERO_GROUPE")
)
private Groupe groupe;
//class Groupe
@OneToMany(mappedBy="groupe")
private Collection<Employe> employes;
//DaoImpl
String jpql="SELECT e FROM Employe e WHERE e.groupe.numeroGroupe=:x";
j'aurai cette erreur:
Caused by: org.hibernate.AnnotationException: Illegal attempt to map a non collection as a @OneToMany, @ManyToMany or @CollectionOfElements: sn.objis.livrablejpa.domaine.Employe.groupe
at org.hibernate.cfg.annotations.CollectionBinder.getCollectionBinder(CollectionBinder.java:322)
at org.hibernate.cfg.AnnotationBinder.processElementAnnotations(AnnotationBinder.java:1864)
at org.hibernate.cfg.AnnotationBinder.processIdPropertiesIfNotAlready(AnnotationBinder.java:904)
at org.hibernate.cfg.AnnotationBinder.bindClass(AnnotationBinder.java:731)
at org.hibernate.boot.model.source.internal.annotations.AnnotationMetadataSourceProcessorImpl.processEntityHierarchies(AnnotationMetadataSourceProcessorImpl.java:245)
at org.hibernate.boot.model.process.spi.MetadataBuildingProcess$1.processEntityHierarchies(MetadataBuildingProcess.java:222)
at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.complete(MetadataBuildingProcess.java:265)
at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.metadata(EntityManagerFactoryBuilderImpl.java:847)
at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:874)
at org.jboss.as.jpa.hibernate5.TwoPhaseBootstrapImpl.build(TwoPhaseBootstrapImpl.java:44)
at org.jboss.as.jpa.service.PersistenceUnitServiceImpl$1$1.run(PersistenceUnitServiceImpl.java:154)
... 7 more
Comment pourrais-je procéder?
KX
Messages postés
16733
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
31 janvier 2024
3 015
30 nov. 2018 à 23:44
30 nov. 2018 à 23:44
Tu pourrais faire cette requête :
SELECT e FROM Employe e, Group g WHERE g.numeroGroupe = :x AND g MEMBER OF e.groupes
Streamooc
Messages postés
79
Date d'inscription
samedi 17 juin 2017
Statut
Membre
Dernière intervention
8 février 2023
Modifié le 1 déc. 2018 à 15:10
Modifié le 1 déc. 2018 à 15:10
Bonjour KX.Merci beaucoup.Je n'ai plus l'erreur mais au niveau du contrôleur j'ai cette erreur de NumberFormatException.J'ai essayé de la capturer en vain.Même si j'utilise le type int pour le numeroGroupe dans la table Groupe et que je parse avec parseInteger dans le contrôleur l'erreur demeure la même.Ou bien j'ai mal procédé dans la page jsp?
//Liste des employés avec leur groupe
Caused by: java.lang.NumberFormatException: For input string: "numeroGroupe"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:580)
at java.lang.Integer.parseInt(Integer.java:615)
at javax.el.ListELResolver.toInteger(ListELResolver.java:409)
at javax.el.ListELResolver.getValue(ListELResolver.java:202)
at org.apache.jasper.el.JasperELResolver.getValue(JasperELResolver.java:110)
at com.sun.el.parser.AstValue.getValue(AstValue.java:139)
at com.sun.el.parser.AstValue.getValue(AstValue.java:203)
at com.sun.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:226)
at org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:917)
at org.apache.jsp.assets.gestionnaire.employesParGroupe_jsp._jspx_meth_c_005fforEach_005f0(employesParGroupe_jsp.java:828)
at org.apache.jsp.assets.gestionnaire.employesParGroupe_jsp._jspService(employesParGroupe_jsp.java:616)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:433)
... 44 more
<div class="form-group"> <label for="exampleInputPassword1">Saisir le code du groupe</label> <input type="number" class="form-control" name="codeGroupe" id="exampleInputPassword1" placeholder="Code du groupe" required="required"> </div>
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String codeGr=request.getParameter("codeGroupe"); try { Long cGr=Long.parseLong(codeGr); DaoImpl d=new DaoImpl(); List<Employe> listeEmployes=new ArrayList<Employe>(); listeEmployes=d.employesParGroupe(cGr); request.setAttribute("liste", listeEmployes); request.getRequestDispatcher("employesParGroupe.jsp").forward(request, response); } catch (NumberFormatException e) { System.out.println("n'est pas un nombre"); } }
//Liste des employés avec leur groupe
<table id="example2" class="table table-bordered table-hover"> <thead> <tr> <th>Groupe</th> <th>Employe</th> </tr> </thead> <tbody> <c:forEach items="${requestScope.liste }" var="emp"> <tr> <td>${emp.groupes.numeroGroupe}</td> <td>${emp.codeEmploye}</td> </tr> </c:forEach> </tbody> <tfoot> <tr> <th>Groupe</th> <th>Employe</th> </tr> </tfoot> </table> </div> <!-- /.box-body --> </div>
@Entity @Table(name="EMPLOYE") public class Employe implements Serializable{ @Id @GeneratedValue(strategy=GenerationType.IDENTITY) @Column(name="CODE_EMPLOYE") private Long codeEmploye; @ManyToMany @JoinTable(name="EMPLOYE_GROUPE", joinColumns=@JoinColumn(name="CODE_EMPLOYE"), inverseJoinColumns=@JoinColumn(name="NUMERO_GROUPE") ) private Collection<Groupe> groupes; } @Entity @Table(name="GROUPE") public class Groupe implements Serializable{ @Id @GeneratedValue(strategy=GenerationType.IDENTITY) @Column(name="NUMERO_GROUPE") private Long numeroGroupe; @OneToMany(mappedBy="groupes") private Collection<Employe> employes; }
KX
Messages postés
16733
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
31 janvier 2024
3 015
1 déc. 2018 à 15:13
1 déc. 2018 à 15:13
Ça va être le même genre d'erreur que pour ma première réponse :
emp.groupes est une Collection, pas un Groupe, donc numeroGroupe n'existe pas.
<td>${emp.groupes.numeroGroupe}</td>
emp.groupes est une Collection, pas un Groupe, donc numeroGroupe n'existe pas.
Streamooc
Messages postés
79
Date d'inscription
samedi 17 juin 2017
Statut
Membre
Dernière intervention
8 février 2023
2 déc. 2018 à 02:34
2 déc. 2018 à 02:34
Merci beaucoup KX mais si je procède de la façon ci-dessous j'ai cette erreur.
<tr>
<th>Groupe</th>
<th>Employe</th>
</tr>
</thead>
<tbody>
<c:forEach items="${requestScope.liste }" var="emp">
<c:forEach items="${emp}" var="g">
<tr>
<td>${g.numeroGroupe}</td>
<td>${emp.codeEmploye}</td>
</tr>
</c:forEach>
</c:forEach>
</tbody>
Caused by: javax.servlet.jsp.JspTagException: Don't know how to iterate over supplied "items" in <forEach>
at org.apache.taglibs.standard.tag.common.core.ForEachSupport.toIterator(ForEachSupport.java:84)
at org.apache.taglibs.standard.tag.common.core.ForEachSupport.prepare(ForEachSupport.java:66)
at javax.servlet.jsp.jstl.core.LoopTagSupport.doStartTag(LoopTagSupport.java:241)
at org.apache.jsp.employesParGroupe_jsp._jspx_meth_c_005fforEach_005f1(employesParGroupe_jsp.java:866)
... 47 more
J'ai écris une méthode pour lister les groupes à laquelle je fais appel dans le contrôleur comme suit dans la page jsp. Sur mon navigateur la liste de tous les groupes s'affiche lorsque je saisis le numéro du groupe.Comment pourrais régler ça?Je ne veux pas afficher toute la liste des groupes,je veux uniquement afficher un groupe avec ses employés lorsque je saisis le code du groupe
public List<Groupe> listeGroupes(){
String jpql="SELECT g FROM Groupe g";
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String codeGr=request.getParameter("codeGroupe");
try {
Long cGr=Long.parseLong(codeGr);
DaoImpl d=new DaoImpl();
List<Employe> listeEmployes=new ArrayList<Employe>();
List<Groupe> listeGroupes=new ArrayList<Groupe>();
listeEmployes=service.employesParGroupe(cGr);
listeGroupes=d.listeGroupes();
request.setAttribute("liste", listeEmployes);
request.setAttribute("listeGr",listeGroupes);
request.getRequestDispatcher("employesParGroupe.jsp").forward(request, response);
} catch (NumberFormatException e) {
System.out.println("n'est pas un nombre");
}
}
<th>Groupe</th>
<th>Employe</th>
</tr>
</thead>
<tbody>
<c:forEach items="${requestScope.listeGr }" var="g">
<c:forEach items="${requestScope.liste}" var="emp">
<tr>
<td>${g.numeroGroupe}</td>
<td>${emp.codeEmploye}</td>
</tr>
</c:forEach>
</c:forEach>
</tbody>
<tr>
<th>Groupe</th>
<th>Employe</th>
</tr>
</thead>
<tbody>
<c:forEach items="${requestScope.liste }" var="emp">
<c:forEach items="${emp}" var="g">
<tr>
<td>${g.numeroGroupe}</td>
<td>${emp.codeEmploye}</td>
</tr>
</c:forEach>
</c:forEach>
</tbody>
Caused by: javax.servlet.jsp.JspTagException: Don't know how to iterate over supplied "items" in <forEach>
at org.apache.taglibs.standard.tag.common.core.ForEachSupport.toIterator(ForEachSupport.java:84)
at org.apache.taglibs.standard.tag.common.core.ForEachSupport.prepare(ForEachSupport.java:66)
at javax.servlet.jsp.jstl.core.LoopTagSupport.doStartTag(LoopTagSupport.java:241)
at org.apache.jsp.employesParGroupe_jsp._jspx_meth_c_005fforEach_005f1(employesParGroupe_jsp.java:866)
... 47 more
J'ai écris une méthode pour lister les groupes à laquelle je fais appel dans le contrôleur comme suit dans la page jsp. Sur mon navigateur la liste de tous les groupes s'affiche lorsque je saisis le numéro du groupe.Comment pourrais régler ça?Je ne veux pas afficher toute la liste des groupes,je veux uniquement afficher un groupe avec ses employés lorsque je saisis le code du groupe
public List<Groupe> listeGroupes(){
String jpql="SELECT g FROM Groupe g";
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String codeGr=request.getParameter("codeGroupe");
try {
Long cGr=Long.parseLong(codeGr);
DaoImpl d=new DaoImpl();
List<Employe> listeEmployes=new ArrayList<Employe>();
List<Groupe> listeGroupes=new ArrayList<Groupe>();
listeEmployes=service.employesParGroupe(cGr);
listeGroupes=d.listeGroupes();
request.setAttribute("liste", listeEmployes);
request.setAttribute("listeGr",listeGroupes);
request.getRequestDispatcher("employesParGroupe.jsp").forward(request, response);
} catch (NumberFormatException e) {
System.out.println("n'est pas un nombre");
}
}
<th>Groupe</th>
<th>Employe</th>
</tr>
</thead>
<tbody>
<c:forEach items="${requestScope.listeGr }" var="g">
<c:forEach items="${requestScope.liste}" var="emp">
<tr>
<td>${g.numeroGroupe}</td>
<td>${emp.codeEmploye}</td>
</tr>
</c:forEach>
</c:forEach>
</tbody>
KX
Messages postés
16733
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
31 janvier 2024
3 015
2 déc. 2018 à 12:53
2 déc. 2018 à 12:53
<c:forEach items="${requestScope.liste }" var="emp"> <c:forEach items="${emp}" var="g">
C'est toujours le même problème, pour t'en sortir il faut que tu comprennes de quel type sont chaque objet que tu manipule, ici ${emp} est un Employe, si tu veux itérer sur les groupes il faut utiliser ${emp.groupes} et seulement à ce moment là tu pourras faire ${g.numeroGroupe}
<c:forEach items="${requestScope.liste}" var="emp"> <c:forEach items="${emp.groupes}" var="g">
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Streamooc
Messages postés
79
Date d'inscription
samedi 17 juin 2017
Statut
Membre
Dernière intervention
8 février 2023
4 janv. 2019 à 14:11
4 janv. 2019 à 14:11
Bonjour KX.Merci pour la réponse.En procédant comme vous l'avez dit je remarque que seul le numéro de l'employé est affiché.Celà est dû au fait que la colonne NUMERO_GROUPE est NULL dans la table employe après l'ajout d'un employé à un groupe.Je ne sais pas si la méthode d'ajout a un problème.Veuillez la voir s'il vous plaît:
public void addEmployeToGroupe(Long codeEmpl, Long codeGr) {
try {
//Retrouvons l'employe par son code
Employe e=em.find(Employe.class, codeEmpl);
//Retrouvons le groupe par son code
Groupe g=em.find(Groupe.class, codeGr);
//Ajoutons un groupe à un employe
e.getGroupes().add(g);
//Ajoutons un employe à un groupe
g.getEmployes().add(e);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
@Entity
@Table(name="GROUPE")
public class Groupe implements Serializable{
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="NUMERO_GROUPE")
private Long numeroGroupe;
private String nomGroupe;
//Un groupe contient plusieurs employ�s
@OneToMany(mappedBy="groupes")
private Collection<Employe> employes;
}
@Entity
@Table(name="EMPLOYE")
public class Employe implements Serializable{
/**
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="CODE_EMPLOYE")
private Long codeEmploye;
private String nomEmploye;
private String sexeEmploye;
private String emailEmploye;
private String adresseEmploye;
private String contactEmploye;
private String roleEmploye;
@ManyToOne
@JoinColumn(name="CODE_EMPLOYE_SUP")
private Employe employeSup;
//Plusieurs employ�s pour un groupe
@ManyToMany(fetch=FetchType.EAGER)
@JoinTable(name="EMPLOYE_GROUPE",
joinColumns=@JoinColumn(name="CODE_EMPLOYE"),
inverseJoinColumns=@JoinColumn(name="NUMERO_GROUPE")
)
private Collection<Groupe> groupes;
}
<form role="form" action="<%=request.getContextPath()%>/registerEmployeToGroupe"
method="post">
<div class="box-body">
<div class="form-group">
<label for="exampleInputPassword1">Sélectionner l'employé</label>
<select
class="form-control" name="codeEmploye">
<c:forEach var="emp" items="${listeEmployes}">
<option value="${emp.codeEmploye}">${emp.codeEmploye }- ${emp.nomEmploye}</option>
</c:forEach>
</select>
</div>
<div class="form-group">
<label for="exampleInputPassword1">Sélectionner le groupe</label>
<select
class="form-control" name="numeroGroupe">
<c:forEach var="grp" items="${listeGroupes}">
<option value="${grp.numeroGroupe}">${grp.numeroGroupe}- ${grp.nomGroupe}</option>
</c:forEach>
</select>
</div>
</div>
<!-- /.box-body -->
<div class="box-footer">
<button type="submit" class="btn btn-primary">Valider</button>
</div>
</form>
@WebServlet(name="regempgrp",urlPatterns={"/registerEmployeToGroupe"})
public class RegisterEmployeToGroupeControleur extends HttpServlet{
@EJB
private IBanqueDaoLocal metierlocal;
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// Recuperation des parametres de la requete
String codeEmpl=request.getParameter("codeEmploye");
Employe e=new Employe(codeEmpl);
e.setCodeEmploye(Long.parseLong(codeEmpl));
String numeroGrp=request.getParameter("numeroGroupe");
Groupe g=new Groupe(numeroGrp);
g.setNumeroGroupe(Long.parseLong(codeEmpl));
// Insertion
metierlocal.addEmployeToGroupe(e.getCodeEmploye(), g.getNumeroGroupe());
RequestDispatcher rs = request.getRequestDispatcher("assets/gestionnaire/gestionEmployeGroupe/succesRegisterEmployeToGroupe.jsp");
rs.forward(request, response);
}
}
public void addEmployeToGroupe(Long codeEmpl, Long codeGr) {
try {
//Retrouvons l'employe par son code
Employe e=em.find(Employe.class, codeEmpl);
//Retrouvons le groupe par son code
Groupe g=em.find(Groupe.class, codeGr);
//Ajoutons un groupe à un employe
e.getGroupes().add(g);
//Ajoutons un employe à un groupe
g.getEmployes().add(e);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
@Entity
@Table(name="GROUPE")
public class Groupe implements Serializable{
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="NUMERO_GROUPE")
private Long numeroGroupe;
private String nomGroupe;
//Un groupe contient plusieurs employ�s
@OneToMany(mappedBy="groupes")
private Collection<Employe> employes;
}
@Entity
@Table(name="EMPLOYE")
public class Employe implements Serializable{
/**
- /
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="CODE_EMPLOYE")
private Long codeEmploye;
private String nomEmploye;
private String sexeEmploye;
private String emailEmploye;
private String adresseEmploye;
private String contactEmploye;
private String roleEmploye;
@ManyToOne
@JoinColumn(name="CODE_EMPLOYE_SUP")
private Employe employeSup;
//Plusieurs employ�s pour un groupe
@ManyToMany(fetch=FetchType.EAGER)
@JoinTable(name="EMPLOYE_GROUPE",
joinColumns=@JoinColumn(name="CODE_EMPLOYE"),
inverseJoinColumns=@JoinColumn(name="NUMERO_GROUPE")
)
private Collection<Groupe> groupes;
}
<form role="form" action="<%=request.getContextPath()%>/registerEmployeToGroupe"
method="post">
<div class="box-body">
<div class="form-group">
<label for="exampleInputPassword1">Sélectionner l'employé</label>
<select
class="form-control" name="codeEmploye">
<c:forEach var="emp" items="${listeEmployes}">
<option value="${emp.codeEmploye}">${emp.codeEmploye }- ${emp.nomEmploye}</option>
</c:forEach>
</select>
</div>
<div class="form-group">
<label for="exampleInputPassword1">Sélectionner le groupe</label>
<select
class="form-control" name="numeroGroupe">
<c:forEach var="grp" items="${listeGroupes}">
<option value="${grp.numeroGroupe}">${grp.numeroGroupe}- ${grp.nomGroupe}</option>
</c:forEach>
</select>
</div>
</div>
<!-- /.box-body -->
<div class="box-footer">
<button type="submit" class="btn btn-primary">Valider</button>
</div>
</form>
@WebServlet(name="regempgrp",urlPatterns={"/registerEmployeToGroupe"})
public class RegisterEmployeToGroupeControleur extends HttpServlet{
@EJB
private IBanqueDaoLocal metierlocal;
}
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// Recuperation des parametres de la requete
String codeEmpl=request.getParameter("codeEmploye");
Employe e=new Employe(codeEmpl);
e.setCodeEmploye(Long.parseLong(codeEmpl));
String numeroGrp=request.getParameter("numeroGroupe");
Groupe g=new Groupe(numeroGrp);
g.setNumeroGroupe(Long.parseLong(codeEmpl));
// Insertion
metierlocal.addEmployeToGroupe(e.getCodeEmploye(), g.getNumeroGroupe());
RequestDispatcher rs = request.getRequestDispatcher("assets/gestionnaire/gestionEmployeGroupe/succesRegisterEmployeToGroupe.jsp");
rs.forward(request, response);
}
}