COURS
Enoncés
Question 3 : Donner un synonyme
Question 4 : X p = null; String s = args[0]; Object o = orb.string_to_object(s); p.hello();
Question 6 : compléter en utilisant : "serveur" , "client", "IOR", "servant"
Question 7 : donner les déclarations java associées
Question 8 : Pour toute interface X déclarée en IDL, sont associés deux types : "X" et "X_impl". Compléter les phrase en choisissant "X" ou "X_impl"
MIDDLEWARE ET COMPOSANTS
EJB
Liens utiles (CORBA, J2EE, EJB)
Interoperabilite EJB /CORBA
Manips seances 1, 2 et 3 (RT et GI)
Manips séances 4 et 5 (GI)
Parcours Pédagogique de CORBA
Connaissance Basiques (au choix sous ORBACUS ou JACORB):
B : Applications basiques (sans factory)
- (Niveau B0) Savoir utiliser une application : configuration des scripts (*.bat) pour compiler et exécuter
- (Niveau B1) Etant donnée une interface IDL, Savoir écrire le client qui utilise un objet CORBA dont l'IOR est stockée dans un fichier, par exemple "Hello.ior"
- (Niveau B2) Etant donnée une interface IDL, Savoir écrire les classes java qui l'implantent (et le serveur qui les créent)
F: Applications avec Factory
- (Niveau F1) Etant donnée une interface IDL, Savoir écrire le client qui utilise un objet Factory CORBA dont l'IOR est stockée dans un fichier, par exemple "Factory.ior", pour créer un objet CORBA et l'utiliser comme dans B1
- (Niveau F2) Etant donnée une intreface IDL, Savoir écrire les classes java qui l'implantent (et le serveur qui les créent)
Connaissances Evoluées (au choix sous ORBACUS ou JACORB):
N : Utilisation d'un serveur de noms dont l'IOR est stockée dans un fichier, par exemple "NS.ior"
- (Niveau N1) Etant donnée une interface IDL, Savoir écrire le client qui utilise un objet CORBA enregistré sous le contexte racine du "Serveur de Noms" sous un nom connu
- (Niveau N2) savoir enregistrer un objet CORBA sous le contexte racine du "Serveur de Noms"
- (Niveau N3) : idem que Niveau N1, mais dans un sous contexte
- (Niveau N4) : idem que Niveau N2, mais dans un sous contexte
Evaluation sur machine Dernière séance
Développer un Client CORBA (en Jacorb de préférence, mais en ORBAUCS c'est possible) dont l'IDL et l'IOR vous seront fournis.
Si vous testez plusieurs fois vous aurez toujours de nouvelles valeurs pour i
- Invoquer :
int i = goodDay.getLoginId();
int b = goodDay.calcul(i);
//....faite la declaration de c
goodDay.calcul2(b,c);
- Me fournir les infos suivantes :
NOM, Prénom
valeur de i =
valeur de b =
valeur de c =
Techniques de Description Formelle (TDF)
Sujets TP
Aide syntaxe LOTOS
(* attendre un message x de type donne sur la porte x *)(* puis emmettre le x sur la porte s *)(* puis appeler récursivement entite *)
insup ? x: donne ; s ! x; entite[insup,outsup,e,s]
(*attendre un ack sur e *) (*puis appeler entite*)
e?y:controle ; ([y eq ack ] -> entite[insup,outsup,e,s])
(*emettre un ack sur s *) (* puis appeler entite*)
s ! ack; entite[insup,outsup,e,s]
=================================== Paramètres de processus
entite[....] (p:Bool) : noexit :=
(* if (p) then comportement1 else process2*)
[p] -> (...process1... )
[]
[not(p)] -> (..process2..)