135 lines
5.4 KiB
HTML
135 lines
5.4 KiB
HTML
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
|||
|
<html>
|
|||
|
<head>
|
|||
|
<meta http-equiv="CONTENT-TYPE" content="text/html;
|
|||
|
charset=windows-1252">
|
|||
|
<title></title>
|
|||
|
<meta name="GENERATOR" content="OpenOffice.org 1.1.4 (Win32)">
|
|||
|
<meta name="CREATED" content="20051026;11210625">
|
|||
|
<meta name="CHANGEDBY" content="Daniel Hagimont">
|
|||
|
<meta name="CHANGED" content="20051112;3545775">
|
|||
|
<meta name="ProgId" content="Word.Document">
|
|||
|
<meta name="Originator" content="Microsoft Word 10">
|
|||
|
<meta name="Template" content="C:\PROGRAM FILES\MICROSOFT
|
|||
|
OFFICE\OFFICE\html.dot">
|
|||
|
<style>
|
|||
|
<!--
|
|||
|
P { color: #000000 }
|
|||
|
P.msonormal { margin-bottom: 0cm; font-family: "Times New Roman" }
|
|||
|
A:link { color: #0000ff }
|
|||
|
A:visited { color: #800080 }
|
|||
|
-->
|
|||
|
</style>
|
|||
|
</head>
|
|||
|
<body dir="ltr" vlink="#800080" text="#000000" link="#0000ff"
|
|||
|
lang="fr-FR">
|
|||
|
<p align="center"><br>
|
|||
|
<br>
|
|||
|
</p>
|
|||
|
<p style="margin-bottom: 0cm;" align="center"><font
|
|||
|
style="font-size: 20pt;" size="5"><b>Cours Syst<73>mes Communicants</b></font></p>
|
|||
|
<p align="center"><font style="font-size: 20pt;" size="5"><b>ENSEEIHT
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
<20> D<>partement Informatique <20> 2i<32>me ann<6E>e</b></font></p>
|
|||
|
<p align="center"><font style="font-size: 20pt;" size="5"><b>TP JMS</b></font></p>
|
|||
|
<p style="margin-bottom: 0cm;" align="center"><font size="3">Daniel
|
|||
|
Hagimont</font></p>
|
|||
|
<p style="margin-bottom: 0cm;" align="center"><font size="3">Daniel.Hagimont@enseeiht.fr</font></p>
|
|||
|
<p class="msonormal" style="margin-left: 5.08cm; margin-bottom:
|
|||
|
0.5cm;"><br>
|
|||
|
</p>
|
|||
|
<p class="msonormal" style="margin-left: 1.27cm; margin-bottom:
|
|||
|
0.5cm;"><a name="_Toc432321016"></a> <font face="Arial"><font
|
|||
|
style="font-size: 13pt;" size="3"><b>1.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Objectif</b></font></font></p>
|
|||
|
<p style="margin-left: 1.27cm;">L'objectif de ce TP est de
|
|||
|
programmer une application r<>partie en utilisant une implantation
|
|||
|
de l'interface JMS vue en cours.</p>
|
|||
|
<p class="msonormal" style="margin-left: 1.27cm; margin-bottom:
|
|||
|
0.5cm;"> <font face="Arial"><font style="font-size: 13pt;"
|
|||
|
size="3"><b>2. Sp<53>cification</b></font></font></p>
|
|||
|
<p style="margin-left: 1.27cm;">L'objectif est la gestion d'un <i>Forum</i>
|
|||
|
de discussion pouvant faire intervenir un nombre quelconque
|
|||
|
d'intervenants utilisant une application <i>Irc</i>. Chaque <i>Irc</i>
|
|||
|
peut <20>mettre des messages qui sont diffus<75>s <20> l'ensemble des <i>Irc</i>.
|
|||
|
Les messages ne sont pas m<>moris<69>s par le <i>Forum</i>. Seuls les
|
|||
|
<i>Irc</i> pr<70>sents sur le <i>Forum</i> re<72>oivent les messages
|
|||
|
<20>mis. Pour <20>mettre, un <i>Irc</i> doit <20>tre connect<63> au <i>Forum</i>.
|
|||
|
</p>
|
|||
|
<p style="margin-left: 1.27cm;">Nous consid<69>rons les op<6F>rations
|
|||
|
suivantes :</p>
|
|||
|
<ul>
|
|||
|
<ul>
|
|||
|
<li>
|
|||
|
<p>Connect : permet <20> un <i>Irc</i> de se connecter au <i>Forum</i>.</p>
|
|||
|
</li>
|
|||
|
<li>
|
|||
|
<p>Leave : permet <20> un <i>Irc</i> de se d<>connecter du <i>Forum</i>.</p>
|
|||
|
</li>
|
|||
|
<li>
|
|||
|
<p>Write : permet <20> un <i>Irc</i> d'<27>mettre un message.</p>
|
|||
|
</li>
|
|||
|
<li>
|
|||
|
<p>Who : permet <20> un <i>Irc</i> de conna<6E>tre l'ensemble des
|
|||
|
intervenants connect<63>s au <i>Forum</i>.</p>
|
|||
|
</li>
|
|||
|
</ul>
|
|||
|
</ul>
|
|||
|
<p style="margin-left: 1.27cm;">Nous utilisons JMS en mode
|
|||
|
Publish/Subscribe.</p>
|
|||
|
<p style="margin-left: 1.27cm;"><br>
|
|||
|
<img alt="archi" src="archi.jpg" width="576" height="231"><br>
|
|||
|
</p>
|
|||
|
<p class="msonormal" style="margin-left: 1.27cm; margin-bottom:
|
|||
|
0.5cm;"><br clear="left">
|
|||
|
<br>
|
|||
|
</p>
|
|||
|
<p style="margin-left: 1.27cm;">L<EFBFBD>application est compos<6F>e du
|
|||
|
fichier <a href="Irc.java">Irc.java</a> qui inclut l'interface
|
|||
|
graphique de l'application, que vous devez compl<70>ter pour faire
|
|||
|
marcher l'application avec JMS.</p>
|
|||
|
Un petit
|
|||
|
exemple (<a href="HelloTopic.java">HelloTopic.java</a>) vous est
|
|||
|
donn<6E> pour d<>marrer.
|
|||
|
<p style="margin-left: 1.27cm;">Pour utiliser activeMQ
|
|||
|
(l'implantation de JMS) :<br>
|
|||
|
</p>
|
|||
|
<ul style="margin-left: 40px;">
|
|||
|
<li>r<EFBFBD>cup<EFBFBD>rez apache-active-MQ</li>
|
|||
|
<ul>
|
|||
|
<li>wget
|
|||
|
http://sd-127206.dedibox.fr/hagimont/software/apache-activemq-5.14.0-bin.tar.gz<br>
|
|||
|
</li>
|
|||
|
</ul>
|
|||
|
<li>d<EFBFBD>compresser l'archive (apache-activemq-5.14.0-bin.tar.gz)
|
|||
|
dans un r<>pertoire <activemq_path></li>
|
|||
|
<li>pour lancer un daemon activeMQ :
|
|||
|
<activemq_path>/bin/activemq start (et stop pour
|
|||
|
l'arr<72>ter)<br>
|
|||
|
</li>
|
|||
|
<li>si vous utilisez eclipse, le jar <20> ajouter dans votre
|
|||
|
BuildPath est : <activemq_path>/activemq-all-5.14.0.jar</li>
|
|||
|
<li>si vous voulez compiler (ou ex<65>cuter) en dehors d'eclipse :
|
|||
|
javac -cp .:<activemq_path>/lib/* <fichier source
|
|||
|
java></li>
|
|||
|
</ul>
|
|||
|
<p style="margin-left: 1.27cm;">0) testez l'exemple HelloTopic
|
|||
|
ci-dessus<br>
|
|||
|
1) commencez par coder les op<6F>rations de connexion, emission et
|
|||
|
r<>ception de messages<br>
|
|||
|
2) implantez une solution g<>rant la liste des intervenants
|
|||
|
connect<63>s<br>
|
|||
|
3) rajouter des connexions "durables" : si vous quitter Irc et que
|
|||
|
vous vous reconnectez plus tard, vous recevez les messages <20>mis
|
|||
|
pendant votre absence.<br>
|
|||
|
</p>
|
|||
|
</body>
|
|||
|
</html>
|