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

1      Objectif 1

2      Architecture. 1

3      Réalisation. 2

3.1       Préliminaires. 2

3.2       Réalisation simple. 2

3.3       Réalisation élaborée. 2

3.4       Réalisation sécurisée. 2

4      Documentation. 2

 

1      Objectif

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.

2      Architecture

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)

3      Réalisation

3.1    Préliminaires

Testez et comprenez les exemples %JONAS_ROOT%\examples\src\jms et %JONAS_ROOT %\examples\src\mdb de la distribution JOnAS.

3.2    Réalisation simple

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.

3.3    Réalisation élaborée

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.

3.4    Réalisation sécurisée

Proposez une solution pour sécuriser l’échange des messages.

4      Documentation

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)