Installer l’application

Présentation

 

Le livre Java EE 5 vous permet de développer une application de commerce électronique en utilisant de multiples spécifications Java EE 5. Tout au long des chapitres vous devez développer couche après couche (persistance, session façade, interface web, gestion du panier électronique, services web et traitements asynchrones) pour obtenir le site de vente d’animaux domestiques.

 

Téléchargez le code

 

Avant toute chose, il vous faut télécharger le code de l’application pour l’exécuter.

 

Structure des répertoires

 

Décompressez le fichier que vous venez de télécharger et vous obtiendrez trois sous-répertoires principaux. Ceux-ci correspondent aux différentes applications :

 

  • le site de commerce électronique à proprement dit (Yaps Pet Store) se trouve dans le répertoire yaps
  • le service web de validation de carte bancaire de la société BarkBank dans le répertoire barkbank
  • le service web du transporteur PetEx dans le répertoire petex

Comme vous pouvez le voir dans les images ci-dessous, chacune de ces applications est composée de sous-répertoires.

 

Chaque sous répertoire contient des fichiers spécifiques :

 

  • build : contient les fichiers à déployer dans GlassFish (war et ear)
  • classes : répertoire contenant le bytecode des classes de l’application
  • config : contient les fichiers de paramétrage de l’application
  • generated : classes Java générées pour les services web
  • resources : pages web et images du site Yaps PetStore
  • src : ce répertoire contient les fichiers sources Java des applications
  • WEB-INF : contient les fichiers de configuration de l’application web

Installez les outils

 

Avant de d’exécuter l’application, assurez vous que vous avez les outils nécessaire installés:

 

  • JDK
    • Installez une version du JDK égale ou supérieure à 1.5_11
    • Positionnez la variable JAVA_HOME
  • Ant
    • Installez une version de Ant égale ou supérieure à 1.7
    • Positionnez la variable ANT_HOME
    • Rajoutez le répertoire %ANT_HOME%/bin dans votre PATH
  • GlassFish
    • Installez une version du serveur Glassfish égale ou supérieure à V2b41
    • Téléchargez le fichier jar puis exécutez la commande java -Xmx256m -jar nomDuFichier.jar
    • Positionnez la variable GLASSFISH_HOME
    • Ensuite tapez la commande %GLASSFISH_HOME%/ant -f setup.xml pour terminer l’installation de GlassFish
    • Rajoutez le répertoire %GLASSFISH_HOME%/bin dans votre PATH

Configurez les serveurs

 

Pour utiliser la base de données MySQL plutôt que Derby, suivez ce lien

 

 

Il faut maintenant configurer GlassFish et la base de données. Les taches d’administrations se trouvent dans le fichier %PETSTORE_HOME%/admin.xml

 

  • Créez le domaine petstore dans GlassFish en tenant compte des mots de passe ci-dessous (le port d’admin est 8282)
%GLASSFISH_HOME%/\bin/\asadmin create-domain --adminport 8282 --user admin --savemasterpassword=true --instanceport 8080 petstore

        Please enter the admin password>adminpwd
        Please enter the admin password again>adminpwd
        Please enter the master password>masterpwd
        Please enter the master password again>masterpwd
	Using port 8282 for Admin.
	Using port 8080 for HTTP Instance.
	Using default port 7676 for JMS.
	Using default port 3700 for IIOP.
	Using default port 8181 for HTTP_SSL.
	Using default port 3820 for IIOP_SSL.
	Using default port 3920 for IIOP_MUTUALAUTH.
	Using default port 8686 for JMX_ADMIN.        
	Domain petstore created.

 

Vous devez alors voir apparaitre le répertoire %GLASSFISH_HOME%/domains/petstore

 

  • (Si par la suite vous voulez supprimer ce domaine, tapez la commande ant -f admin.xml delete-domain ou asadmin delete-domain petstore)
  • Démarrez le serveur Glassfish en tapant %PETSTORE_HOME%/ant -f admin.xml start-domain
  • Vérifier que le serveur fonctionne en allant sur http://localhost:8080/

Si votre serveur de démarre pas, consulter le fichier %GLASSFISH_HOME%/domains/petstore/logs/server.log

 

  • Démarrez la base de données en tapant %PETSTORE_HOME%/ant -f admin.xml start-db
