recupére variable in et inout coté serveur
je travail avec corba mon probléme comment je peut recupére mes variable coté serveur
fichie IDL
Code:
1 2 3 4 5
|
interface Data
{
void Etudiant(in string nom , inout long data);
}; |
fichier serveur
Code:
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); } }
} |
voila l’implémentation de classe servant
Code:
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");
}
}
} |
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 :zoubi: