La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

„La plate-forme EAI “ Initiation à WBI

Présentations similaires


Présentation au sujet: "„La plate-forme EAI “ Initiation à WBI"— Transcription de la présentation:

1 „La plate-forme EAI “ Initiation à WBI
09/11/2018 „La plate-forme EAI “ Initiation à WBI « Développer avec WBI » 7

2 Sommaire Objectif Vue générale d ’un flux Concevoir
09/11/2018 Sommaire Objectif Vue générale d ’un flux Concevoir Conception d ’un connecteur, … Enregistrer, les domaines Les configurateurs Développer un connecteur, ... Ce document est un support de cours; il n ’est donc pas utilisable seul 09/11/2018

3 L ’objectif Conduire la conception et le développement de composants Crosswolds en suivant une démarche cohérente 09/11/2018

4 Vue générale d ’un flux Les composants Des objets Des fonctions
09/11/2018

5 Des exercices Comme thème des exercices, ce flux: 09/11/2018

6 Concevoir avec WBI La conception avec WBI consiste à définir:
la manière de correspondre avec les applications des objets métier des traitements sur ces objets 09/11/2018

7 Concevoir, séquence de conception des composants
La séquence recommandée consiste à développer dans l'ordre: Connecteurs et Data Handlers ASBO GBO Maps/Relationships Collaboration templates Collaboration Objects Cette séquence tient compte des dépendances entre types de composants (p.83 du document IBM Implementation guide for WebSphere Interchange server) 09/11/2018

8 Conception d ’un connecteur
Distinguer Type de connecteur et Instance de connecteur Identifier le type de connecteur qui convient aux échanges avec l'application correspondante: Connecteur MQ Connecteur Jtext Connecteur Jdbc 09/11/2018

9 Conception d ’un ASBO Commencer avec une structure très simple, tester avec le connecteur, ajouter un niveau de complexité, tester de nouveau, … Chercher dans la documentation pour ce type de connecteur s'il existe un Object Discovery Agent (ODA) pour ce type de données, ce qui permettrait un gain de temps appréciable Simultanément, développer les déclencheurs nécessaires à la création des événements 09/11/2018

10 Conception d ’un GBO Après avoir développé tous les ASBO, créer un GBO comme sur-ensemble des ASBO 09/11/2018

11 Conception d ’une Map S'appliquer à transcrire précisément les transformations nécessaires 09/11/2018

12 Conception d ’une Collaboration template
Chercher dans le stock existant avant de partir dans un développement nouveau 09/11/2018

13 Enregistrer, les Domaines
Projets utilisateur ou Bibliothèques des composants d'intégration: Sont enregistrés dans le répertoire WebSphereICS du poste de travail de l'utilisateur L'ICS n'a pas besoin d'être lancé Instances InterChange server: Sont enregistrés dans le Référentiel L'ICS doit être lancé 09/11/2018

14 Les configurateurs Il existe un configurateur pour: Un connecteur
Un BO Une Map Une Relationship Une Collaboration template 09/11/2018

15 Développer un connecteur
Distinguer Type de connecteur et Instance de connecteur Le configurateur = plusieurs onglets chaque champ = 255 car. Référencé par la Collaboration Des champs blancs, des champs grisés 09/11/2018

16 Connecteur, les onglets
Propriétés standard: s'appliquant à tous les types de connecteurs Propriétés spécifiques à chaque type de connecteur Objets métier supportés Mappes associées Ressources Fichiers trace/journal Messagerie Gestionnaire de données 09/11/2018

17 Connecteur, les champs Les champs apparaissent avec des couleurs de fond spécifiques: Blanc: le contenu du champ peut être modifié Gris: le contenu ne peut pas être modifié La colonne Méthode de mise à jour est informationnelle; elle indique l'action éventuelle à prendre au cas où la valeur de l ’attribut aurait été mise à jour 09/11/2018

18 Connecteur, propriétés standards
Les attributs ont tous des valeurs par défaut Les valeurs de plusieurs attributs sont susceptibles d'être modifiées: AgentTraceLevel: mis à 5 pour assister au debugging, ramené à 0 ensuite DeliveryTransport: IDL en test unitaires, MQ (ou JMS) ensuite PollFrequency: en 1/1000e de seconde pour Poller, No en veille La liste des attributs varie suivant le mode de communication choisi 09/11/2018

19 Connecteur, propriétés spécifiques
La liste des attributs varie d'un type de connecteur à un autre, leurs valeurs également Chaque type de connecteur est présenté par un document IBM WBI spécifique Il faut se référer au document correspondant au type de connecteur pour une bonne compréhension des attributs et des valeurs à leur attacher Les informations détaillées sont disponibles dans la documentation usuelle 09/11/2018