[exec] Database started in Network Server mode on host localhost and port 1527.
     ...
     [exec] Command start-database executed successfully.

 

 

  • Configurez le serveur GlassFish en tapant %PETSTORE_HOME%/ant -f admin.xmlsetup. Ceci a pour effet d’effectuer les taches suivantes :
    • Créer un pool de connection à la base de données (%PETSTORE_HOME%/ant -f admin.xml create-connection-pool)
    • Créer la base de données (%PETSTORE_HOME%/ant -f admin.xml ping-connection-pool). Vous devez voir alors apparaître le répertoire %GLASSFISH_HOME%/javadb/petstoreDB
    • Créer une source de données (%PETSTORE_HOME%/ant -f admin.xml create-datasource)
    • Créez les ressources JMS nécessaires:
      • une ConnectionFactory (%PETSTORE_HOME%/ant -f admin.xml create-jms-connection-factory)
      • un Topic JMS nécessaires (%PETSTORE_HOME%/ant -f admin.xml create-jms-topic)
    • Créer le logger de l’application Petstore qui utilise java.util.logging (%PETSTORE_HOME%/ant -f admin.xml set-loggers)

Vérifiez la configuration

 

Vérifiez que le paramètrage à bien fonctionné en tapant %PETSTORE_HOME%/ant -f admin.xml list. Ceci a pour effet d’effectuer les taches suivantes :

 

  • Vérifier que le pool de connection petstorePool a été créé soit (commande ant -f admin.xml list-connection-pool)
[exec] CallFlowPool
         [exec] TimerPool
         [exec] DerbyPool
         [exec] petstorePool

 

    • ou bien par la console d’admin http://localhost:8282/ (dans l’arbre, déployez le noeud Resources>JDBC>Connection Pools)
  • Vérifier que la source de données petstoreDS a été créé (%PETSTORE_HOME%ant -f admin.xml list-datasource)
[exec] jdbc/TimerPool
         [exec] jdbc/CallFlowPool
         [exec] jdbc/default
         [exec] jdbc/petstoreDS

 

    • ou par la console d’admin (dans l’arbre, déployez le noeud Resources>JDBC>JDNC Resources)
  • Vérifier que les ressources JMS ont été créés (%PETSTORE_HOME%ant -f admin.xml list-jms-resources)
[exec] jms/queue/client
         [exec] jms/topic/order
         [exec] jms/petstoreConnectionFactory

 

    • ou par la console d’admin (dans l’arbre, déployez les noeuds Resources>JMS Resources>Connection Factories et Destination Resources)
  • Pour vérifier que le logger a bien été configuré
    • Connectez-vous à la console http://localhost:8282 (admin/adminpwd)
    • Selectionnez “Application Server”
    • Cliquez sur l’onglet “Logging”
    • Sur la page de logging, cliquez sur l’onglet “Log Levels”
    • En bas de la page vous trouverez la section “Additional Module Log Level Properties”
    • Vous devez voir aparaitre le logger com.yaps.petstore, com.barkbank et com.petex

Deployez l’application

 

Maintenant que tout est configuré, il faut déployer les applications sur le serveur.

 

Déployez l’application BarkBank

 

  • Construisez l’application en tapant %PETSTORE_HOME%/ant barkbank-build. Ceci a pour effet de compiler l’application, de générer les artefacts pour les services web et de la packager dans le fichier %PETSTORE_HOME%/BarkBank/build/barkbank.war
  • Déployez l’application sur le serveur en tapant %PETSTORE_HOME%/ant barkbank-deploy. Pour vérifier que le déploiement a bien été effectué, rendez-vous à l’adresse http://localhost:8080/barkbank/

Déployez l’application PetEx

 

  • Construisez l’application en tapant %PETSTORE_HOME%/ant petex-build. Ceci a pour effet de compiler l’application, de générer les artefacts pour les services web et de la packager dans le fichier %PETSTORE_HOME%/PexEx/build/petex.war
  • Déployez l’application sur le serveur en tapant %PETSTORE_HOME%/ant petex-deploy. Pour vérifier que le déploiement a bien été effectué, rendez-vous à l’adresse http://localhost:8080/petex/

Déployez l’application Yaps

 

  • Construisez l’application en tapant %PETSTORE_HOME%/ant yaps-build. Ceci a pour effet de compiler l’application, de générer les artefacts pour les services web et de la packager dans les fichiers %PETSTORE_HOME%/Yaps/build
  • Déployez l’application sur le serveur en tapant %PETSTORE_HOME%/ant yaps-deploy. Cette tache déploie l’application et insère des données en base. Pour vérifier que le déploiement a bien été effectué, rendez-vous à l’adresse http://localhost:8080/petstore/

Utilisez l’application

 

Une fois les trois applications déployées, vous pouvez les utiliser à l’adresse http://localhost:8080/petstore/.Consulter le catalogue, créez vous un compte ou logger vous job/job. Achetez des animaux domestiques, passez commande et vous utiliserez alors les services web des application BarkBank (pour la vérification des cartes bancaires) et PetEx (avertit le transporteur).

 

Pour executer l’application client tapez %PETSTORE_HOME%/ant run-client

 

Demarrer/Arreter les serveurs

 

  • Derby
    • ant -f admin.xml start-db
    • ant -f admin.xml stop-db
  • GlassFish
    • ant -f admin.xml start-domain
    • ant -f admin.xml stop-domain

Leave a Reply