Applications Web
Sans implémenter une méthode doHead proposez une implémentation pour supporter cette méthode. Page 31. 31. Servlet : Exercices Utiliser java.rmi.server.UID() ...
Exercices sur Servlets/JSP
Exercices servlets/JSP. Le langage Java. Exercice 1 (1/3). • Ecrire la page html suivante : • Le menu est composé de Java SkyLine Java World
Exercice dapplication en Java RMI
Sachant que la servlet devra transmettre les informations saisies à un composant EJB écrire la classe correspondant à un EJB Session qui consiste à récupérer
Travaux Pratiques Une belle servlet
29 oct. 2006 Le corrigé des exercices 1 à 6 est disponible ! Exercice 1 ... http://java.sun.com/products/servlet/. JSP http://java.sun.com/products/jsp ...
Servlets et JSP : la JSTL
servlets ou les autres pages JSP (exemple ci-dessous). Vérifiez le code généré par cette balise. <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>.
TP 4A - Java Entreprise Edition. Création de servlets (get et session)
Le but de ce TP est que vous vous familiarisez avec la notion de servlet et leur déploiement dans un serveur d'application Tomcat. Exercice 1 (Première
Créez votre application web avec Java EE
31 janv. 2013 représentés en Java EE par des servlets mais cela ne signifie pas ... correction. Ce n'est pas la seule manière de faire. Ne vous inquiétez ...
Conception dapplications en Java/JEE
CORRIGÉS DES EXERCICES. 365. BIBLIOGRAPHIE. 401. INDEX. 403. Page 7. Avant-propos (servlet JSP
Conception dapplications en Java/JEE
non autorisée est un délit. Table des matières. VII. 17.3 Programmation. 343. CONCLUSION. 383. CORRIGÉS DES EXERCICES servlet JSP
Exercices sur Servlets/JSP
Indiquer où se trouve la servlet générée associée à cette. JSP (traduction de cette JSP). Page 8. XVII-8. JMF. Exercices servlets/JSP. Le langage Java.
Java-Design-Patterns.pdf
7.4 Java'sbuilt-inObserverPattern . 22.5 DecoratorDesignPatterninJava . ... java.util.logging.Logger#log(). • javax.servlet.Filter#doFilter() ...
Le livre de JAVA premier langage Avec 109 exercices corrigés
JAVA premier langage. Avec 109 exercices corrigés. 12e édition mise à jour avec Java 9. Un best-seller qui a déjà conquis plus de 50 000 étudiants !
XML for DB2 Information Integration nformation Integration
16-10 Creating DADX Web services: XML to Java mapping . . . . . . . . . . . . . 492 10-4 Servlet configuration information that goes into web.xml.
Spring Boot Reference Guide
Registering Servlets Filters
Java développement de servlets et JSP
plateforme Java EE. Découvrez les API JSP/Servlet le framework MVC JSF 2
Applications Web
(voir l'API Servlets). Page 29. 29. Servlet : HttpServletRequest. Page 30. 30. Servlet : Exercices. 1. Quelles possibilités s'offrent à nous si on ne veut pas
DATABASE MANAGEMENT SYSTEMS SOLUTIONS MANUAL
10000 records Exercise 1.1 Why would you choose a database system instead of simply storing data ... Servlets are pieces of Java code that run on the middle.
Wampserver Manual
s'initier à MySQL Aux développeurs Java et PHP Sur www.editions-eyrolles.com/dl/0067379. Téléchargez le code source des exemples et le corrigé des exercices
Wampserver Manual
Web Coding Bible (HTML CSS
Exercices sur Servlets/JSP
Exercices servlets/JSP Le langage Java Utiliser HttpSession (1/2) • Dans un premier temps on récupère la session (objet de la classe HttpSession ) par HttpSession getSession() lancé sur request • Cet appel retourne la session courante associée à la requête Si la session n’existe pas elle sera créée
Exercices JAVA - Cours/Formations informatique à
175 exercices corrigés pour maîtriser Java Conçu pour les étudiants en informatique ce recueil d’exercices corrigés est le complément idéal de Programmer en Java du même auteur ou de tout autre ouvrage d’initiation au langage Java Cette nouvelle édition tient compte des nouveautés de Java 8 publié en mars 2014
Servlets et JSP : la JSTL
Servlets et JSP : la JSTL 1 Utiliser le langage d’expression (EL) Depuis la version 2 0 des JSP il est possible de placer `a n’importe quel endroit d’une page JSP des expressions qui sont ´evalu´ees et remplac´ees par le r´esultat de leur ´evaluation La syntaxe est la suivante : $ { expression } Voila quelques exemples d
Java - Servlets java-servl Java - Servlets
Java - Servlets - 2 Introduction aux Servlets java-servl-5 Internet et Education © TECFA 17/1/01 •Copie de l’archive servlet jar: http://tecfa unige ch/guides/java/classes/servlet jar •Script qui inialise l’environnement sous Unix (+ MySQL + xerces) source /local/env/java12-sql-xml-ser csh
Solutions aux exercices du chapitre 10 : Programmation Java
at java util concurrent ThreadPoolExecutor addWorker(ThreadPoolExecutor java:950) at java util concurrent ThreadPoolExecutor execute(ThreadPoolExecutor java:1368) at java util concurrent AbstractExecutorService submit(AbstractExecutorService java:134) at Sommation sommation_pr(Sommation java:25) at Sommation sommation_pr(Sommation java:26)
Conception d’applications en Java/JEE - Dunod
IV Conception d’applications en Java/JEE 2 19 Enterprise JavaBeans (EJB) 40 2 20 Java Persistency API (JPA) 46 2 21 Services Web 49 2 22 JavaServer Faces (JSF) et interfaces riches 53 2 23 Packaging des applications Web JEE 55 CHAPITRE3•UML 3 1 Introduction 61 3 2 Diagramme de classes 62 3 3 Diagramme d’objets 66 3 4 Diagramme de
La programmation objet en Java - Cours et exercices corrigés
nombreux exercices corrigés font de ce livre un outil de travail indispensable Pour une plus grande interactivité le code des programmes Java de ce livre est disponible sur le web Les principaux concepts expliqués sont les suivants : – la syntaxe de base de Java ; – les notions de la programmation objet : classes encapsulation
Mlle Imene Sghaier - Technologue Pro
On se propose de faire fonctionner un programme Java dont le rôle est d’afficher le premier mot qu’on lui passe comme paramètre d’exécution Exercice 3: Créer un fichier HelloWorldWithMethod java contenant la classe HelloWorldWithMethod 2- Ajouter une méthode void Hello() qui fait l’affichage d’une chaîne de caractères exemple :
Exercices En Java 175 Exercices Corrigés Couvre Java 8 Noire
175 exercices corrigés pour maîtriser JavaConçu pour les étudiants en informatique ce recueil d'exercices corrigés est le complément idéal de Programmer en Java du même auteur ou de tout autre ouvrage d'initiation au langage Java Cette quatrième édition prend en compte les nouveautés de Java 8 avec en particulier un chapitre
Exercices En Java 175 Exercices Corrigés Couvre Java 8 By
Exercices En Java 175 Exercices Corrigés Couvre Java 8 By Claude Delannoy Java Corrig Recevez vos 1600 de bonus de casino online book library thatswhatsup me online book library Telecharger prediction of detonation characteristics of Td corrig Tax gold forward sales while you can cromosomacinco Examens corrigs PDF Tlcharger doc
JAVA TP Banque - University of Paris-Est Marne-la-Vallée
Exercice 2 : Un tableau en java import java util *; public class TableauMontants { public static void main(String args[]){ double[] tab; tab = new double[] {10 687 35 -54 00 0 54 85}; for (int i = 0 ; i < tab length ; i++){ System out println(tab[i]); } Arrays sort(tab); System out println(Arrays toString(tab)); } }
Searches related to exercices corrigés servlets java filetype:pdf
the Java Servlet specification Servlets can be created using the javax servlet and javax servlet http packages which are a standard part of the Java's enterprise edition an expanded version of the Java class library that supports large-scale development projects These classes implement the Java Servlet and JSP specifications
Quels sont les exercices corrigés en langage Java ?
- Voici une liste des exercices corrigés en langage Java, des exercices progressifs et corrigés, abordant toutes les notions de programmation en Java la moitié abordent des notions isolées, afin de vérifier la compréhension de la syntaxe. L'autre moitié correspond à des exercices de synthèse, mettant en jeu des techniques un peu plus complètes.
Quels sont les différents types de méthodes de servlet?
- Ces méthodes sont en fait appelées par la méthode service () de la classe Servlet, que l’on a pas à surcharger. Notons que sur notre exemple, la méthode doPost () appelle la méthode doGet (), ce qui est parfaitement légal. Exemple 17. Une première servlet 2.2.
Qu'est-ce que le principe de fonctionnement d'une servlet?
- Ce principe de fonctionnement évite d'instancier un objet de type servlet à chaque requête et permet de maintenir un ensemble de ressources actives telles qu'une connexion à une base de données. Le serveur crée un objet qui représente la requête http ainsi que l'objet qui contiendra la réponse et les envoie à la servlet
Quelle est la meilleure solution pour l'utilisation d'une servlet?
- La première solution permet un usage plus facile dans toute la servlet. Sans l'appel à la méthode héritée lors d'une redéfinition, la méthode getInitParameter () de la servlet lèvera une exception de type NullPointerException. 72.4.2. L'analyse de la requête
Formation
Esup -Commons V2FormationEsup-CommonsV2-ManipulationsPage2sur101 Introduction Lebutdecetteformationestdeparvenirréaliseruneapplicationdeboutenboutàl'aideduframeworkesup-commons.Ceciinclutlamaîtrisede l'environnementdedéveloppementetdesméthodologiespréconiséesparesup-commons.Pourcela,nousallonsréaliseruneapplicationsimplifiéedegestiondetâchesdetypetodo-list.Avant
comm nc r...Toutaulongdecedocumentvousrencontrerezcesicônes:& Vousindiquelesréférencesàladocumentationesup-commonsenligne8 Vousindiqueoùcliquer! Vousindiquelesastucesquivouspermettrontdegagnerdutempsdurantlaformation.Parexemple,lesélémentsdecorrectionsàcopier/collerplutôtquederetaper(enrisquantdesfautesdefrappe).Enfin,seulsleschapitresetexercicesindiquésparuneétoileserontabordésetobligatoiresdurantlasession.Cecidanslebutdepasserenrevuelespartieslesplusimportantesetcomplexesdelaformation.Lesexercicesrestantpourrontêtrefaitdemanièreautonome.Fonctionn m ntfinalatt n
ul'applicationUneapplicationwebautonomequiproposera;• Unepaged'accueil publique,unepagede gestiond estâches etune pagedegestiondesutilisateurs.• Lapaged'accueillisteralestâchespubliquesetoffriraunboutondeconnexion• Lapagedegestiondestâchesafficheralestâchesquiappartiennentouquisontassignéesàl'utilisateur.• Unefoisl'utilisateurauthentifiéilpourraprocéderàlagestiondestâches(ajout,édition,modificationetsuppressiondetâches).• Onpourraafficherledétaild'unetâcheetl'applicationfourniraunliendirectverscettetâcheetoffriralapossibilitéd'envoyerledescriptifdelatâchepare-mail.• Lapagedegestiondesutilisateursproposeradesoptionsd'administrationetnotemmentl'ajoutd'utilisateursenbaseaprèsrecherchedansunannuaireLDAP.• Unwebserviceexposeraentreautreuneméthodepermettantderécupérerlalistedes10dernièrestâchesd'unutilisateur.Uneportletd'accrochequiinterrogeralewebserviceetn'afficheraquelalistedesndernièrestâchesdel'utilisateurconnectéauportail.
labas onné sBoncourageJ!FormationEsup-CommonsV2-ManipulationsPage4sur101 Sommaire INTRODUCTION2SOMMAIRE4INDEXDESEXERCICES7PRISEENMAINDEL'ENVIRONNEMENT91LAMACHINEVIRTUELLE91.1PRESENTATION91.2INSTALLATIONDELAMACHINEVIRTUELLE91.3DEMARRAGE92L'ENVIRONNEMENTDEDEVELOPPEMENTECLIPSE103DECOUVERTEAVECESUP-EXAMPLE103.1CHECKOUTDEPUISSVN103.2ORGANISATIONDESFICHIERS113.3FONCTIONNEMENTENMODULESMAVEN113.4DEMARRAGE14CREATIOND'UNPROJET171CREATIOND'UNPROJETMAVENAPARTIRDEESUP-BLANK171.1VIAECLIPSE171.2ENLIGNEDECOMMANDE182UNCOUPDEMENAGE...202.1PREMIERLANCEMENT202.2MENAGEDANSLESLIBRAIRIESJSF222.3MENAGEDESMODULESINUTILES23BEANSSPRING241LEFICHIERDECONFIGURATIONPRINCIPAL242L'INJECTION243ACCESAUXPARAMETRESDECONFIGURATION27GESTIONDESLOGSETTESTSUNITAIRES291GESTIONDESLOGS291.1UTILISATIONDANSLECODEJAVA291.2ACTIVATIONDUMECANISMEDELOG292LESTESTUNITAIRES292.1EXECUTIONDESTESTSUNITAIRESVIAMAVEN302.2EXECUTIONDESTESTSUNITAIRESDANSECLIPSE34ACCESAUXDONNEES351L'OBJETMETIER352LACOUCHEDAO353LACOUCHESERVICES374PREMIERSTESTSD'ECRITUREETLECTUREENBASE39LESVUES431JSFETSESLIBRAIRIES432FACELET433PAGESETNAVIGATION44
FormationEsup-CommonsV2-ManipulationsPage7sur101 Index des exercices EXERCICEN°1:RECUPERATIOND'UNPROJETDEPUISSVN10EXERCICEN°2:LANCEMENTD'UNEAPPLICATIONMAVEN14EXERCICEN°3:CREATIOND'UNPROJETAPARTIRD'UNARCHETYPEMAVEN17EXERCICEN°4:INSTANCIATIOND'UNBEANSIMPLE25EXERCICEN°5:PERSONNALISATIONDESCONFIGURATIONSGRACEAL'INJECTION27EXERCICEN°6:TESTUNITAIRESIMPLE30EXERCICEN°7:TESTUNITAIREAVANCE32EXERCICEN°8:CREATIOND'UNOBJETMETIERSIMPLE.35EXERCICEN°9:CREATIOND'UNERELATIONENTREOBJETSMETIERS41EXERCICEN°10:TESTDELACOUCHE-OMAINDANSUNTESTUNITAIRE41EXERCICEN°11:AJOUTD'UNMENUVIAUNTEMPLATEFACELET44EXERCICEN°12:AJOUTD'UNENOUVELLEPAGEAVECREGLEDENAVIGATION44EXERCICEN°13:PARCOURSD'UNTABLEAU45EXERCICEN°14:DECLARATIONETUTILISATIONDESENTREES49EXERCICEN°15:SURCHARGED'UNBUNDLE50EXERCICEN°16:AJOUTD'UNLANGAGE51EXERCICEN°17:CREATIOND'UNFORMULAIREDESAISIESIMPLE52EXERCICEN°18:UTILISATIOND'UNCONVERTISSEURPREDEFINI53EXERCICEN°19:CREATIOND'UNCONVERTISSEUR54EXERCICEN°20:VALIDATIONDESCHAMPSGRACEAUNVALIDATEUR55EXERCICEN°21:VALIDATIONDESCHAMPSGRACEAJSR30356EXERCICEN°22:AMELIORATIONDUFORMULAIRE:EDITIONETSUPPRESSION56EXERCICEN°23:AJOUTDEFONCTIONSAJAXPOURL'ERGONOMIE57EXERCICEN°24:L'AFFICHAGEDESEXCEPTIONS58EXERCICEN°25:AJOUTDESFONCTIONNALITESD'E-MAIL61EXERCICEN°26:METTREENPLACEUNEAUTHENTIFICATIONAS63EXERCICEN°27:CREATIONDEBOUTONSDECONNEXIONETDECONNEXION65
FormationEsup-CommonsV2-ManipulationsPage9sur101 Prise en main de l'environnement 1 Lamac inevirtuelle1.1 PrésentationPourl'ensembledecetteformationnousutiliseronsunemachinevirtuelleautonomesurlaquellesontinstallés:• Java6(JDK)• Maven• UnserveurdebasededonnéesMySQL• UnannuaireLDAP• UnserveurCAS• UnPortailEsupv3.21.2 Installationdelamac inevirtuelleCréerunemachinevirtuelledansVirtualBox• Système:Linux/Version:Ubuntu• Affecterauminimum1024Modemémoire• Utiliserundisquedurexistanto Nouveauxsupportsvirtuelso Pointerverslefichieresup-commons-formation.vdi• TerminerActiverlesVirtualisationsdeprocesseur(sivotrematériellepermet)1.3 DémarrageLancerlamachinevirtuelle.• Login/motdepasse:esup/esup
FormationEsup-CommonsV2-ManipulationsPage10sur1012 L'environnementdedéveloppementEclipseEclipseestdéjàinstallésurlamachinevirtuelle.& Guidedudéveloppeur>Priseenmain>Installationdel'environnementdedéveloppementhttp://www.esup-portail.org/x/iwAABgPluginsinstallés:• SpringIDE• Checkstyle• Maven• Subclipse• ResourceBundleEditor8 DémarrerEclips (raccourcisurlebureau)3 Découverteavecesup-exampleNousallonscommencerparnousfamiliariseravecmavenetlastructured'unprojetesup-commonsgrâceàl'applicationesup-example.& Guidedudéveloppe ur>Pri seenmain>Découverteavecesup-examplehttp://www.esup-portail.org/x/hwIABg3.1 C eckoutdepuisSVNExerciceN°1: Récupérationd'unprojetdepuisSVNRécupérerleprojetesup-exampledepuislerépertoiretrunkdudépôtSVNdeesup-commons.PasserenperspectiveSVNRepositoryExploringdansEclipse8 Windows>OpenPerspective>Other...
FormationEsup-CommonsV2-ManipulationsPage11sur101Ajouterledépôthttps://subversion.cru.fr/esup-commons.Faireuncheckoutsur/trunk/esup-example3.2 Organisationdesfic iersPasserenperspectiveJavaEE.3.3 FonctionnementenmodulesMaven& Guidedudéveloppeur>Priseenmain>Méthodologiededéveloppementhttp://www.esup-portail.org/x/jQAABg
FormationEsup-CommonsV2-ManipulationsPage12sur101Activerlagestiondesdépendancesmavensurleprojet8 Cliquedroit>Maven>EnableDependencyManagment
FormationEsup-CommonsV2-ManipulationsPage13sur101Puisconstruireleprojet:8 Cliquedroit>Runas...>MaveninstallOnobserveradanslaconsoleJava:13/10/11 16:01:57 CEST: /home/esup/workspace/esup-example 13/10/11 16:01:57 CEST: mvn -B install Ceciprenduncertaintempssileslibrairiesnefigurentpasdansvotrerépertoire.m2 [INFO] ------------------------------------------------------------- [INFO] Reactor Summary: [INFO] ------------------------------------------------------------- [INFO] esup-example .......................................... SUCCESS [43.472s] [INFO] example-domain-beans .................................. SUCCESS [1:12.760s] [INFO] example-dao ........................................... SUCCESS [20.388s] [INFO] example-domain-services ............................... SUCCESS [1:40.356s] [INFO] example-utils ......................................... SUCCESS [0.115s] [INFO] example-web-jsf-shared ................................ SUCCESS [44.605s] [INFO] example-web-jsf-servlet ............................... SUCCESS [19.458s] [INFO] Unnamed - org.esupportail:example-web-jsf-mixed:war:1.0-SNAPSHOT SUCCESS [1:12.226s] [INFO] example-web-jsf-mobile ................................ SUCCESS [4.589s] [INFO] example-web-jsf-portlet ............................... SUCCESS [37.499s] [INFO] ------------------------------------------------------------- [INFO] ------------------------------------------------------------- [INFO] BUILD SUCCESSFUL
FormationEsup-CommonsV2-ManipulationsPage14sur101[INFO] ------------------------------------------------------------- [INFO] Total time: 7 minutes 1 second [INFO] Finished at: Thu Oct 13 16:08:59 CEST 2011 [INFO] Final Memory: 56M/169M [INFO] ------------------------------------------------------------- 3.4 DémarrageExerciceN°2: Lancementd'uneapplicationMavenNousallons commencernospremierst estssurun eapplicationdetypeservlettraditionnelle.Surlemoduleweb-jsf-servlet.mvn jetty:run 8 Cliquedroitsurleprojetweb-jsf-servlet>RunAs>Mavenbuild...8 Saisirunnomdetâcheetgoals:jetty:run
FormationEsup-CommonsV2-ManipulationsPage15sur101OnobserveradanslaconsoleJava:13/10/11 16:28:41 CEST: /home/esup/workspace/esup-example/example-web-jsf-servlet 13/10/11 16:28:41 CEST: mvn -B jetty:run L'executiondoitseterminerparlesmessagessuivantsdanslaconsole:[...] 2011-10-13 16:29:53.395:INFO::Started SelectChannelConnector@0.0.0.0:8080 [INFO] Started Jetty Server Démarrerunnavigateuretserendresurhttp://localhost:8080Testerlesdifférentesoptionsdumenu
FormationEsup-CommonsV2-ManipulationsPage17sur101 Création d'un projet & Guidedudéveloppeur>Priseenmain>Créationd'unprojetàpartird'unarchetypeblankhttp://www.esup-portail.org/x/lAAABgExerciceN°3: Créationd'unprojetàpartird'unarc etypemavenEsup-commonsproposeunarchéty pequip ermetdecréerautomatiquementt outel'arborescenced'unprojetvidequirespecteralespréconisationsduconsortiumpourledéveloppementd'uneapplication.1 Créationd'unprojetmavenàpartirdeesup-blankLadocumentation:F http://www.esup-portail.org/pages/viewpage.action?pageId=100663444Lastructureduprojetvaêtreconstruiteàpartird'unarchétypemavendontvoicilesparamètres:• archetypeRepository=https://mvn.esup-portail.org/content/repositories/releases• archetypeGroupId=org.esupportail.blank• archetypeArtifactId=esup-blank-archetype• archetypeVersion=0.2.8• groupId=org.esupportail.formation• artifactId=esup-formation• package=org.esupportail.formation• version=0.0.1-SNAPSHOT1.1 ViaEclipse8 File>new>project>Project...>Maven>Mavenproject
FormationEsup-CommonsV2-ManipulationsPage18sur1018 AddArchetype8 Créationduprojet1.2 EnlignedecommandeNousallonslancerl'équivalentenlignedecommande.Pourcela,ouvrirunterminal(raccourcisurlebureau).! Pourvoussimpli fierlatâch e,récupéreretplacerlescript create-project.shdans/esup/workspaceetlelancer.Dansesup/workspace lescriptvafaireunmvn archetype:generate -B -DarchetypeRepository=https://mvn.esup-portail.org/content/repositories/releases -DarchetypeGroupId=org.esupportail.blank -DarchetypeArtifactId=esup-blank-archetype -DarchetypeVersion=0.2.8 -DgroupId=org.esupportail.formation -DartifactId=esup-formation -Dpackage=org.esupportail.formation -Dversion=0.0.1-SNAPSHOT
FormationEsup-CommonsV2-ManipulationsPage19sur101Puisdanslerépertoireduprojet/esup-formationlescriptvafaireunmvn eclipse:eclipse 8 File>import...>Maven>ExistingMavenProjects...8 Browse>choisiresup-formation>Valider8 Cochertouslespom.xml>Finish
FormationEsup-CommonsV2-ManipulationsPage20sur101Onconstatealorsqu'éclipsefaitunBuildmavendependenciesetunBuildmavenprojectEclipseaalorsconstruitplusieursprojets.Ils'agitenfaitd'unprojetracine,iciesup-formationetdel'ensembledesesmodules,iciesup-formation-xxx.& Guidedudévelopp eur>Pri seenmain>Organisationdesfichiers http://www.esup-portail.org/x/pgAABgLeprojetestalorscomplètementautonomeetdéconnectéducoreesup-commonsetdeSVN.Mavennesertqu'àgérerlesdépendances.CeprojetpourraensuiteêtrepartagéviaSVNouêtrelui-mêmedéposésurunrepositorymaven(pourd'autresprojetsquienendépendraient)etmêmepotentiellementdevenirarchetypemaven(modèledeprojet).2 Uncoupdeménage...2.1 PremierlancementSurleprojetracine:mvn install 8 Cliquedroitsurleprojetracineesup-formation>RunAs>MavenInstall[INFO] Reactor Summary: [INFO] [INFO] esup-formation .................................... SUCCESS [0.933s] [INFO] esup-formation-domain-beans ....................... SUCCESS [4.283s] [INFO] esup-formation-dao ................................ SUCCESS [1.562s] [INFO] esup-formation-utils .............................. SUCCESS [0.580s] [INFO] esup-formation-domain-services .................... SUCCESS [0.961s] [INFO] esup-formation-web-jsf-mixed ...................... SUCCESS [14.104s] [INFO] esup-formation-web-jsf-servlet .................... SUCCESS [7.868s] [INFO] esup-formation-web-jsf-mobile ..................... SUCCESS [8.539s] [INFO] esup-formation-web-jsf-portlet .................... SUCCESS [8.928s] [INFO] esup-formation-web-springmvc-servlet .............. SUCCESS [4.476s] [INFO] esup-formation-web-springmvc-portlet .............. SUCCESS [10.112s] [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS
FormationEsup-CommonsV2-ManipulationsPage21sur101Silatraceestunpeudifférenteetfaitréférenceàdesmodulesunnamed,c'estparcequesurlamachinevirtuelleonutiliseMaven2quirecommandedepréciserunebalise
FormationEsup-CommonsV2-ManipulationsPage22sur1012.2 MénagedansleslibrairiesJSFStopperleserveur.Danslemodule web-jsf-servlet lefich ier /src/main/webapp/stylesheets/welcome.xhtmlôtertouteslesdéclarationsetlesutilisationsdeslibrairiesprimefaces,tomahawk(corps+déclaration)etutiliserplutôtlesbalisesJSFstandard.Onôtedonclesdéclarationsdeslibrairiestomahawk,primefaces,esupportail:• http://primefaces.prime.com.tr/ui• http://commons.esup-portail.org• http://myfaces.apache.org/tomahawkOnlaisselesdéclarationsdeslibrairiesJSFstandard:• http://java.sun.com/jsf/core• http://java.sun.com/jsf/facelets• http://java.sun.com/jsf/htmlOnpour rafairedemêmedan stemplate.xhtml,_include/_header.xhtmletexception/exception.xhtmlOterlabaliseprimefacesdansexception.xhtmlenremplaçant...
FormationEsup-CommonsV2-ManipulationsPage23sur1012.3 MénagedesmodulesinutilesEnfin,supprimerles modulesdontnousnenousservironspasaucours decette formationàsavoir:• esup-formation-web-jsf-mixed• esup-formation-web-springmvc-servlet• esup-formation-web-springmvc-portletPuisdanspom.xmlduprojetracineesup-formation,ôteroucommenterlesmodulesfilscorrespondants:
FormationEsup-CommonsV2-ManipulationsPage24sur101 Beans Spring & Guidedudéveloppeur>Priseenmain>LesbeansSpringhttp://www.esup-portail.org/x/qAAABg1 Lefic ierdeconfigurationprincipalSpringpermetdecréerdesobjets(appelésalorsbeans)enlesdéclarantdansunfichierdeconfigurationXML.Lefichierdeconfigurationprincipalestdéclarédanslefichierweb.xml sousformed'unparamètredel'application.Ilsetrouveradoncdanslemoduledevuequiseralancé.Ouvrirparexempledanslemoduleweb-jsf-servletlefichier src/main/resources/properties/applicationContext.xml Dansesup-commonscefichie rdeconfigurationprin cipalco ntientseulementdesinclusionsdefichiersdeconfigurationsspécialiséspardomaineL'importdesdifférentsfichiers
FormationEsup-CommonsV2-ManipulationsPage25sur101Exemple:
ansunfichi rOuvrirlefichiersrc/main/resources/properties/smtp/smtp.xml onremarqu edesparamètresexternalisésparl'intermédiaired'unevariable.Exemple:
ronfigur rdespringproposeunmécanismedesurchargedesfichiersdepropriét és.Onvoi tainsidansl'exemple l'utilisationd'unfichier/properties/defaults.propertiesquicontiendralaconfiguration pardéfautdel'application.Ilsuf firaalorsdesurcharger dansleficher/properties/config.propertieslesparamètresquineconviennentpasdufichier/properties/defaults.properties.Onconstatequeconfig.propertiesestvide.Eneffet,pardéfautuneapplicationviergeutiliselesparamètrespardéfaut.ExerciceN°4: Instanciationd'unbeansimpleL'objectifdecetexerciceestdecréerunbeansimpleetd'yinjecterlesvaleursdesattributsgrâceàspring.Dansdomain-beansajouterlebeanTaskpackage org.esupportail.formation.domain.beans; public class Task{ private boolean publicTask; private String title; private String description; public String getTitle() { return title;
FormationEsup-CommonsV2-ManipulationsPage26sur101 } public void setTitle(String title) { this.title = title; } public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } public boolean isPublicTask() { return publicTask; } public void setPublicTask(boolean publicTask) { this.publicTask = publicTask; } } ! RécupérerlefichierTask.java-exo4Déclareruneinsta ncedecebeandanssrc/main/resources/properties/web/beans.xml
FormationEsup-CommonsV2-ManipulationsPage27sur101[...] public class SessionController extends AbstractDomainAwareBean { [...] @Override public void afterPropertiesSetInternal() { [...] System.out.println("Test injection => "+task.getTitle()+" "+task.getDescription()); } [...] Surleprojetracine:mvn clean install Surlemoduleweb-jsf-servlet.mvn jetty:run Seconnectersurl'applicationpourinstancierleS ssionontroll r.Pourcela,lancerdansunnavigateurF http://localhost:8080/Ontrouveraalorsdansleslogs:Test injection => titre 1 description blabla 3 AccèsauxparamètresdeconfigurationExerciceN°5: Personnalisationdesconfigurationsgrâceàl'injectionDanscetexercicenousallonsobserverlefonctionnementglobalduparamétraged'uneapplicationetmodifierpourl'exemplelaconfigurationdusystèmed'authentification(quiseravuplustard)grâceauxmécanismesd'injectionspring.Danslemoduledomain-services vérifierdans lefichiersrc/main/resources/META-INF/esup-formation-domain-services-auth.xmlquelaméthod ed'auth entificationestbie n"offline»(utilisationdelaclasseorg. supportail.commons.s rvic s.auth ntication.Offlin Fix
Us rAuth nticationS rvic auniveaudeauthenticator).Oncons tatequel'identifiantdubeanréférencéest indiquédans unevariable${auth.bean}quiseradéclaréedanssrc/main/resources/defaults.propertiesdumoduleweb-jsf-servletquiserasurchargéparconfig.properties.Changerleloginquiserapositionnéendurpardéfautetletyped'authentificationquiserasimulé.Exemple:
FormationEsup-CommonsV2-ManipulationsPage28sur101Oncons tatequedanssrc/main/resources/properties/misc/application.xml onpeutparamétrerlaversiondel'application.Changerlenumérodelaversion.
FormationEsup-CommonsV2-ManipulationsPage29sur101 Gestion des Logs et tests unitaires 1 GestiondeslogsEsup-commonsutiliselalibrairie standar dcommons-loggingd'Apachequipermetd'utiliserdifférentsmécanismesdelog(standardJava,Log4j,etc.).1.1 UtilisationdanslecodeJavaPourpouvoirut iliserun loggerdansuneclassedevot reapplicat ionvousdevezledéfinir.Suivantlecas,vousaurezdeuxdéfinitions.Exemple:private static final Logger LOGGER = new LoggerImpl(NonClasse.class); ouprivate final Logger logger = new LoggerImpl(getClass()); Lepremier exempleestadaptéà l'utilisationd'un loggeràl'i ntérieurd'uneclass eutilitaireconstituéedeméthodes définiesstatic.Lesecond exempleestadaptéaux classesdynamiques.Dans cecasl'utilisationdegetClas s()permetd'avo iruneinformationsurlaclasseconcrèteutilisée.C'estparticulièrementutileencasd'héritagedeclasses.EnsuitevouspouvezutiliserceloggerdansvosméthodespourloguerenmodeTRACE,DEBUG,INFO,WARNouERROR.Exemple:logger.error("Nous avons un problème"); AfindenepaspénaliserlesperformancesaveclagestiondeslogsenmodeDEBUGetTRACEilestconseillédetesterleuractivation.Exemple:if (logger.isDebugEnabled()) { logger.debug("set language " + locale + " for user '" + currentUser.getId() + "'"); } 1.2 ActivationdumécanismedelogLemécanis medegestiondeslogse stconfi gurédanslefichiersrc/main/resources/log4j.propertiesdumodule web-jsf-servletDansconfig.propertiesparamétrerlagestiondeslogsàvotreconvenance.Ajouterparexemple:log.level=DEBUG log.output=stdout 2 LestestunitairesLestestsunitairessont(oudevraientêtre!)unepartieimportantedetouteapplicationJava.
FormationEsup-CommonsV2-ManipulationsPage30sur1012.1 ExecutiondestestsunitairesviaMavenMavenintègrecomplètementlestestsunitairesdanslecyclededéveloppement.Pourexécuterl'ensembledestestsunitaires,onappellelaphasetestducycledevie:mvn test ExerciceN°6: TestunitairesimpleAfindevoircommentmavenintègrelagestiondestestsunitairesnousallonsmettreenplaceuntestunitairesimplesurlebeanTask.Danslefichierpom.xmldumoduledomain-beansajouterladépendanceversJUnit.
FormationEsup-CommonsV2-ManipulationsPage31sur101Onconstatealorsdanslaconsole:Running org.esupportail.formation.domain.beans.TaskTest [...] Failed tests: testSetTitle(org.esupportail.formation.domain.beans.TaskTest): Not yet implemented [...] Tests run: 2, Failures: 2, Errors: 0, Skipped: 0 [...] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.7.2:test (default-test) on project esup-formation-domain-beans: There are test failures. Etsiontentedecompileroulancerl'applicationonobtientlamêmeerreur:• Surlemoduleousurleprojetracinemvn clean install • Surlemoduleweb-jsf-servletmvn jetty:run Eneffet,mavenexigequel'ensembledestestsunitairessoitvalidéavantdepoursuivre.Ajoutermaintenantuntestquipasse(ouquipeutpasserpourêtreexact!)@Test public void testSetTitle() { Task t=new Task(); t.setTitle("test titre"); assertEquals("test titre",t.getTitle()); } EtlàçapasseRunning org.esupportail.formation.domain.beans.TaskTest Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.051 sec Results : Tests run: 1, Failures: 0, Errors: 0, Skipped: 0 Ilesttoujourspossibled'indiquerexplicitementàmavend'ignorerlestests• Enlignedecommande-Dmaven.test.skip=true ou-DskipTests=true • Auniveaudufichierpom.xml
FormationEsup-CommonsV2-ManipulationsPage32sur1018 FenêtreRun>Runconfigurations>cocherSkipT stExerciceN°7: TestunitaireavancéOnsouhai teparexempletesterquel 'authentica torinjectéestbien dela classeAuthenticatorImpl.Cetestestcomplètementabsurdedansuncasréelmaisilvanouspermettredevoircommentlanc erdestestsenmo debatch(horsconte neurJ2EE)dépendantd'unearborescencedefichiersdeconfigurationstraditionnellementgérésparleconteneurJ2EEdansuncontexteweb.Démarrercommel'exerciceprécédentdanslemoduledomain-servicesCréeruneclassedetestsurAuth nticatorpackage org.esupportail.formation.domain; import org.esupportail.formation.services.auth.Authenticator; import org.junit.Assert; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; [...] public class AuthenticatorTest { @Autowired private Authenticator authenticator; @Test public void testSetAuthenticationService() { Assert.assertEquals("org.esupportail.formation.services.auth.AuthenticatorImpl",authenticator.getClass().getName()); } } Danssrc/test/resources/META-INF(àcréer)créerunfichier deconfiguration springsimilaireàapplicationContex.xml(testApplicationContext.xmlparexemple)quicontiendra:
FormationEsup-CommonsV2-ManipulationsPage33sur101
Us rAuth nticationS rvic Pourcela,ondéclareragetAuthenticationService()deAuth nticatorcommeméthodepublicetnonplusprotected:public AuthenticationService getAuthenticationService() { return authenticationService; } ...etontestera:Assert.assertEquals("org.esupportail.commons.services.authentication.OfflineFixedUserAuthenticationService",authenticator.getAuthenticationService().getClass().getName());
FormationEsup-CommonsV2-ManipulationsPage34sur1012.2 ExecutiondestestsunitairesdansEclipseEclipsepermetdelancerdirectementuntestunitairegrâceàun:8 Cliquedroitsurlaclassedetest>Runas>JUnitTestLerésultatestalorsvisuel...
FormationEsup-CommonsV2-ManipulationsPage35sur101 Accès aux données & Guidedudéveloppe ur>Dév eloppementd'applications>Accèsaux donnéeshttp://www.esup-portail.org/x/zwAABgExerciceN°8: Créationd'unobjetmétiersimple.L'objectifdecepremierexerciceestdecréerl'objetmétierreprésentantunetâcheetdemettreenplacelesmécanismesd'écrituresetlectureenbasededonnée.PourcelaonutiliseraunebasededonnéeembarquéeHSQL.1 L'objetmétierCréerunobjetmétierquiseramappéenbase.Danslepom.xmldumoduledomain-beansajouterladépendanceverslemoduleJPAdeesup-commons.
ao.AbstractG n ricJPA-aoS rvic ainsiquesoninterface-aoS rvic quidevraseprésentercommesuit: package org.esupportail.formation.dao; import java.io.Serializable; import java.util.List; import org.esupportail.formation.domain.beans.Task;
FormationEsup-CommonsV2-ManipulationsPage36sur101 /** * The DAO service interface. */ public interface DaoService extends Serializable { /** * Get all public task. */ public List
FormationEsup-CommonsV2-ManipulationsPage37sur101
aoS rvic dansMETA-INF/esup-formation-domain-services-domain.xml vic >permetdepréciserlanaturedelatransaction.Icionprécise,viapropagation="REQUIRED"quel'onveutcréerunetransaction,siellen'estpasencoreprésente,surtouteslesméthodesdontlenomcommenceparadd,deleteouupdate.Danslefichiergénéraldepropriétésdumoduledevuequiserautilisé(iciweb-jsf-servlet)src/main/resources/properties/config.propertiesconfigurerla connexionàlabasededonnées(cf.variablesutiliséesdansdao-dao.xml)#################################################################### # Database jdbc.connection.driver_class=org.hsqldb.jdbcDriver jdbc.connection.url=jdbc:hsqldb:file:formationData jdbc.connection.username=sa jdbc.connection.password= jndi.datasource=jdbc/formationDB # JNDI/JDBC # for JDBC datasource.bean=JDBCDataSource # for JNDI datasource.bean=JNDIDataSource datasource.bean=JDBCDataSource jpa.database.type=HSQL FormationEsup-CommonsV2-ManipulationsPage39sur101Enfin,sicelan'apasétéfaitajouterl'importdufichierdepropriétésDAO FormationEsup-CommonsV2-ManipulationsPage40sur101"OK"s'affichelaméthodeaétéappeléeDanslaconsoleona...Hibernate: select task0_.id as id0_0_, task0_.date as date0_0_, task0_.description as descript3_0_0_, task0_.publicTask as publicTask0_0_, task0_.title as title0_0_ from Task task0_ where task0_.id=? Hibernate: insert into Task (id, date, description, publicTask, title) values (null, ?, ?, ?, ?) Hibernate: call identity() ...cequisembledirequelatâcheaétéajoutée.DansEclipsefaireunrefreshsurweb-jsf-servlet.Onconstateque3fichiersontétécréésàlaracinedumodule:DansformationData.logouformationData.scriptontrouvelescriptdecréationdelabasegénéréàpartirdecequ'onadéclaréparannotationsJPA.CREATE SCHEMA PUBLIC AUTHORIZATION DBA CREATE MEMORY TABLE TASK(ID BIGINT GENERATED BY DEFAULT AS IDENTITY(START WITH 1) NOT NULL PRIMARY KEY,DATE TIMESTAMP,DESCRIPTION VARCHAR(255),PUBLICTASK BOOLEAN NOT NULL,TITLE VARCHAR(255) NOT NULL) ALTER TABLE TASK ALTER COLUMN ID RESTART WITH 2 CREATE USER SA PASSWORD "" GRANT DBA TO SA SET WRITE_DELAY 10 SET SCHEMA PUBLIC Enrevanche,ilnecontientpaslesdonnées.Sionstoppejetty,onn'atoujourspasdedonnéesdanscefichier.OnredémarreetlàonaINSERT INTO TASK VALUES(1,'2011-07-27 13:17:27.957000000',NULL,TRUE,'titre de test') Enfait,touteslesactionsfaitesenbasesontd'abordconservéestemporairementdansunfichierdelogformationData.log.Achaquedémarrageleslogssontrejouésetl'étatdelabaseestalorsenregistrédansformationData.script.Ajouterlarécupérationdel'ensembledestâchesenbasedanslaméthodegetTestDao()etlelisterdanslaconsoleList FormationEsup-CommonsV2-ManipulationsPage41sur101 logger.debug(t.getId()+" : "+t.getTitle()); } Ondéclareraleloggerprivate final Logger logger = new LoggerImpl(getClass()); OndoitalorsretrouverleslignessuivantesHibernate: select task0_.id as id0_, task0_.date as date0_, task0_.description as descript3_0_, task0_.publicTask as publicTask0_, task0_.title as title0_ from Task task0_ 2011-11-09 16:56:02,678 DEBUG [org.esupportail.formation.web.controllers.TaskController] - 1 : titre de test ExerciceN°9: Créationd'unerelationentreobjetsmétiersPardéfaut, ontrouve danslemodule domain-beanslaclas seUser.Nousallons maintenantgérercetyped'objetenbaseetajouterunerelationavecl'objetTask.Ils'agiradoncd'ajouterlapropriétéownerquiseraleUserquiacréélatâche.Pourallerplusloin:• Ajouterettesterlamodificationd'uneTâche• Ajouterettesterlasuppressiond'uneTâche• Ajouterlarecherchedestâchesd'unuser• Faireensortequelorsqu'onsupprimeunUserenbase,l'ensembledesestâchessoientsuppriméeségalementDansUs r :• Ajouteridcommeidentifiantgénéréautomatiquementgrâceàl'annotation@GeneratedValue • Nestockerqueid,etloginlesautrespropriétésserontignoréesgrâceà@Transient • AjouterlebeanUs rdansdao-persistence.xmlDansTask• AjouterlarelationsurunepropriétéUserownerenutilisantl'annotationManyToOne(optional = true) Dansdomain-servicesetdao:• AjouterlesaccèsàlapersistancedesobjetsUs r(add,remove,etc.)TesterenlogantcommeprécédemmentExerciceN°10: Testdelacouc edomaindansuntestunitairePourvaliderl'intégritédecettecouched'accèsauxdonnéesquiestamenéeàchangersouventaucoursdu développementd'uneap plication,onajo uteraquelquestestsunitaires.(Exercicefacultatif)CréeruntestCasesur omainS rvic quipourraressembleràça:package org.esupportail.formation.domain; import java.util.Date; import java.util.List; import junit.framework.Assert; FormationEsup-CommonsV2-ManipulationsPage42sur101 import org.esupportail.formation.domain.beans.Task; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations="classpath*:META-INF/testApplicationContext.xml") public class DomainServiceTest { @Autowired DomainService domainService; @Test public void testAddTask() { Task t=new Task(true, "Test de tache", "Tache de test", new Date()); domainService.addTask(t); List FormationEsup-CommonsV2-ManipulationsPage43sur101 Les vues Esup-commonslaisselalibertéaudéveloppeurdechoisirlatechnologiedevuequ'ilsouhaite:• SpringMVC• JavaFaces:JSFCesdernièresétantsensiblementdifférentes,nousnelesdétailleronspasdanscetteséancelesdifférentestechnologies.Ellespourrontfairel'objetdesessionsdeformationdesecondniveauspécialiséessurl'uneoul'autredecestechnologies.& Guidedudévelopp eur>Pri seenmain>Lesvueshttp://www.esup-portail.org/x/KYA6Bw1 JSFetseslibrairies& Guidedudéveloppe ur>Pri seenmain>JSFhttp://www.esup-portail.org/x/qgAABgPourcommenceretresterrelativementprochedecequel'onpouvaitfaireenesup-commonsV1nousallonsutiliserJSF.Cependant,nousnouslimiteronsauxlibrairiesJSFstandardetnousn'utiliserons pasleslibrairiesplus évoluéestellesquetomahawk,primefacesetc.Danslesprochainschapitresnousallonsessentiellementtravaillersurlemoduledevue.DansEclipse,pouractiverl'autocomplétiondanslespagesJSFoncocheradansProject>Properties>ProjectFacets>JavaserverFaces2 Facelet& Guidedudévelopp eur>Pri seenmain>JSF>Facelethttp://www.esup-portail.org/x/sAAABg FormationEsup-CommonsV2-ManipulationsPage44sur101ExerciceN°11: Ajoutd'unmenuviauntemplatefaceletOnsouhaiteajouterunmenuetquiserafixepourtouteslespagesdenotreapplication.Pourcelanousallonscréeruntemplatefaceletquel'onchaînerasurletemplateproposépardéfaut.Seplacerdansl'arborescencesrc/main/webapps/stylesheetsDanscréerunfichierpageTemplate.xhtmlquilui-mêmeappeleratemplate.xhtmletdanslequelonnedéfiniraquelemenuquel'onsouhaitefixe FormationEsup-CommonsV2-ManipulationsPage45sur101 xmlns:h="http://java.sun.com/jsf/html" template="/stylesheets/pageTemplate.xhtml"> FormationEsup-CommonsV2-ManipulationsPage46sur101 } Danssrc/main/webapps/stylesheets/taskManager.xhtmlonauraceci: FormationEsup-CommonsV2-ManipulationsPage47sur101 getDomainService().addUser(user1); } //On ajoute la tâche getDomainService().addTask(new Task(true, "titre de tache bidon", "", new Date(), user1)); } public void supprimeTout() { List FormationEsup-CommonsV2-ManipulationsPage48sur101Danssrc/main/javadeweb-jsp-servletajouterlesméthodessortTasksByDate()etsortTasksByTitle()àorg. supportail.formation.w b.controll rs.Taskontroll r public void sortTasksByDate() { if (this.sortedTasks==null) sortedTasks = getDomainService().getTasks(); Collections.sort(sortedTasks, new TaskDateComparator()); } public void sortTasksByTitle() { if (this.sortedTasks==null) sortedTasks = getDomainService().getTasks(); Collections.sort(sortedTasks, new TaskTitleComparator()); } Enfinajouterlesboutonsdetriàlavue FormationEsup-CommonsV2-ManipulationsPage49sur101 Internationalisation & Guidedudéveloppe ur>Dév eloppementd'applications>Internationalisationhttp://www.esup-portail.org/x/xwAABg1 ConfigurationL'internationalisationestdéfiniedanslefichierdeconfigurationsrc/main/resources/properties/i18n/i18n.xml.Onytrouveraparexemple: FormationEsup-CommonsV2-ManipulationsPage50sur1012.2 Utilisation2.2.1 DucôtédelavueDanssrc/main/webapps/stylesheets/taskManager.xhtmlondéclareralesclésdetraductiondelamanièresuivante: FormationEsup-CommonsV2-ManipulationsPage51sur1014 DéfinitiondeslangagesExerciceN°16: Ajoutd'unlangageAjouterlelangagejaponaisettraduiretoutel'applicationJ.L'ajoutd'unlangagesefaitdanslefichierdeconfigurationsrc/main/webapps/WEB-INF/jsf/faces-config.xml.Ilsuffitensuited'écrirelebundlecorrespondant.5 Lesmessagesd'erreurpardéfautdeJSFDanssrc/main/webapps/WEB-INF/jsf/faces-config.xmlonremarque FormationEsup-CommonsV2-ManipulationsPage52sur101 Formulaires et Validation & Guidedud éveloppe ur>Priseenmain>JSF>Ecriture desfor mulaireshttp://www.esup-portail.org/x/tQAABg1 FormulairesetbindingExerciceN°17: Créationd'unformulairedesaisiesimpleNousallonsajouterunformulairedesaisied'unenouvelletâche.Lesdonnéessaisiesàtraversleformulairevontêtrebindéessurunobjet.Dansorg. supportail.formation.w b.controll rs.Taskontroll rajouterunepropriétécurrentTaskdetypeTaskainsiquelesaccesseurscorrespondants. private Task currentTask=null; [...] public Task getCurrentTask() { return currentTask; } public void setCurrentTask(Task currentTask) { this.currentTask = currentTask; } Nousallons d'abordcréerunformula iresimplequiper metlasai siedutitre(obligatoire),deladescriptionetducaractèrepublicounondelatâche.CréerdeformulairedanstaskManager.xhtml.Onferaafficherlesmessagesd'erreurcorrespondantàchaquechamp. FormationEsup-CommonsV2-ManipulationsPage53sur101 FormationEsup-CommonsV2-ManipulationsPage54sur101Danscertainscas,ilestaussinécessairededéfinirdesconvertisseursmanuellement.C'estnotammentlecaspourleslistesdéroulantes.ExerciceN°19: Créationd'unconvertisseurAjouterunelistedéroulantepourlechoixdel'utilisateurpropriétairedelatâche.Lalisteproposeral'ensembledesUsersenbasededonnées.Onsouhaitemapperdirectementl 'utilisateurquiserasél ectionnéavec lapropriétéownerdubeantaskmappéauformulaire.D'oùlanécessitéd'unconvertisseurquipourunloginfournileUsercorrespondantenbaseetpourunUserlelogincorrespondantPourcela,ajouterunélément FormationEsup-CommonsV2-ManipulationsPage55sur101Onsouhaiteallerrechercherl'objetUs renbasededonnées.Onn'utiliseralaméthodegetUser()de omainS rvic quel'oninjecteravialadéclarationdesbeansSpring.Déclarerceconvertisseurdansconverters.xml.
[PDF] exercices corrigés spectroscopie d'absorption atomique
[PDF] exercices corrigés spectroscopie infrarouge
[PDF] exercices corrigés spectroscopie rmn
[PDF] exercices corrigés spectroscopie uv visible pdf
[PDF] exercices corrigés spss
[PDF] exercices corrigés stabilité des systèmes asservis
[PDF] exercices corrigés statique du solide
[PDF] exercices corrigés structure des molécules 1ere s
[PDF] exercices corrigés structures de données langage c
[PDF] exercices corrigés suites 1ere es
[PDF] exercices corrigés suites 1ere s
[PDF] exercices corrigés suites arithmético géométriques terminale es
[PDF] exercices corrigés suites arithmétiques géométriques pdf
[PDF] exercices corrigés suites numériques bac pro pdf