20 Connecteur, objets métier
Le connecteur prend en charge: Un ASBO Un GBO au minimum Pour ajouter un BO: placer le curseur dans le premier champ Nom de l'objet métier vide sélectionner le BO dans la liste présentée Préciser Support d'agent pour tous les ASBO 09/11/2018

21 Connecteur, Map Une Map doit être associée à chaque ASBO pour transformer son contenu dans le GBO, et réciproquement Pour ajouter une Map: Clic sur Liaison explicite Placer le curseur dans le champ Mappe associée vide Sélectionner la Map dans la liste présentée 09/11/2018

22 Connecteur, fichiers trace/journal
Cet onglet permet de spécifier l'écriture des informations Log et Trace dans des fichiers spécifiques Pour ça: Clic sur Au fichier Rechercher/créer le fichier nécessaire Spécifier la dimension du fichier et le nombre des archives éventuelles 09/11/2018

23 Connecteur, sauvegarder
Fichier/Sauvegarder sous/Vers le projet Sélectionner le Projet Saisir le nom du connecteur obligatoirement de la forme: nom_du_connecteurconnector Bouton Sauvegarder 09/11/2018

24 Connecteur, l ’Agent Pour chaque instance de connecteur:
un Agent au moins une Queue MQ (JMS, +) doivent être créés en Windows/Unix 09/11/2018

25 Des exercices Créer un connecteur JDBC nommé MVJtextConnector
Créer un connecteur JDBC nommé BAJdbcConnector 09/11/2018

26 Le Data Handler Le Data handler: une fonction générique
est nécessaire pour "traduire" les données applicatives (des données « plates ») en objets métier n'est pas nécessaire / pas utilisé par certains types de connecteur (JDBC) permet d ’être « non intrusif » vis à vis des applications concernées est décrit dans Data handler guide 09/11/2018

27 Data Handler, le besoin Pour plusieurs types de connecteurs, il est nécessaire de fournir ces informations: Le type de format des données qui détermine le type de Data handler à utiliser Les références des emplacements où aller chercher / déposer les données Dans les données figurent principalement: Le nom du BO concerné Le Verbe à exécuter: Create, Retrieve, Update, Delete Les attributs 09/11/2018

28 Data handler, pour 5 types de données
XML Data handler: données au format XML EDI Data handler: données au format EDI FixedWidth Data handler: données dans des champs de longueur fixée Delimited Data handler: données dans des champs identifiés par des séparateurs NameValue Data handler: données dans des champs identifiés par des noms 09/11/2018

29 Data handler, le Meta object
La mise en œuvre d ’un DH nécessite la création d'un Business object qui, lui, est spécifique: un Meta Object Le Meta Object contient des informations de configuration (format de données, répertoires, queues, …) Le Meta Object « reste » dans le Connecteur (= pas transmis) Certains types de connecteurs n ’ont pas besoin de Meta object 09/11/2018

30 Data Handler, un BO Comme un Meta object est un Business object, sa configuration est réalisée exactement comme décrit par ailleurs pour un ASBO ou un GBO Simplement, les attributs à spécifier sont imposés par les besoins du Data handler utilisé Les informations détaillées sont disponibles dans la documentation usuelle 09/11/2018

31 Connecteur et Data Handler, la dynamique
Le Connector Agent détecte un événement, instancie le Data handler correspondant, lui envoie les données applicatives (suivant le sens) En retour, le DH envoie le BO au Connector controler et aussi dans l ’autre sens 09/11/2018

32 Connecteur Jtext et Data Handler, « et Si ?»
Par exemple, avec le connecteur Jtext: Si OK: le DH écrit le fichier traité avec l ’extension .SUCCESS Si erreur: le DH écrit le fichier traité avec l ’extension .FAIL Si Pas de souscription: le DH écrit le fichier traité avec l ’extension .UNSUB 09/11/2018

33 Un ASBO WBI travaille exclusivement sur des Objets métier
un ASBO est un Objet métier spécifique d'une application Un ASBO interagit avec un connecteur Rien ne distingue un ASBO d'un GBO sinon l'utilisation qui en est faite 09/11/2018

34 ASBO, description La description d'un Business object peut être:
Manuelle: Soit par recopie d'un BO existant + modifications Soit par saisie complète Automatique, en utilisant un Object Discovery Agent (ODA) quand il en existe: JDBC, XML 09/11/2018

35 ASBO, organisation UN BO peut être:
"plat" hiérarchique, avec des "enfants" Dans un objet hiérarchique, la relation avec un "enfant" peut être: de cardinalité simple: un attribut correspond à un enfant de cardinalité multiple: un attribut correspond à plusieurs enfants 09/11/2018

