J2EE : Framework Wicket et JibX

Slides:



Advertisements
Présentations similaires
Un environnement de développement éducatif
Advertisements

19/06/02Kikiteam-ASI3n°1 / 21 Lenchere est en hausse… Forum, FAQ, Stats ! By KiKiTeam : Maxime Chambreuil, Minh LeHoai, Samy Fouilleux, Soizic Geslin.
ZOTERO logiciel de gestion bibliographique
A l’issue des conseils de classe de 3ème,
13/04/05 - RB1 Montpellier 24/03/2005 Les interactions entre le SSO ESUP et le mécanisme de propagation d'identité
JEE Approfondi Frameworks : Maverick (MVC) JiBX (Persistance XML)
CASTEL Dennis SARZEAUD Floriane TAKAHASHI Atsushi.
Dimensions et Java : Plug-in, Build et EAR Elisabeth BAUDOIN STIME CLUB UTILISATEURS ALMA DU 23 NOVEMBRE 2010.
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod 1 Architectures Orientées Services Composants de Service Exemple pratique de développement.
Guillaume KRUMULA présente Exposés Système et Réseaux IR3 Mardi 5 Février 2008.
Premiers pas avec Apache Ant Par Guillaume BITAUDEAU Le 16/10/2003.
Projet Webase. I. La définition du projet 1. Lexistant : Webase 4 2. Cahier des charges 3. La répartition des données 4. Le modèle de données 5. Le choix.
CURSUS DE FORMATION AUX NOUVELLES TECHNOLOGIES DE DEVELOPPEMENT UV Borland JBuilder 7 Module WSAD.
Autorisations Utilisation eCATT
Atelier Portail SAP Durée : 2h.
Utilisation de VNC dans une salle informatique avec des élèves
Projet J2EE Maverick XMLBeans Garcel Jean-Baptiste – Le Loc Martin – Muller Thibaut.
Présentation des frameworks pour Java EE
Travaux pratiques sur Nooj
Interface Homme Machine IHM Pro
Gestion de la communication par établissement sur le site ville
Introduction à Qt et Qt Creator
Les requêtes La Requête est une méthode pour afficher les enregistrements qui répondent à des conditions spécifiques. La requête est donc un filtre.
Installation OpenBravo
LOG 02 Bases de Données Avancées Rappels sur JSP / Servlet
Page 1 Introduction à ATEasy 3.0 Page 2 Quest ce quATEasy 3.0? n Ensemble de développement très simple demploi n Conçu pour développer des bancs de test.
Présentation Installation Fonctionnement
Recip-e Ambulant Elektronisch Voorschijfsysteem Prescription électronique ambulatoire 26/01/2012 Recip-e Utilisation dEpicure.
Présentation Struts1-JaxB
M2 – MIAGE/SID Servlet M2 – MIAGE/SID
Tapestry - Eclipse Link
18/05/ Utiliser le cahier de texte en ligne avec lapplication SPIP Adresse du site du lycée :
1 Encoder les données. 2 Pour démarrer lencodage des données, cliquer sur « Les données »
Laboratoire d'Informatique de l’Université de Franche-Comté
Guide d'utilisation de Microsoft Weft Il s'agit de convertir un ou des fichiers Police de caractères (font) généralement de type.ttf en un ou des fichiers.eot.
1 CLUB DES UTILISATEURS SAS DE QUÉBEC COMMENT TRANSFORMER UN PROGRAMME SAS EN TÂCHE PLANIFIÉE SOUS WINDOWS Présentation de Jacques Pagé STRiCT Technologies.
e-Marque Traitement des fichiers
F Copyright © Oracle Corporation, Tous droits réservés. Créer des programmes avec Procedure Builder.
Développement d’application web
@SSR – Installation des applications eduscol.education.fr/securite - février 2007 © Ministère de l'Éducation nationale, de l'Enseignement supérieur et.
Développer en C avec Eclipse Introduction Création d'un projet Ajout de fichiers Compilation Exécution Utiliser le débogueur Département dinformatique.
Création d'un projet Web avec Netbeans
© Glaus & Ruckstuhl TECFA Le Processeur Apache / FOP.
Installation des programmes
1. 2 PLAN DE LA PRÉSENTATION - SECTION 1 : Code HTML - SECTION 2.1. : CSS (Méthode 1) - SECTION 2.2. : CSS (Méthode 2) - SECTION 3 : JavaScript - SECTION.
Programmation concurrente
Module 5 : Publication de ressources dans Active Directory
1 CSI 2532 Lab6 Application Web et DB Février 27, 2012.
Bienvenue sur le Net Personnel 1/23. 2 Saisir votre mot de passe en minuscule.
JEE 5 F.Pfister 2 institut eerie JEE – Une plateforme serveur  Développement et exécution d'applications réparties.
Veolia Consommateurs Contenu
M2 – MIAGE/SID Servlet M2 – MIAGE/SID
‘‘Open Data base Connectivity‘‘
BOUSQUET Alexis - GUILLEMIN Vincent - PETIT Cédric
Créer une page web en quelques clics
Création d’un site internet en XHTML + L’hébergement By Reyne & Archinard.
Module I-C3 : Applications Web IUT R&T 2e année
Création et présentation d’un tableau avec Word 2007
Date : Juillet 2014 Formation : TAI Formateur : Tayeb BENDJELTI
Guide de paramétrage RRDI pour CLM v3
Outil de gestion des cartes grises
Centre d’échange d’informations sur la Convention sur la Diversité Biologique Bienvenue dans le cours sur l’ajout d’une page web sur un site web développé.
KIWAPP IS A B2B FULL-STACK APP-MANAGEMENT TOOL KIWAPP EN QUELQUES ETAPES Octobre 2014.
MonACCÈS-École Guide n° 3 Formation initiale. Apprendre à utiliser les commandes de recherche; Recherche composée; Sélection d’élèves; Recherche en utilisant.
Struts.
Création du projet On commence comme d’habitude :
En route vers le déploiement . . .
Une police de caractères pour personnes ayant une dyslexie
ETM IBN ROCHD Présenté par : Mlle KHETTAR Lamia & Mlle AIT SAADA Kahina Novembre 2012.
FACTORY systemes Module 2 Section 1 Page 2-3 Installation d’Industrial SQL FORMATION InSQL 7.0.
Transcription de la présentation:

