je travail avec corba mon probléme comment je peut recupére mes variable coté serveur
fichie IDL
fichier serveur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 interface Data { void Etudiant(in string nom , inout long data); };
voila l’implémentation de classe servant
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 import org.omg.PortableServer.*; import org.omg.PortableServer.POA; public class serveur { public static void main(String args[]) { try{ org.omg.CORBA.ORB orb = org.omg.CORBA.ORB.init(args, null); servant dataRef = new servant(orb); POA rootpoa = POAHelper.narrow(orb.resolve_initial_references("RootPOA")); rootpoa.the_POAManager().activate(); org.omg.CORBA.Object ref = rootpoa.servant_to_reference(dataRef); Data href = DataHelper.narrow(ref); String oir = orb.object_to_string(href); java.io.PrintWriter out = new java.io.PrintWriter(new java.io.FileOutputStream("c:/dev/Data.ref")); out.println(oir); out.close(); System.out.println("server ready ...."); orb.run(); } } catch (Exception e) { System.err.println("ERROR: " + e); e.printStackTrace(System.out); } } }
Comment je peut recupére les 2 variables data et nom dans la classe serveur j'ai aucun problème coté client et merci d'avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 import org.omg.CORBA.*; // All CORBA applications need these classes. import org.omg.PortableServer.*; import org.omg.PortableServer.POA; class servant extends DataPOA { private ORB orb; public servant(ORB orb) { this.orb = orb; } public void Etudiant(String nom, IntHolder data) { if(data.value==0){ System.out.println("L'etudiant :"+nom+" vient de se connecter ."); } else { System.out.println("L'etudiant : "+nom+" a participé : "+data.value+" fois"); } } }
Partager