Génération de définitions d'objet métier

Cette section explique comment utiliser l'ODA EJB dans Business Object Designer pour créer des définitions d'objet métier. Pour plus d'informations sur le lancement et l'utilisation de Business Object Designer, voir IBM WebSphere Business Integration Adapters Business Object Development Guide.

Démarrage de l'ODA

Vous pouvez exécuter l'ODA sur n'importe quelle machine capable de monter le système de fichiers sur lequel réside le référentiel de métadonnées (fichiers JAR). Pour cela, utilisez le fichier de démarrage de l'ODA. Ce fichier contient les paramètres de démarrage, y compris les chemins vers certains fichier EJB requis et fichiers JAR du connecteur. Ces fichiers JAR doivent également être accessibles depuis la machine sur laquelle vous exécutez l'ODA.

Le nom par défaut de l'ODA pour EJB est EJBODA. Vous pouvez le modifier en changeant la valeur de la variable AGENTNAME dans le script de démarrage.

Pour démarrer l'ODA, exécutez la commande suivante :

La variable CLIENT JARPATH du fichier de démarrage ne dispose d'aucune valeur par défaut. Par conséquent, avant d'exécuter la commande start, définissez la valeur du répertoire et du nom de fichier du chemin du JAR client, afin que l'ODA puisse inclure le fichier dans son chemin de classe Java. Par exemple :

set CLIENTJARPATH=C:\BIA_MusicBeanSample.jar

Exécution de Business Object Designer

Business Object Designer dispose d'un assistant pour vous guider à travers les étapes nécessaires pour générer une définition d'objet métier en utilisant l'ODA. La procédure est la suivante :

Sélection de l'agent

Pour sélectionner l'agent, procédez comme suit :

  1. Démarrez Business Object Designer.
  2. Cliquez sur File > New Using ODA. L'écran Business Object Wizard - Step 1 of 6 - Select Agent s'affiche.
  3. Sélectionnez ODA/AGENTNAME dans la liste Located agents et cliquez sur Next. (Vous devrez peut-être cliquer sur Find Agents si l'agent souhaité n'est pas répertorié.)

    Figure 5. Ecran Select Agent

Configuration de l'agent

Une fois que vous avez cliqué sur Next dans l'écran Select Agent, l'écran Business Object Wizard - Step 2 of 6 - Configure Agent s'affiche. La figure 6 représente cet écran complété d'exemples de valeurs.

Figure 6. Ecran Configure Agent

Les propriétés définies dans cet écran sont décrites dans le tableau 9. Vous pouvez enregistrer dans un profil toutes les valeurs entrées dans cet écran. Au lieu de saisir de nouveau les données de la propriété la prochaine fois que vous exécuterez l'ODA, vous sélectionnerez un profil dans le menu déroulant Current profile et ré-utiliserez les valeurs enregistrées. Vous pouvez enregistrer plusieurs profils, chacun avec un ensemble de valeurs différent.

Tableau 9. Propriétés de configuration de l'agent
Nom de propriété Valeur par défaut Type Description
EJBJarFilePath Aucune String (obligatoire) Chemin complet du fichier JAR EJB. Il s'agit du fichier lu par l'ODA en tant qu'entrée pour générer des objets métier.
DefaultBOPrefix Aucune String Préfixe que l'ODA ajoutera aux noms des objets métier qu'il génère
TraceFileName <agentname>trace.txt String Nom du fichier de messages de trace, par exemple, BIA_EJBODAtrace.txt. Notez que le connecteur prend en charge des valeurs internationalisées pour cette propriété. Ainsi, le chemin de fichier et le nom peuvent être internationalisés, contrairement au contenu du fichier.
TraceLevel 0 Integer (obligatoire) Niveau de traçage (de 0 à 5) de l'Agent. Pour plus d'informations sur les niveaux de traçage, voir Traçage.
MessageFile <agentname>Agent.txt String Nom du fichier de messages contenant tous les messages affichés par l'ODA. Pour le connecteur pour EJB, le nom de ce fichier est BIA_EJBODAAgent.txt. Si vous n'indiquez pas correctement le nom du fichier de messages, l'ODA s'exécutera sans messages. Notez que le connecteur prend en charge des valeurs internationalisées pour cette propriété. Ainsi, le chemin de fichier et le nom peuvent être internationalisés, contrairement au contenu du fichier.

  1. Saisissez la valeur de la propriété dans la colonne Value de l'écran Configure Agent, représenté dans la figure 6.
  2. Pour créer un nouveau profil, utilisez les boutons New et Save dans la zone Profiles. Lorsque vous utiliserez de nouveau l'ODA, vous pouvez sélectionner un profil existant.
    Remarque :
    Si vous utilisez un profil existant, les valeurs de la propriété sont remplies automatiquement, mais vous pouvez les modifier si nécessaire.