J2EE : Framework Wicket et JibX Aurélien Lesage Florent Decaudin Jérémy Liebgott

Wicket Présentation du Framework - Utilisation très simple (évidente) - Basé sur des POJO (Plan Old Java Object) - Toutes les pages sont codées en Java à la manière de swing - N’abuse pas des fichiers de configuration XML - Composants réutilisables et distribuables via des fichiers jar - Sécurité - Code sécurisé par défaut - Toute la logique de développement se fait en Java - Possibilité d’intégrer la gestion de la sécurité Java (Java security)

Wicket Installation du Framework Conteneur compatible JSP 2.0 (Tomcat 5.0 ou plus)‏ Utilisation de Slf4j et Log4j (.jar) Distribution Wicket 1.3.3 (.jar)

Wicket : installation Allez au menu File > New et sélectionnez Dynamic Web Project:

Wicket : installation Donc vous devriez finir avec un projet qui ressemble à ceci: Dans eclipse, clic droit sur le projet, properties et Java Build Path, ce qui donne cette fenêtre:

Wicket : installation Cliquez sur "Add External jars" et localiser le dossier lib dans le répertoire où vous avez décompressé Wicket, et sélectionnez les jars: Wicket-1.3.3.jar Wicket-datetime1.3.3.jar Wicket-extensions-1.3.3.jar

Wicket : installation Il faut aussi ajouter les jars de slf4j et de log4j, donc, "Add External jars" encore une fois et localisez les jars suivants: log4j.jar slf4j-api.jar slf4j-log4j12.jar

Wicket : installation Rendre les jars disponibles lors du runtime. Dans properties et "J2EE Module Dependencies" : Tout sélectionner

Wicket : fonctionnement Dans le dossier source (src): Une Class AnnuaireApplication.java dérivant de WebApplication Une Class AnnuairePage.java dérivant de WebPage Une page web html AnnuairePage.html liée à AnnuairePage.java

Wicket : fonctionnement Une Class AnnuaireApplication.java dérivant de WebApplication import org.apache.wicket.protocol.http.WebApplication; public class AnnuaireApplication extends WebApplication { public AnnuaireApplication() } public Class getHomePage() return AnnuairePage.class;

Wicket : fonctionnement Une Class AnnuairePage.java dérivant de WebPage import org.apache.wicket.markup.html.WebPage; import org.apache.wicket.markup.html.basic.Label; import org.apache.wicket.markup.html.form.Form; import org.apache.wicket.markup.html.form.TextArea; import org.apache.wicket.markup.html.list.ListItem; import org.apache.wicket.markup.html.list.ListView; import org.apache.wicket.model.PropertyModel; import org.apache.wicket.markup.html.link.Link;

Wicket : fonctionnement Une Class AnnuairePage.java dérivant de WebPage public final class AnnuairePage extends WebPage { […] public AnnuairePage() add(new FormulaireAjouterUtilisateur("formAjouterUtilisateur")); add(new Label("labelLogin", monUtilisateur.getLogin())); add(new TextArea("textFormLogin", new PropertyModel(monUtilisateurTemporaire, "login"))); }

Wicket : fonctionnement Une page web html AnnuairePage.html liée à AnnuairePage.java <html> <body> <span wicket:id = "labelUtilisateurs"> <a href="" wicket:id="lienSupprimer">Supprimer</a> <span wicket:id="labelLogin">Le login est affiche ici</span> <span wicket:id="labelMotdepasse">Le mot de passe est affiche ici</span> </span> <form wicket:id = "formAjouterUtilisateur"> <textarea wicket:id="textFormLogin">Login du nouvel utilisateur</textarea> <textarea wicket:id="textFormMotdepasse">Mot de passe du nouvel utilisateur</textarea> <input type="submit" value="Ajouter"/> </form> </body> </html>

