Dans le cadre du projet fil rouge chaque apprenant a proposé un cahier des charges pour une idée innovante qui a été validé par sa formatrice. vous êtes amené à travailler sur le cahier des charges approprié à votre contexte (voir le drive en PJ) toute en respectant les instructions suivantes: utiliser le diagramme de Gantt pour planifier votre travail. Réaliser une maquette et un prototype (web/mobile) simulant votre Projet. Réaliser une charte graphique pour votre Projet. Les pages web doivent être responsive et respecter le prototype, la charte graphique et l’UX/UI Vous êtes amenés à être créatif en proposant du contenu adapté (texte correcte /et images). les champs de vos interfaces de votre site doivent respecter les contraintes de validation ex: - le champs numéro téléphone ne doit pas accepter les caractères. vérifier les champs : CIN, Email,.... la platform doit permettre l'authentification et la gestion des multi-Profil (ex: Admin, utilisateur, Client..) Réaliser la conception et la modélisation avec l’UML Diagramme de cas d’utilisation Diagramme de séquence Diagramme de classes la platform doit offrir les fonctionnalités : Creat,Read,Update,Delete,Search,... vous pouvez utiliser les API ou plugin pour améliorer les Fonctionnalités de votre site(ex: Calendrier, Video, Chat,..) Choix Technologique: Front-End : HTML5, CSS3,SASS, javascript, Bootstrap, VueJS,... Base de donnée : MySql Backend : PHP/POO/MVC ou utiliser le framework Laravel Bonne chance et bon courage à vous tous.
Active repository
MoocodeNo license
⑂ 0 forks◯ 0 issuesUpdated Jul 12, 2024
Exercice realisé dans le cadre de bon maitrise du langage JavaScript evec l'api Fetch avec l'equipe des apprenants de la Goma Digital Academy
Active repositoryHas homepage
HTMLNo license
⑂ 3 forks◯ 0 issuesUpdated May 3, 2023
Project homepage ↗Projet fictif 7 réalisé dans le cadre du programme de formation Développeur Front-end JavaScript React chez OpenClassrooms
Active repositoryHas homepage
JavaScriptNo license#css#html#javascript#mvc-pattern
⑂ 0 forks◯ 0 issuesUpdated Mar 26, 2025
Project homepage ↗Exposé mini-jeu sur les Easter Eggs dans les jeux réalisé en collaboration avec Thomas Morel, étudiant en art à ECV Lille. Langages utilisés: HTML, CSS, JavaScript.
Active repository
JavaScriptNo license
⑂ 0 forks◯ 0 issuesUpdated May 17, 2022
Module Magento 1.9 réalisé en se basant sur la bibliothèque jQuery Highcharts ayant comme objectif de donner de donner une visiblité plus approfondit à propos l'avancement de ventes , les catégories les plus contribuantes dans l'augmantations de revenue , les groupes des utilisateurs les plus rentables, les mots les plus cherchés.. etc
Active repository
PHPNo license#charts#custom#diagnostic#graphic-reports
⑂ 0 forks◯ 2 issuesUpdated Aug 28, 2023
Des Servlets à la notion de service Web Les objectifs de ce travail pratique sont les suivants : Comprendre les mécanismes des Servlet Réaliser une application Web en utilisant Combinant JPA et les Servlet Comprendre les principes d’une architecture Rest Comprendre les bénéfices d’un framework comme Jersey Recommendations. Ce TP utilise des technologies abordées en cours d’un point de vue théorique, mais la documentation technique peut être facilement trouvée sur internet. Être autodidacte est une compétence essentielle pour tout informaticien; n'hésitez pas à chercher des tutoriels si vous êtes bloqués. Sujet L’objectif de ce projet est de continuer le développement d’une application type prise de RDV (doctolib). Organisation. Quand votre application JPA fonctionne correctement. Laissez votre base de données démarrée. Si vous avez déjà travaillez avec les servlets, n’hésitez pas à aller directement à la question 6. Partie 1 Servlet Question 1. Tout d’abord, modifiez votre fichier pom.xml. Changez le type de packaging vers un packaging de type war pour les applications webs <packaging>war</packaging> Ajoutez une dépendances à l’API des servlets <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.0.1</version> <scope>provided</scope> </dependency> Vous noterez le scope qui est placé à provided ce qui veut dire que cette librairie sera fournie par le conteneur d’application et ne doit pas être embarqué au sein de l’application Web. Ajoutez enfin dans les plugins de build, celui de jetty qui permet de démarrer jetty depuis maven. <plugin> <!-- https://mvnrepository.com/artifact/org.eclipse.jetty/jetty-maven-plugin --> <groupId>org.eclipse.jetty</groupId> <artifactId>jetty-maven-plugin</artifactId> <version>9.4.31.v20200723</version> <configuration> <webApp> <contextPath>/</contextPath> </webApp> <httpConnector> <port>8080</port> </httpConnector> </configuration> </plugin> Testez votre config. Clic droit sur votre projet. run as -> maven build …-> mettre compile jetty:run dans le goal. équivalent de lancer compile jetty:run si vous utiliisez jetty dans la console. Vous pouvez stoppez jetty en cliquant sur le bouton rouge stop de la console eclipse. Question 2. Insertion de ressources statiques Créer un répertoire src/main/webapp. Ajoutez y un fichier index.html contenant Hello world. Relancez jetty. http://localhost:8080/index.html Vous devriez voir votre page web. L’ensemble des ressources statiques (html files, javascript file, images) de votre projet doivent se trouver dans le répertoire src/main/webapp Question 3. Création de votre première Servlet Créer une classe qui étend HttpServlet. Surchargez les méthodes doGet et doPost méthodes qui seront appelées lors de la réception d’un GET et d’un POST sur l’url “/myurl”. package servlet; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @WebServlet(name="mytest", urlPatterns={"/myurl"}) public class MyServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { PrintWriter p = new PrintWriter(resp.getOutputStream()); p.print("Hello world"); p.flush(); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { // TODO Auto-generated method stub super.doPost(req, resp); } } Question 4. Création de votre première Servlet qui consomme les données d’un formulaire. Créer un fichier myform.html et placez y le code suivant. <html> <body> <FORM Method="POST" Action="/UserInfo"> Name : <INPUT type=”text” size=”20” name=”name”><BR> Firstname : <INPUT type=”text” size=”20” name=”firstname”><BR> Age : <INPUT type=”text” size=”2” name=”age”><BR> <INPUT type=submit value=Send> </FORM> </body> </html> Puis créer une classe Java UserInfo package servlet; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @WebServlet(name="userinfo", urlPatterns={"/UserInfo"}) public class UserInfo extends HttpServlet { public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWriter out = response.getWriter(); out.println("<HTML>\n<BODY>\n" + "<H1>Recapitulatif des informations</H1>\n" + "<UL>\n" + " <LI>Nom: " + request.getParameter("name") + "\n" + " <LI>Prenom: " + request.getParameter("firstname") + "\n" + " <LI>Age: " + request.getParameter("age") + "\n" + "</UL>\n" + "</BODY></HTML>"); } } Testez votre application en vous rendant ici http://localhost:8080/myform.html . Parcourez ensuite les exemples suivants. http://www.commentcamarche.net/contents/servlets-330845945 Question 5. Retour sur l’application de prise de RDV A partir de cette base, construisez une page web qui retourne des informations issus de la base de données et un formulaire qui permet d’ajouter des éléments dans la base de données. Partie 2 JaxRS et OpenAPI Question 6. En avant pour les architectures Rest. Évidemment à partir de là, nous pourrions construire une architecture Rest manuellement. Cependant, gérez toutes les routes et les format de sérialisation de données à la main est une tâche fastidieuse. Pour cela des frameworks comme Jersey et les APIs JaxRS permettent de simplifier ce travail. Vue d'ensemble de JAX-RS JAX-RS est une API récente mais déjà bien fournie : Elle propose notamment des annotations spécifiques pour lier une URI et des verbes HTTP à des méthodes d'une classe Java. JAX-RS dispose également d'annotations capables d'injecter et de récupérer des données dans les entêtes d'une réponse ou depuis celles d'une requête. De même l'API JAX-RS fournit ce qu'il faut pour extraire et écrire ce que vous voulez dans le corps d'une requête/réponse HTTP. Enfin, en cas d'exception Java, JAX-RS est capable de produire une réponse avec le code HTTP le plus pertinent. Pour simplifier l’installation d’un environnement, je vous ai fournis un exemple fonctionnel avec JaxRS, et RestEasy. RESTEasy est un projet JBoss / Red Hat qui fournit divers framework pour vous aider à construire des services Web RESTful et des applications Java RESTful. Il s'agit d'une implémentation des RESTful Web Services de Jakarta (JaxRS), une spécification de la fondation Eclipse qui fournit une API Java pour les RESTful Web Services sur le protocole HTTP. De plus, RESTEasy implémente également l'API de la spécification MicroProfile REST Client. https://github.com/barais/JaxRSOpenAPI Forker ce projet et cloner le fork pour pouvoir travailler. Vous pourrez intégrer vos classes JPA et vos DAOs facilement. Observer le code et créer un premier service Web. Tester le service implanter l’aide de votre navigateur en vous rendant sur http://localhost:8080/pet/1 Créer quelques services REST simple et tester votre couche de service avec Postman. https://chrome.google.com/webstore/detail/postman/fhbjgbiflinjbdggehcddcbncdddomop Question 7. Créez la couche de service pour votre application. Écrire des exemples de WS REST correspondant au projet type prise de rdv Examples: http://www.mkyong.com/tutorials/jax-rs-tutorials/ Vous pouvez la tester grâce à des outils comme: https://chrome.google.com/webstore/detail/postman/fhbjgbiflinjbdggehcddcbncdddomop Il faut ajouter l’extension Postman rest client sur Mozilla ou Chrome. Question 8. Comprendre openAPI. Dans le readme.md du projet ici. https://github.com/barais/JaxRSOpenAPI Je montre comment ajouter la génération automatique du descripteur d’API conforme au standard openAPI. Je montre aussi comment intégrer swaggerUI afin de fournir une documentation lisible par un humain de votre API. Nous le faisons à la main, dans les comme SpringBoot, des modules particulier permettent d’automatiser ce travail. Bon TP Olivier et Adrien