Sélection d'un objet EJB

L'écran Business Object Wizard - Step 3 of 6 - Select Source s'affiche, tel qu'illustré dans la figure 7. L'écran dresse la liste des objets qui ont été définis dans le fichier JAR EJB. Utilisez cet écran pour sélectionner le nombre voulu d'objets EJB pour lesquels l'ODA générera des définitions d'objet métier.

Notez que la liste contient huit méthodes au total. Les deux premiers objets de la liste sont les méthodes creator de l'interface locale. Les six autres sont les méthodes de l'interface éloignée.

Figure 7. Ecran Select Source

  1. Si nécessaire, développez l'objet EJB pour afficher la liste de ses méthodes.
  2. Sélectionnez les objets EJB que vous souhaitez utiliser. Par exemple, vous pouvez faire les choix suivants :

    Dans la figure 7, les classes MusicCartHome et MusicCart sont sélectionnées. Bien que seuls les noms de classe soient sélectionnés, l'ODA crée également les objets des méthodes associées à chacune des classes sélectionnées.

  3. Cliquez sur Next.

Confirmation de la sélection d'objet

L'écran Business Object Wizard - Step 4 of 6 - Confirm source nodes for business object definitions s'ouvre. Il affiche les objets sélectionnés.

Figure 8. Ecran Confirm source node

Cliquez sur Back pour apporter des modifications ou sur Next pour confirmer que la liste est correcte.

L'écran Business Object Wizard - Step 5 of 6 - Generating business objects... s'ouvre et affiche un message indiquant que l'assistant est en train de générer les objets métier.

Sélection des instructions et affectation du nom JNDI

Une fois que vous avez cliqué sur Next, l'écran Enter JNDI name for this Enterprise Java Bean s'ouvre. Il s'affiche pour chaque objet source EJB sélectionné. Utilisez-le pour sélectionner les instructions prises en charge pour cet objet et pour affecter un nom JNDI.

Dans l'exemple présenté à la figure 9, le nom JNDI affecté est MusicCartJNDI.

Figure 9. Ecran JNDI Name for Enterprise Java Bean

Dans cet écran, précisez également les instructions prises en charge par l'objet métier. L'ODA permet de préciser les quatre instructions prises en charge (Create, Retrieve, Delete, and Update) et d'affecter n méthodes en tant qu'action de chaque instruction, n représentant le nombre de méthodes de l'objet EJB correspondant. Pour préciser plus de quatre instructions ou pour modifier les informations sur l'instruction une fois que vous avez créé un objet métier, utilisez Business Object Designer.

Pour plus d'informations sur les instructions d'objet métier pour le connecteur EJB, voir ASI de l'instruction.

  1. Dans la liste Value de la propriété Verbs, sélectionnez les instructions qui seront prises en charge par l'objet métier. Vous pouvez sélectionner une ou plusieurs instructions. Vous pouvez également désélectionner une instruction à tout moment.
  2. Dans la propriété JNDI name for <className>, entrez le nom JNDI du bean d'entreprise. Ce nom est défini lorsque le bean est déployé sur le serveur d'applications.
  3. Cliquez sur OK.

Spécifiez l'ASI de l'instruction

Pour chaque instruction sélectionnée, une fenêtre s'affiche et indique la séquence de méthodes qui doit être exécutée pour l'instruction.

La figure 10 représente cet écran pour l'instruction Create de l'objet métier MusicCart créé en figure 7 et figure 8.