Wicket : Problèmes Peu de documentations http://wicket.apache.org/ http://blog.developpez.com/djo-mos/p5743/java/wicket/ Fonctionnement similaire aux servlet et jsp:  Mais structures et syntaxes spécifiques à Wicket  Difficultés au développement  Possibilités plus restreintes

JiBX Présentation du Framework Flexibilité - Utiliser toute la structure des classes que vous voulez, tant que vous pouvez dire à JiBX la façon de le traduire vers et à partir de XML. Performance - Découpage de fichier de classe et de techniques d'amélioration, JiBX laisser construire de haute performance de triage et code directement dans vos classes. C’est le programmeur qui donne le lien entre le schéma XML et ses propres classes Java Pratique lorsqu'on utilise des classes déjà existantes. Un peu plus lourd à mettre en place

JiBX : installation JiBX Eclipse Ajouter l’add-on http://jibx.sourceforge.net/eclipse/ Activer le plug-in Paramétrer le plug-in

JiBX : installation JiBX Eclipse

JiBX : installation JiBX Eclipse JiBX doMappings begin JiBX doMappings using these mapping files: D:\cours_ing2\eclipse\wicket-jibx-annuaire\src\main\config\binding.xml D:\cours_ing2\eclipse\wicket-jibx-annuaire\src\main\config\annuaire.xml JiBX parseMappedClasses begin JiBX parseMappedClasses watching these mapped classes: \wic ket-jibx-annuaire\build\classes\Annuaire.class \wicket-jibx-annuaire\build\classes\Utilisateur.class \wicket-jibx-annuaire\build\classes\Client.class JiBX parseMappedClasses end JiBX doMappings end Error running binding compiler

JiBX : installation JiBX Ligne de commande Pour installer JiBX, il suffit de télécharger l’archive de la distribution et de le dézipper (extraires tous les .jar et tous les dossiers contenant des .jar) Cela crée un dossier contenant tous les fichiers de la distribution ainsi que la documentation.

JiBX: fonctionnement Ligne de commande Créer - annuaire.xml - annuaire.xsd Créer les classes java et du fichier binding.xml -cp jibx-tools.jar org.jibx.schema.codegen.CodeGen annuaire.xsd Créer les fichiers jibx nécessaires a l’utilisation du fichier xml via java java -jar jibx-bind.jar binding.xml - JiBX_bindingAnnuaire_access.class - JiBX_bindingFactory.class - JiBX_MungeAdapter.class

JiBX: fonctionnement Exemple de binding

JiBX: fonctionnement Créer annuaireManager.java qui va nous permettre de contrôler toutes les données. […] IBindingFactory bfactA = BindingDirectory.getFactory(Annuaire.class); IUnmarshallingContext = bfactA.createUnmarshallingContext(); Object obj = uctxA.unmarshalDocument (new FileInputStream("annuaire.xml"), null); this.annuaireObject = (Annuaire)obj; int nb = (this.annuaireObject.getUtilisateurs().size()); this.annuaireObject.setVersion("037"); this.mctx = bfactA.createMarshallingContext(); mctx.setIndent(4); mctx.marshalDocument(obj, "UTF-8", null, new FileOutputStream("annuaire.xml"));

JiBX: problèmes Manque de documentation http://dev-technomind.blogspot.com/2008/10/jibx-step-by-step-tutorial.html Ne marche pas sous Eclipse  Tout en ligne de commande (lourd et long) Problèmes d’import, et de compréhension des liens entre les classes

Wicket et JiBX Compatibilité (ou incompatibilité) Incompatibilité entre Eclipse et ligne de commande:  .class générés différents  .class générés présents dans build/classes et WEB-INF/lib  System.out.println(System.getProperty("wtp.deploy"));  batch pour les .class  annuaire.xml présent dans le dossier d’installation de Eclipse  Filemon

Démonstration Tutorial Créer un nouveau « Web Dynamic Project » dans Eclipse - Créer un nouveau "Web Dynamic Project" - Saisissez wicket-jibx-annuaire en nom de projet - Importer le projet wicket-jibx-annuaire (wicket-jibx-annuaire.zip) en tant qu'archive (Fichier -> Importer -> General -> Archive file) (l'importer dans le nouveau projet existant "wicket-jibx-annuaire" - Le projet est maintenant importé avec la distribution wicket, slf4j et log4j - Exécuter le projet sur un serveur TomCat - Fermer le serveur - Importer les librairies jibx (présentes dans le dossier lib de jibx_1_2_1.zip) dans le dossier WEB-INF/lib et dans le répertoire jibx du projet - Copier le fichier annuaire.xml dans le dossier d'installation de Eclipse - Ouvrir l'explorateur de fichiers et aller dans le dossier jibx (a la racine du projet) et exécuter le fichier .bat - Lancer le serveur et exécuter le projet Et cela fonctionne!