> Tech > Quels sont les outils associés aux services Web?

Quels sont les outils associés aux services Web?

Tech - Par iTPro - Publié le 24 juin 2010
email

Maintenant que nous connaissons un peu la technologie, parlons des outils de WDSc permettant de créer des services Web. Le produit contient non seulement les outils hérités de WebSphere Studio pour les développeurs Java, mais aussi des extensions iSeries supplémentaires pour programmeurs RPG. Nous commençons par les premiers puis nous

Quels sont les outils associés aux services Web?

décrirons
les derniers.

Les outils de développement des services Web hérités incluent

  • un registre UDDI privé intégré, qui s’ajoute au WebSphere
    Test Environment intégré dont vous avez besoin pour tester
    vos services Web

  • le moyen de publier un service Web dans un registre UDDI
  • un Web Services Explorer pour explorer les services dans
    un registre UDDI ou un document WSIL

  • des fonctions d’importation, d’exportation et d’édition
    pour des fichiers WSDL et WSIL

  • un wizard pour générer du code client Java servant à  appeler
    un service Web existant, lorsqu’on connaît le fichier
    WSDL du service

  • des wizards pour générer un service Web, y compris son
    client WSDL et Java, à  partir de diverses sources comme un
    simple bean Java, un Enterprise JavaBean (advanced edition
    seulement), une URL, des appels ou des procédures
    stockées DB2 XML Extender et des requêtes SQL

  • un wizard pour générer une page Web « client test » à  partir
    d’un service Web, où vous pourrez entrer des données,
    soumettre l’appel au service Web, puis voir le résultat

  • un moniteur TCP/IP, particulièrement commode pour visualiser
    les messages SOAP

Cette liste n’est pas complète. WDsc épaule efficacement
les services Web et aussi XML, parce que de nombreux services
Web acceptent ou renvoient des documents XML, bien
que ce ne soit pas obligatoire. N’importe quelle procédure
ILE ou programme non interactif en Java, RPG ou Cobol peut
être transformé(e) en service Web.

Le wizard le plus intéressant est peut-être celui qui permet
de créer un service Web à  partir d’un Java bean. Le wizard
prend n’importe quelle classe Java (« programme » en
jargon ILE) qui a un constructeur par défaut (pas de sousroutine
INZSR pour vos programmeurs RPG) et des méthodes
(procédures), et génère le WSDL pour les méthodes
sélectionnées dans cette classe, ainsi que le code nécessaire
pour créer un service Web (principalement du code pour sérialiser
la classe et ses paramètres).

L’autre wizard intéressant est celui qui génère, à  partir de
WSDL, un proxy client classe Java pour invoquer à  distance le
service à  partir de Java. En fait, si vous regardez sous Help,
Cheat Sheets et Create a Web service from a Java bean, vous
trouverez une « cheat sheet » pour vous aider à  couvrir ces
étapes (figure 1).

Vous devez donc vous concentrer sur la création d’une
classe Java contenant les méthodes que vous voulez exposer
dans votre service Web. Où obtenez-vous ces classes ? Et bien
vous pourriez parfaitement les créer. Si vous avez une base
de données se prêtant à  l’extraction, vous pourriez écrire
une classe Java avec des méthodes permettant d’accéder aux
données, en utilisant JDBC ou les classes d’accès aux enregistrements
dans l’iSeries Toolbox for Java. Il se trouve que
l’outillage de données de WDSc donne les moyens de générer
une telle classe en utilisant JDBC. En réalité, plusieurs outils
sont capables de générer des classes Java pour accéder
aux ressources existantes et, dès lors que vous possédez une
classe quelconque avec une ou plusieurs méthodes intéressantes,
vous pouvez rapidement et facilement produire un
service Web à  partir de cela. Parmi ces outils, il en est un qui
sert à  créer une classe Java à  partir d’un programme RPG ou
Cobol.

Outre les outils de développement RPG et Cobol dans le
Remote System Explorer, WDSc fournit un wizard Program
Call qui génère un simple JavaBean (à  nouveau, une classe
avec un constructeur par défaut) à  partir d’un programme ou
d’une procédure ILE. Tout comme vous le faites dans le
wizard Web Interaction que nous avons décrit dans notre article précédent (voir l’article
« D’autres outils Web pour programmeurs
iSeries », décembre 2004),
dans ce wizard vous décrivez le nom
du programme ou de la procédure et
ses paramètres, ou vous importez un
fichier PCML (Program Call Markup
Language) généré par le compilateur.

Voyons donc comment créer un
service Web pour appeler le même
programme pour lequel nous avons
créé une interaction Web dans l’article
précédent. Nous supposons que
vous avez la bibliothèque WSSLABXX provenant de ce travail
précédent. Créez un projet Web dynamique – par exemple,
MyWebServices – en prenant toutes les valeurs par défaut.
Faites un clic droit sur le nom du projet dans la perspective
Web, sélectionnez iSeries et Java à  gauche et Program Call
Bean à  droite, et cliquez sur Next. Cliquez sur Add Program
et entrez Inquiry comme nom du bean, GETDATA comme
nom du programme et WSSLABXX comme nom de la bibliothèque
(figure 2). Cliquez sur OK.

Ce programme RPG accepte un paramètre d’entrée (ID
client) et met à  jour deux paramètres de sortie : une structure
de données décrite en externe et un champ de retour
contenant des informations d’erreurs. A présent, nous devons
spécifier ces paramètres.

  • Le premier paramètre est un ID client de sept caractères
    qui est entré dans le programme. Entrez CUSTNO comme
    nom de paramètre, laissez Character comme type de données,
    entrez 7 pour la longueur, et sélectionnez Input pour
    l’usage. Puis cliquez sur OK.

  • Le deuxième paramètre est une structure décrite en externe
    qui est une sortie fournie par le programme.
    Sélectionnez la racine (/) dans l’arbre à  gauche, cliquez
    dessus du bouton droit et sélectionnez Add Database
    Reference Structure. Etendez votre connexion iSeries
    créée précédemment ou, s’il n’en existe pas, créez-en une
    d’abord (étendez New Connection et fournissez l’information)
    puis étendez-la. Etendez Work with Libraries et entrez
    WSSLAB* comme nom de bibliothèque. Cliquez sur
    OK et, dans la liste résultante, étendez la bibliothèque
    WSSLABXX et le fichier logique CUSTOML3 et sélectionnez
    le format d’enregistrement CUSTOM01 dans la liste.
    Cliquez sur Add puis sur Close.

  • Après avoir ajouté la structure à  l’arbre, il faut définir le paramètre
    qui utilise la structure. Sélectionnez Inquiry dans
    l’arbre sur la gauche, faites un clic droit dessus et sélectionnez
    Add Parameter. Entrez CUSTDATA comme nom de
    paramètre et sélectionnez Structure comme type de données,
    CUSTOM01 comme nom de structure et Output
    pour l’usage. Puis cliquez sur OK.

  • Pour définir le paramètre final, entrez FEEDBACK comme
    nom de paramètre, laissez Character comme type de données,
    indiquez 20 comme longueur et Output pour
    l’usage, et cliquez sur OK.

A ce stade, vous avez défini le programme que vous voulez
appeler et chacun de ses paramètres, en indiquant si chacun
est lu par le programme (comme entrée) ou écrit par le
programme (en sortie) ou les deux (en entrée et sortie).
Vous pouvez cliquer sur Next.

Sur la page « Create iSeries Program Call Java bean and
PCML file », entrez my.pkg comme nom de package. Assurezvous
que la case Services est cochée parce qu’elle ordonne
au wizard de créer le JavaBean de telle sorte qu’il soit utilisable
dans un service Web. Cliquez sur Next.

Sur la page Configure Authentication, entrez votre nom
d’hôte iSeries, votre ID utilisateur et votre mot de passe. Si
vous utilisez l’Advanced Edition, vous observerez qu’il existe
une option pour utiliser un connecteur JCA (Java Connector
Architecture) et JAAS pour l’authentification. Au fil de votre
développement Web, vous estimerez peut-être que c’est là 
un meilleur moyen pour procéder à  l’authentification.
Cliquez sur l’onglet Library list et ajoutez WSSLABXX à  la liste
des bibliothèques initiale.

Téléchargez gratuitement cette ressource

Guide de facturation électronique, voie royale pour le DAF et la digitalisation de la fonction finance

Guide de facturation électronique, voie royale pour le DAF et la digitalisation de la fonction finance

Ce livre blanc expose les problématiques auxquelles sont confrontés les DAF modernes et souligne les bénéfices de la facturation électronique pour la trésorerie. Il dévoile également le processus de déploiement de ce projet de transformation digitale que la réglementation rendra bientôt obligatoire.

Tech - Par iTPro - Publié le 24 juin 2010