36 ASBO, organisation Un enfant est un BO indépendant (pour créer un objet hiérarchique, l ’enfant doit exister au préalable) Décrire un enfant est intéressant pour isoler un ensemble cohérent et autonome de descriptions qui peut ensuite être réutilisé dans d'autres BO La cardinalité multiple permet de répondre aux besoins d'une relation 1 à N 09/11/2018

37 ASBO, attributs Décrire dans l'ASBO tous les attributs correspondant aux colonnes de la table, aux champs de l'enregistrement, … concerné Bénéfices: l'objet ressemble trait pour trait à la donnée, ce qui en facilite la lecture et la compréhension les évolutions ultérieures seront facilitées puisque l'ASBO n'aura pas à être modifié si un besoin supplémentaire se faisait sentir 09/11/2018

38 ASBO, les attributs Le nom Le type: Boolean, Integer, … La cardinalité
La clé La Foreign key La propriété Required La propriété AppSpecInfo La longueur maximum La valeur par défaut Des commentaires 09/11/2018

39 ASBO, des attributs L'attribut ObjectEventId est indispensable puisque WBI l'utilise pour identifier chaque échange Le configurateur le génère automatiquement et le positionne en dernière ligne; il en interdit la suppression Cet attribut ne doit pas être décrit dans une Map ou utilisé par un Data handler 09/11/2018

40 ASBO, AppSpecInfo Un ASBO peut porter des informations de type AppSpecInfo Au niveau du BO, d ’un Verbe, d ’un attribut Dans un échange JDBC: TN=TableName, argument de Retrieve, CN= ColumnName Dans un échange XML: elem_name= nom_de_ l ’element AppSpecInfo n'est pas accessible au mapping 09/11/2018

41 ASBO, le configurateur Deux onglets: le verbe + AppSpecInfo
les attributs Les quatre verbes apparaissent par défaut dans le configurateur; conserver celui/ceux qui s'appliquent au BO concerné Les informations détaillées sont disponibles dans la documentation usuelle 09/11/2018

42 ASBO, ODA Les bénéfices de l'utilisation d'un ODA:
Bonne efficacité: saisie en une seule fois Fiabilité: pas d'erreur de saisie Facilité de mise à jour en cas de modification de l'objet Dans le configurateur: Faire /Fichier/Nouveau avec ODA Sélectionner l'ODA choisi 09/11/2018

43 ASBO, ODA L ’ODA JDBC, après configuration, se connecte à la base de données et affiche l'arborescence des schémas L ’ODA XML « lit » le fichier XML et produit l ’ASBO correspondant avec sa hiérarchie et ses paramètres 09/11/2018

44 Des exercices En partant de deux applications: TS (tests) et SL (solution) Créer un ASBO nommé MVMouvementStock , avec 3 attributs Créer un ASBO nommé BAMouvementStock , avec 3 attributs 09/11/2018

45 GBO Le GBO est un Objet métier générique propre à l'entreprise
Il interagit avec la Collaboration Décrire dans le GBO tous les attributs correspondant aux attributs de tous les ASBO concernés Les informations détaillées sont disponibles dans la documentation usuelle 09/11/2018

46 Des exercices Créer un GBO nommé MouvementStock , avec 3 attributs
09/11/2018

47 Map Une Map fait correspondre les attributs d'un ASBO avec ceux d'un GBO, et réciproquement Les spécifications d'une Map décrivent les règles de transformation à appliquer aux valeurs des attributs Source pour les transformer en valeurs des attributs Cible 09/11/2018

48 Map Il faut décrire au minimum:
Une Map d'entrée Une Map de sortie Les actions prises par une Map peuvent être de: Réunir plusieurs attributs en un seul Eclater un attribut en plusieurs Ignorer un attribut Gérer les différences des relations structurelles ou sémantiques Prendre en charge les Foreign keys ... 09/11/2018

49 Map Une Map est décrite par:
Son nom Les noms des BO Source et Cible Les règles de transformations Une Map est développée en utilisant le Map designer 09/11/2018

50 Map 2 objets: un ASBO et un GBO et des correspondances/transformations d ’attributs 09/11/2018

51 Map Une Map doit être compilée pour être exécutable
Pour que la compilation puisse s'exécuter: l'ICS doit être actif le CSM doit être connecté à l'ICS le Map designer doit avoir été démarré dans le CSM La compilation a pour effet de produire un fichier .class à partir du fichier .java contenant les spécifications saisies 09/11/2018

52 Map Une Map doit être « startée » pour être exécutée (comme un Connecteur, une Collaboration) Les informations détaillées sont disponibles dans la documentation usuelle 09/11/2018

53 Des exercices Créer une Map IN nommée MVMouvementStock_to_MouvementStock pour transformer l ’ASBO nommé MVMouvementStock en GBO nommé MouvementStock Créer une Map OUT nommée MouvementStock_to_BAMouvementStock pour transformer le GBO nommé MouvementStock en ASBO nommé BAMouvementStock 09/11/2018

