NB : cet article fait partie d’une série de présentation et de tutoriaux pour démystifier Mule ESB : http://net-progress.blogspot.com/)
Créer un projet Mule
Une fois installé, le plugin de Mule ajoute un nouveau type de projet dans Eclipse : le projet de type Mule
Dans Eclipse : ajouter un projet Mule est simple
Choisir
File à New à other
Choisir Mule : Mule Project
Cliquer Next >
Donner un nom au projet
Cliquer Next >
Ajouter des répertoires sources, des librairies nécessaires (comme pour un projet java Eclipse classique)
Cliquer Finish
Le projet est ainsi crée
Nous remarquons l’existence de
Répertoire | description |
src | Mettre les codes sources |
Conf | Mettre les fichiers de configuration de Mule |
Bin | Contient les .class |
Créer une configuration Mule
Sélectionner le projet Mule
Cliquer sur : File à New à other
Choisir Mule configuration
A ce stage, un assistance de création d’entête de Namespaces est disponible, selon les besoins en protocole de transport, en routeurs …
Le résultat est un fichier de configuration Mule (vide) prêt à l’emploi
Le fichier est le suivant :
1: <?xml version="1.0" encoding="UTF-8"?>
2: <mule xmlns="http://www.mulesource.org/schema/mule/core/2.2"
3: xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4: xmlns:ftp="http://www.mulesource.org/schema/mule/ftp/2.2"
5: xmlns:file="http://www.mulesource.org/schema/mule/file/2.2"
6: xmlns:http="http://www.mulesource.org/schema/mule/http/2.2"
7: xmlns:https="http://www.mulesource.org/schema/mule/https/2.2"
8: xmlns:vm="http://www.mulesource.org/schema/mule/vm/2.2"
9: xsi:schemaLocation="
10: http://www.mulesource.org/schema/mule/ftp/2.2 http://www.mulesource.org/schema/mule/ftp/2.2/mule-ftp.xsd
11: http://www.mulesource.org/schema/mule/file/2.2 http://www.mulesource.org/schema/mule/file/2.2/mule-file.xsd
12: http://www.mulesource.org/schema/mule/http/2.2 http://www.mulesource.org/schema/mule/http/2.2/mule-http.xsd
13: http://www.mulesource.org/schema/mule/https/2.2 http://www.mulesource.org/schema/mule/https/2.2/mule-https.xsd
14: http://www.mulesource.org/schema/mule/core/2.2 http://www.mulesource.org/schema/mule/core/2.2/mule.xsd
15: http://www.mulesource.org/schema/mule/vm/2.2 http://www.mulesource.org/schema/mule/vm/2.2/mule-vm.xsd">
16: </mule>
Lancer l’exécution du projet à partir d’Eclipse
Cette version de l’IDE est limité, en terme d’assistant graphique, mais présente l’avantage de permettre de lancer l’exécution du projet à partir de Eclipse et de présenter la capacité de débogage nécessaire à la mise en ouvre de tout projet Java.
Préparer une configuration Mule valide : l’exemple suivant permet de montrer les capacités de Mule qui intègre par exemple le support du Schedular Quartz.
1: <?xml version="1.0" encoding="UTF-8"?>
2: <mule xmlns="http://www.mulesource.org/schema/mule/core/2.2"
3: xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4: xmlns:stdio="http://www.mulesource.org/schema/mule/stdio/2.2"
5: xmlns:quartz="http://www.mulesource.org/schema/mule/quartz/2.2"
6: xmlns:spring="http://www.springframework.org/schema/beans"
7: xsi:schemaLocation="
8: http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
9: http://www.mulesource.org/schema/mule/core/2.2 http://www.mulesource.org/schema/mule/core/2.2/mule.xsd
10: http://www.mulesource.org/schema/mule/stdio/2.2 http://www.mulesource.org/schema/mule/stdio/2.2/mule-stdio.xsd
11: http://www.mulesource.org/schema/mule/quartz/2.2 http://www.mulesource.org/schema/mule/quartz/2.2/mule-quartz.xsd">
12: <spring:bean id="bonjourOXIA" class="java.lang.String">
13: <spring:constructor-arg>
14: <spring:value><![CDATA[
15: BONJOUR OXIA
16: BONJOUR OXIA
17: BONJOUR OXIA
18: ]]>
19: </spring:value>
20: </spring:constructor-arg>
21: </spring:bean>
22: <model name="bonjouroxiaModel">
23: <service name="bonjourService">
24: <inbound>
25: <quartz:inbound-endpoint jobName="welcome" repeatInterval="3000" repeatCount="1">
26: <property key="payload" value-ref="bonjourOXIA" />
27: <quartz:event-generator-job />
28: </quartz:inbound-endpoint>
29: </inbound>
30: <outbound>
31: <pass-through-router>
32: <stdio:outbound-endpoint system="OUT"/>
33: </pass-through-router>
34: </outbound>
35: </service>
36: </model>
37: </mule>
Sélectionner la configuration Mule
Le serveur est ainsi lancé, sous le contrôle d’Eclispe avec la configuration souhaité
6 commentaires :
bonjour;
pouvez-vous m'expliquer un autre exemple de utilisation Mule: un client communique avec un service web à travers mule (mule présente comme un médiateur.
merci
l'exemple existe dans la documentation officiel de Mule sur le site
il suffit d'utiliser la balise cxf ...
bonsoir,
j'aimerai bien savoir si vous avais une idée sur ce projet: "Intégration jBPM 3 avec Mule"?? j'attend votre réponse. merci
pour JBPM et Mule
http://www.indoqa.com/people/markus-demolsky/weblog/2008/jBoss-jBPM-meets-ESB.html
et
Why use jBPM with Mule? http://blogs.mulesoft.org/why-use-jbpm-with-mule/
s'il existe un tutorial comme ca avec netbeans ?? merci
bonsoir,
voila tout d'abord bravo pour ce blog,
je doit réaliser l'Implémentation de BPEL sur les plate-forme Mule ESB.
cependant je voulais essayer l'exemple de hello World (dans examples), j'ais ajouté le fichier de conf mais lorsque j'exécute un message d'erreur s'affiche : could not find the main class
java.lang.NoClassDefFoundError: and
Caused by: java.lang.ClassNotFoundException: and
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
voila est ce que vous avez une idée d'où vient le problème?
merci,
Enregistrer un commentaire