Examen TP
DSI 31
2017-2018
Temps alloué Outils
•
•
•
•
•
Eclipse Neon
Widfly 8.2.0
Jdk 1.8/ Jdk1.7
SOAPUI5.2.1
Advanced REST Client
Objectifs
•
Développer une application
Gestion des Enseignants avec les
Publicité
EJB et les web services.
3 Heures
I. Descriptif du travail à faire
Soit le diagramme de classes entités suivant :
II. Architecture
L’application respecte l’architecture suivante :
Khaoula Jridi
1
III. Réalisation
L’application doit permettre de :
-
-
-
-
-
-
-
-
Publicité
Ajouter un enseignant
Ajouter une matière
Affecter une matière à un enseignant
Consulter la liste des enseignants par nom
Consulter la liste des matières d’un enseignant
Consulter la liste des enseignants d’une matière
Consulter les informations d’un enseignant
Consulter les informations d’une matière.
1.
2.
3.
4.
5.
Développer le module EJB qui permet d’effectuer le traitement métier.
On veut appeler la logique métier à partir d’une application Java standard, que
faut-il développer ? Quelle interface de l’EJB à utiliser dans ce cas de figure.
Développer un web service SOAP sous le nom GestionDepartementTI qui fait
appel à l’EJB.
Publicité
Créer à l’aide de JSP/Servlet une interface de consultation des enseignants par
nom.
Quelques recommandations :
@Entity
----------------------------Classe Enseignant----------------------------------
public class Enseignant implements Serializable {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Long codeEnseignant;
private String nomEnseignant;
private String prenomEnseignant;
private String grade;
private String tel;
private String adresse;
@ManyToMany(mappedBy="enseignants")
private List<Matiere> matieres;
@Entity
public class Matiere implements Serializable {
Publicité
----------------------------Classe Matiere-----------------------------------------
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Long codeMatiere;
private String libelle;
private String description;
private double chargeHorraire;
private double coef;
@ManyToMany
@JoinTable(name="Enseignant_Matiere",joinColumns=
@JoinColumn(name="CODE_MATIERE"),
inverseJoinColumns=@JoinColumn(name="CODE_ENSEIGNANT"))
private List<Enseignant> enseignants;
Khaoula Jridi
2