Figure 10. Définition de la séquence de méthodes d'instruction

  1. Dans la liste Value de la propriété MethodSequence, cliquez sur la méthode que l'objet métier exécutera en premier pour l'instruction. Dans la figure 10, la séquence de méthodes est la suivante :

    En précisant une séquence de méthodes pour l'instruction, vous créez l'ASI d'instruction associée à cette instruction. Si nécessaire, vous pourrez modifier ultérieurement cet ASI d'instruction à l'aide de Business Object Designer.

  2. Cliquez sur OK.

Traitement de l'objet de collection

L'ODA générera des objets métier pour les objets de collection présents dans les listes de paramètres d'entrée et de sortie. Les classes de collection suivantes sont prises en charge :

Vérification de la classe et de la méthode

Pour chaque objet de collection transmis en tant que type d'argument/retour, l'ODA affichera un message similaire à celui de la figure 11. Il indiquera l'objet de collection en cours de traitement.

Figure 11. Vérification de la classe et de la méthode

Cliquez sur OK si les informations sur l'objet de collection sont correctes.

Sélection du nombre de types d'objets

Utilisez l'écran Parameter Object Type Info pour entrer le nombre de types d'objets différents que vous souhaitez conserver dans votre objet de collection.

Figure 12. Sélection du nombre de types d'objets

Appuyez sur OK quand vous avez terminé.

L'ODA affichera l'avertissement suivant :

Figure 13. Vérification des paramètres

Vérifiez que vous n'avez pas sélectionné de classes générées par AppServer lorsque vous avez sélectionné votre nom de classe avant de cliquer sur OK.

Création d'objets de mappe

Lorsque l'ODA reconnaît une Map Class, dans laquelle une mappe est un objet qui mappe des clés sur des valeurs, les utilisateurs sont invités à sélectionner un type d'objet pour la clé et un autre pour les valeurs indiquées dans la figure 14. Chaque paire nom/valeur de l'objet de mappe procède au mappage sur deux objets métier : un pour la clé et un pour l'objet de valeur.

Remarque :
Une mappe ne peut contenir de clés en double, et chaque clé ne peut se mapper que sur une valeur, au maximum.

Figure 14. Création d'objets de mappe

Création d'objets de liste

Lorsque l'ODA reconnaît un Vector ou un autre objet de liste, vous devez sélectionner le type des objets que vous voulez conserver dans l'objet de collection, à partir du menu déroulant.

Figure 15. Sélection des types d'objet

Mappage de plusieurs méthodes getter/setter sur un même objet java

Si un JavaBean d'entreprise prend un objet java en tant qu'argument ou type de retour, et si l'objet java a de nombreux types de méthodes getter/setter, l'écran de la figure 16 s'affiche. Utilisez-le pour sélectionner les méthodes getter/setter à mapper sur l'attribut de votre objet métier.

Si vous ne sélectionnez pas getter/setter dans cet écran, les méthodes getter/setter seront mappées sur des objets métier et non sur des attributs d'objet métier.

Figure 16. Mappage de plusieurs méthodes getter/setter sur l'attribut d'un objet métier

Ouverture ou enregistrement de l'objet métier

L'écran Business Object Wizard - Step 6 of 6 - Save business objects s'affiche.

Figure 17. Ecran Save business objects

Vous pouvez aussi ouvrir de nouveaux objets métier dans une fenêtre séparée, dans Business Object Designer. Vous pouvez aussi (après avoir précisé une clé pour un objet métier de niveau supérieur) enregistrer les définitions d'objet métier générées dans un fichier.

Pour ouvrir les objets métier dans une fenêtre séparée :

  1. Cochez Open the new BOs in separate windows.
  2. Cliquez sur Finish. Chaque objet métier apparaît dans une fenêtre séparée, dans laquelle vous pouvez afficher et définir les informations ASI pour les objets métier et instructions d'objet métier que vous venez de créer. Pour plus d'informations, voir Sélection des instructions et affectation du nom JNDI et Spécifiez l'ASI de l'instruction.