54 Collaboration template
Une Collaboration template décrit les traitements à exécuter sur des BO (GBO) Une Collaboration est constituée de scénarios; chaque scénario correspond à un type d'événement déclencheur, l'association d'un BO et d'un Verbe 09/11/2018

55 Collaboration template
Un scénario est: constitué d'activités, de liaison entre les activités, d'appels externes, l'unité de base, représentée par une boite carrée représenté au moins par un diagramme, souvent accompagné de sous-diagrammes, dans un format UML 09/11/2018

56 Collaboration template
Un scénario 09/11/2018

57 Collaboration template
Pour mettre en œuvre une Collaboration: Rechercher une Collaboration existante qui soit proche/identique Mettre au point les scénarios et les diagrammes d'activité au moyen du Process designer Compléter en Java pour les éléments spécifiques Compiler le Template 09/11/2018

58 Collaboration template
Il faut décrire au minimum: Une entrée: triggering event Une sortie: sending event par où les BO "entreront" et "sortiront" de la Collaboration, avec leurs verbes 09/11/2018

59 Collaboration template
Au moins 2 ports 09/11/2018

60 Collaboration template
Le début d'un Template: le symbole Début du scénario principal qui reçoit le Triggering event La fin d'un Template: émission d'un Service call Les informations détaillées sont disponibles dans la documentation usuelle 09/11/2018

61 Des exercices Créer une Template nommée Transferer pour traiter le GBO nommé MouvementStock 09/11/2018

62 Collaboration object La Collaboration est le composant fédérateur de tous les autres composants nécessaires au traitement d'un flux Une Collaboration communique avec les composants avec lesquels un Bind a été fait, chacun sur un Port Les informations détaillées sont disponibles dans la documentation usuelle 09/11/2018

63 La Collab, les Objets, les Connecteurs, même les Maps
Collaboration object La Collab, les Objets, les Connecteurs, même les Maps 09/11/2018

64 Des exercices Créer une Collab Object pour assembler les composants créés 09/11/2018

65 Application des changements
L’application des changements sur les composants WBI, une livraison par exemple, ne peut pas être réalisée de manière dynamique dans de nombreux cas, ce qui nécessite alors des arrêt/relance de l’ICS ou de certains composants comme les Connecteurs 09/11/2018

66 Application des changements, dans le CSM
Les composants gérés dans le CSM peuvent être “ rafraichis ” par la fonction Refresh Ceci en permet l'utilisation par d'autres composants Par exemple, un Business Object nouvellement créé apparaîtrait, après Refresh, dans les panneaux de description d'un connecteur et pourrait être utilisé. 09/11/2018

67 Application des changements, dans l ’ICS
Le déploiement de composants dans l'ICS n'en provoque pas automatiquement la prise en compte Il faut faire un Refresh pour que les composants déployés soient pris en compte par l'ICS Pour certains types de composants, une action supplémentaire peut être nécessaire; par exemple: Un Business Object: arrêt/démarrage de l'ICS Une Collaboration Object Des changements de Propriétés: mise à jour dynamique Des changements de code Java: mise à jour dynamique Une Map: mise à jour dynamique 09/11/2018

68 Mises en œuvre complémentaires
Il faut créer: un Agent pour chaque instance de connecteur une(minimum)/des queues MQSeries des répertoires pour des échanges Jtext des tables d ’événement pour des échanges JDBC 09/11/2018

69 Créer un Agent Un Connecteur = Controler + Agent
Controler: installé avec l ’ICS Agent: installé (souvent) avec l ’application concernée Start: sur le Controler le Controler contrôle son Agent 09/11/2018

70 Créer un Agent Des pre-requisites :
l’installation du Connector Framework sur chaque système recevant un/des Agents un MQSeries Server pour assurer les échanges entre les Controlers et les Agents l'installation d'un fichier de configuration local, nécessaire en cas d'utilisation de JMS 09/11/2018

71 Créer un Agent, en Windows
Créer le répertoire au nom du connecteur Recopier le contenu du répertoire type Renommer les 3 fichiers Créer le Script de lancement/arrêt + modifier le raccourci Créer les Queues techniques 09/11/2018

72 Des exercices Créer un Agent pour le connecteur JDBC nommé BAJdbcConnector 09/11/2018

73 Autres créations Voir le module Normes 09/11/2018

74 Des exercices Des questions? 09/11/2018

75 Fin du module Vos remarques et commentaires peuvent être notés sur la page concernée ou sur cette page avant de les transmettre à votre interlocuteur Ils aideront à améliorer cette initiation 09/11/2018


Télécharger ppt "„La plate-forme EAI “ Initiation à WBI"

Présentations similaires


Annonces Google