470 likes | 573 Views
Architectures Orientées Services Composants de Service. Exemple pratique de développement d'application avec une architecture de composants de services SCA. Plan du module.
E N D
Architectures Orientées Services Composants de Service Exemple pratique de développement d'application avec une architecture de composants de services SCA Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod Plan du module • L'objet de ce module est de montrer un interface de développement « convivial » d'application à base de d'architecure de composants de services SCA. • Il est la suite logique du cours sur le standard et les technologies SCA • Il montre pas à pas les étapes de développement d'un exemple d'application pour un restaurant : • Il commence par des étapes de configuration de l'environnement
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod Eclipse • Depuis février 2010 L'environnement de développement Eclipse comporte des « plug-ins » pour le développement d'applications orientées services (SOA) et de composants d'architectures de services (SCA). • Ces plug-ins sont accessibles sur le site : Helios - http://download.eclipse.org/releases/helios
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod Ajout de « Plug-In » Help Welcome install new software
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod Téléchargement sur un/des site(s) choisi(s)
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod Configuration d'un moteur : ici Tuscany (télechargé d'ailleurs) Preferences
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod Windows > Préférences >Java ou SCA Tools ?
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod Cas d'une librairie utilisateur Java Taper « TUSCANY »
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod Déclaration de la librairie Tuscany
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod Librairie Tuscany ; classe de lancement
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod Librairie Tuscany ; Chemin d'accès des classes (Classpath)
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod Liste des mâles d'oies domestiques (jars)
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod L'exemple de Projet • Il s'agit d'une composition de services pour calculer la note due dans un restaurant • Description des plats • Calcul des prix en fonction des taxes • Calcul de la TVA • Calcul de pourboires
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod Création d'un projet New shift+alt+n other
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod Projet Java (pour la circonstance)
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod « MonRestaurant » Séparer les répertoires
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod Création d'un diagramme pour une application composite > SCA > Initialize OSOA/SCA Composite Diagram Files
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod Création d'un diagramme pour une application composite New > other
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod OSOA SCA Composite Diagram
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod Identification Nommer le diagramme
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod Voir les propriétés du Composite Clic droit Show property view
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod Edition des propriétés
Insertion d'un composant Clic Clic nommer Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
Propriétés du composant Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
Autre composant, pour un autre service attendu Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
Les composants placés, définition des références Clic Clic nommer Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
Clic Clic Correspondances des noms des références et des services Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
Association entre référence et service (Wire) Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
Autre solution : association graphique Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
Le code du composite correspondant au diagramme Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
Présentation en arbre de la structure du composite Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
Création des « packages » de code à associer aux composants Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
Organisation des « package » api et lib Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
Création du code du 1er interface Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
Classe de type interface Restaurant Service Component Code destiné au « service » « RestaurantService » d'appel au composant « Restaurant Service Component » Code destiné au « service » « RestaurantService » d'appel au composant « Restaurant Service Component » Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
Autre code d'interface Voir le lien de Téléchargement du code Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
Création d'une Classe pour le code d'un composant Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
Création d'une Classe (suite) Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
Exemple de code spécifique d'un des composant Restaurant Service Component Annotation SCA Annotation SCA Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
Affectation par drag&drop Annotation SCA Drag & Drop Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
Affectation par édition d'interface Propriété D'interface Propriété D'interface Propriété D'interface Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
Du composite achevé, le SCDL résultant Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
Test package test; import org.apache.tuscany.sca.host.embedded.SCADomain; import restaurant.api.Menu; import restaurant.api.RestaurantService; public class Client { public static void main(String[] args) throws Exception { SCADomain scaDomain = SCADomain.newInstance("Restaurant.composite"); RestaurantService restaurantService = scaDomain.getService( RestaurantService.class, "RestaurantServiceComponent"); Menu[] menus = restaurantService.getMenus(); System.out.println("--- Menu ---"); for (Menu m : menus) { System.out.println("- " + m.printMenu()); } System.out.println(); Menu menu = menus[3]; System.out.println("My choice: " + menu.printMenu()); System.out.println(); double price = restaurantService.getBill(menu); System.out.println("Price (" + menu.printMenu() + "): " + price); scaDomain.close(); } } Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
Lancement du client: -click droit sur la classe Client. Selectionner : Run as > Java Application. Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
A suivre Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod
Fin du module Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod