index.html

Business Process Execution Language (BPEL)

Ecriture d'un premier fichier bpel avec netbeans;
BPEL permet de manipuler des web-services et génère lui-même un web service, défini par un wsdl , qui lui même s'appuie sur des schema.

Cela passe par les étapes suivantes:
  1. Créer un schema xsd
  2. Créer un wsdl
  3. Créer un bpel
  4. Déployer et tester
Il est impossible d'écrire des fichiers aussi complexes que ce type de fichier à la main. Il faut se laisser guider par netbeans.

Ecrire un xsd

  1. Créer un nouveau projet : new Project>SOA>BPEL Module
  2. Créer un nouveau schema: ProcessFils>New>XML schema donner un nom au fichier
  3. Rajouter un type complexe (ie : contactDetails)
  4. Dans la sequence de "contact", rajouter des champs comme firstName, lastName, address, email ... de type (existing type) String
  5. Rajouter une deuxiemme type complexe (ie : contactTitre), de type String celui ci (pour changer!)
  6. Rajouter 2 "elements", des types cmplexe que nous avans définis precedemment
    Remarque: Vous pouvez définir des éléments de type "simple" (String par exemple) . Mais cela semble créer des problèmes ...

Rajouter des élements de type String à des éléments complexes:

Voilà le xsd sous sa forme xml:

Ecrire un wsdl

  1. ProcessFiles>new>wsdl document
  2. Premier écran: Importer le schema que nous venons de définir
  3. next
  4. définir les entrées et les sorties
Voila le wsdl sous sa forme xml:

Créer un bpel

  1. ProcessFiles>new>bpel
  2. Dans la vue design, "Drag and drop" le fichier wsdl. Les positions où il peut se positionner sont sur les côtés
  3. "Drag And Drop" l'élément "receive" de la palette vers le centre design . Parfois la palette est invisible! click droit au centre du design Add From Pallette> Web Service > Receive
  4. Editer l'élément receive, lui donner un nom (myReceive), L'associer à un "Partner link",à une opération, créer une variable "input"
  5. Mettre en place de la même manière l'élément "reply" sous l'élément "receive". Définir une variable "output"
  6. Mettre en place un élément assign. (entre les éléments receive et reply)
  7. Sélectionner l'élément "assign" Choisir la vue "mapper"
  8. Sélectionner la variable output (celle dans laquelle on veut assigner une valeur)

voilà le xml correpondant:

Déployer et tester le projet sur le serveur

Remarquez qu'un projet BPEL n'est pas directement déployable.
Il doit être rajouter en tant que module JBI dans un projet "Application Composite" qui sera ensuite déployée.

Créer le projet "Application Composite" et rajouter les modules JBI:

  1. Depuis le menu principal : File > New Project
  2. Sémectionner le mode "Composite Application"
  3. Next
  4. Rajouter un nom, "finish"
  5. Ouvrir ce nouveau projet "Composite Application". "Click Droit". choisir "Add JBI Module" Sélectionner le jar du projet BPEL que vous voulez rajouter
  6. Remarquez qu'un jar a été rajouté dans le module JBI
  7. Sur le projet "Application Composite", click droit, choisir "Deploy Project"
  8. Dans le projet "Composite Application"/Test, click droit et choisir "new test"
  9. Sur le test créé, click droit "run"

ressources

the other netbeans bpel tutorial
netbeans helloword application