GICOM
Application de commerce électronique
Etape 6a: Sous-système Fournisseur
Asynchrone
Projet de M2GI option SRR et RICM3 option SR
Année Universitaire 2005-2006
Université Joseph
Fourier
Contributeur(s)
étape : Didier Donsez
Encadrement M2GI/SRR : Didier Donsez, Sara Bouchenak
Encadrement
RICM3/SR : Pierre-Yves Gibello, Maxime Martinasso
PLAN
L'étape 6a consiste à réaliser les serveurs des fournisseurs pour la prise des ordres de commandes en mode asynchrone. Le serveur GICOM envoie des messages contenant les ordres de commandes aux serveurs des fournisseurs via une messagerie inter-applicative (MOM : Message Oriented Middleware). Cette messagerie sera JORAM qui utilise l'API JMS.
Le serveur GICOM est producteur de messages et les serveurs des fournisseurs sont des consommateurs de messages. Vous choisirez de créer une file de message (MessageQueue) par fournisseur.
Chaque serveur du fournisseur enregistre les commandes dans une base propre qui comporte au minimun les table Order et OrderItem.
Les messages peuvent être structurés au moyen du grammaire XML (qui pourrait être SOAP et XML Schema)
Testez et comprenez les exemples %JONAS_ROOT%\examples\src\jms et %JONAS_ROOT %\examples\src\mdb de la distribution JOnAS.
Le serveur du fournisseur est implanté au moyen d’un serveur J2EE JONAS sur lequel est déployé un Message Driven Bean qui consomme les messages qui lui sont adressés dans une file qui lui est affecté. Ce Message Driven Bean affiche seulement le contenu des commandes à la console du serveur du fournisseur.
Les messages sont envoyés par un session bean (stateful) du serveur J2EE eCOM.
Les opérations sur les files de message se font dans des contextes transactionnels.
La réalisation élaborée étend la réalisation simple en rendant persistantes les commandes à livrer au moyen d’un (ou plusieurs) Entity Bean sur une base McKoi.
Proposez une solution pour sécuriser l’échange des messages.
URL des services utilisés
JORAM
: http://www.objectweb.org/joram
JONAS : http://www.objectweb.org/jonas
Pour comprendre les MOM et JMS, vous pouvez vous reporter aux transparents du cours sur JDBC (http://www-adele.imag.fr/~donsez/cours/momjms.pdf)