Pour enregistrer les objets métier dans un fichier (uniquement après avoir indiqué un clé pour l'objet métier parent) :

  1. Sélectionnez Save a copy of the business objects to a separate file. Une boîte de dialogue s'affiche.
  2. Indiquez l'emplacement dans lequel vous souhaitez enregistrer la copie des nouvelles définitions d'objet métier.

Business Object Designer enregistre les fichiers dans l'emplacement spécifié.

Si vous avez fini de travailler avec l'ODA, vous pouvez le fermer en cochant "Shutdown ODA EJBODA" avant de cliquer sur Finish.

Indication de l'ASI de l'attribut

Une fois que vous avez défini l'ASI de l'instruction (en modifiant une séquence de méthodes à exécuter pour chaque instruction), Business Object Designer affiche les attributs de l'objet métier. Pour plus d'informations sur l'ASI de l'attribut du connecteur EJB, voir ASI de l'attribut.

Les attributs sont indiqués dans l'onglet Attributes, dans l'ordre dans lequel ils apparaissent dans la structure d'objet EJB, tel que défini par la valeur numérique de la colonne Pos. Des attributs d'objet EJB simples sont représentés en tant qu'attributs simples et leur ASI contient le nom et le type de l'attribut EJB d'origine.

L'écran indique le nom, le type et les informations ASI de chaque attribut. La figure 18 présente les attributs (complexes) de la méthode. L'attribut getAllRecordsInfo de l'objet métier a un ASI qui mappe l'attribut sur la méthode d'objet EJB d'origine. Dans cet exemple, la méthode d'origine est indiquée dans la colonne App Spec Info par l'ASI method_name=getAllRecordInfo.

L'attribut getCustomer de l'objet métier a un ASI qui mappe l'attribut sur la méthode d'objet EJB d'origine. Dans cet exemple, la méthode d'origine est indiquée dans la colonne App Spec Info par l'ASI method_name=getCustomer.

De plus, getCustomer (objet métier enfant) a l'attribut d'objet métier enfant Return_Value, utilisé pour capturer la valeur en retour de la méthode getCustomer. Dans le fichier JAR EJB, la méthode est définie comme ayant une valeur en retour de type CustomerHelper, c'est-à-dire une méthode. L'ASI d'attribut de CustomerHelper est défini sur type=proxy, car le type d'objet est une valeur en retour. Notez que si une méthode du fichier JAR EJB ne retourne pas de valeur, l'attribut Return_Value n'est pas inclus dans la liste des attributs d'objet métier.

Notez également que l'attribut Return_Value de type CustomerHelper a trois attributs d'objet enfant non-méthode : name, password et email. Dans le fichier JAR EJB d'origine dans lequel est définie la classe MusicCartBean, ils sont tous définis en tant que paramètres de type String de la méthode CustomerHelper. Dans l'objet métier, l'ASI d'attribut de ces paramètres indique le nom et le type de la propriété Java (String) de chaque fichier JAR d'origine.

Figure 18. Définition de l'ASI d'attribut

Figure 19. Définition de l'ASI d'attribut

Dans cet écran, indiquez si un objet parent est une clé (exigée par l'ODA pour enregistrer les objets métier dans un fichier séparé). Vous pouvez également utiliser cet écran pour définir des clés d'objets enfants si nécessaire et préciser les informations suivantes :

Remarque :
Même si vous pouvez créer un objet métier dans l'ODA (exécuté dans Business Object Designer) et définir des clés parents, ne procédez pas de cette manière pour configurer des clés étrangères. Les clés étrangères sont des métadonnées non ASI et doivent par conséquent toujours être configurées sans l'ODA (dans Business Object Designer. Cliquez sur File > New pour créer un nouvel objet métier sans utiliser l'ODA).

Indication de l'ASI de l'objet métier

Vous pouvez afficher et modifier l'ASI de l'objet métier. Pour plus d'informations sur l'ASI de l'objet métier, voir ASI de l'objet métier.

L'ASI de l'objet métier est indiqué dans l'onglet General. La valeur ASI indiquée dans la zone Business Object Level Application-specific information contient le nom de l'interface éloignée correspondant à cet objet métier. Le connecteur utilise ces informations pour mapper un objet éloigné sur un objet métier.

L'onglet General répertorie également toutes les instructions prises en charge par l'objet métier en indiquant leur ASI telle que définie dans Spécifiez l'ASI de l'instruction. Si une instruction est vide, la séquence de méthodes associée ne sera pas exécutée.

Copyright IBM Corp. 2003, 2005