Programmation RMI

aymenboy Messages postés 8 Date d'inscription mardi 22 décembre 2009 Statut Membre Dernière intervention 30 mars 2010 - 3 janv. 2010 à 22:54
cs_rt15 Messages postés 3874 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 7 novembre 2014 - 6 janv. 2010 à 08:57
slt je besoin de m'aider à mon projet je veut que tu me corrige mes faute s'il te plait bon le projet est :
une compagnie aérienne offre un service de reservavtion accessible à distance chaque vol est défini par son numero (identifiant unique ),pays de départ ,pays destination ,heure , nombre de place non encore réservéés et prix du tiket
le service offre trois opérations
1_reserver : à paritr d'un nom de client , un numero de vol et d'une date . cette opération renvois un entier qui correspond au numero du ticket si réservation réussie ou -1 sinon
2_annuler à partir d'un numero de vol et un tiket cette opération annule la réseravation corespondante .elle retourne 1 si annulation réussie ,0 si paramétre d'entréé non valides
3_ lister à partir d'une date , de pays départ et destination ,cette opération rend les numéros et les horaires ainsi que le prix de ticket des vols corresondant à ces paramétres de recherche


question :
réaliset en java RMI une implémentation du systéme décrit ci-dessus



et voila le code que je l'écris pour le client dabor :

public interface AgenceInterface extends java.rmi.Remote {

public int[] reserver(String nomClient,int numVol,String dateV,String NomHotel,String dateH,int nbChambre) throws java.rmi.RemoteException;

public int annuler(int numVol,int numTicket,int numReservation) throws java.rmi.RemoteException;

public String[] listerV(String date ,String paysDepart,String paysDestination) throws java.rmi.RemoteException;

public String[] listerH(int numReservation) throws java.rmi.RemoteException;

}


pour le serveur :
public class AgenceServeur extends UnicastRemoteObject implements AgenceInterface {


Connection cn;
Statement st;


public AgenceServeur() throws java.rmi.RemoteException { }

public int[] reserver(String nomClient,int numVol,String dateV,String nomHotel,String dateH,int nbChambre) throws java.rmi.RemoteException {

int numTicket=-1;
int numReservation=-1;
int reservation[]={numTicket,numReservation};
try{
InterfaceVol obj = (InterfaceVol) Naming.lookup ("rmi://localhost:1099/volServeur");
numTicket = obj.reserverV(nomClient,numVol,dateV);
InterfaceHotel obj1 = (InterfaceHotel) Naming.lookup ("rmi://localhost:1099/hotelServeur");
numReservation = obj1.reserverH(nomClient,nomHotel,dateH,nbChambre);
reservation[0]=numTicket;
reservation[1]=numReservation;


}

catch (SQLException ex) {
System.out.println(ex.getMessage());

return reservation;
}

catch (ClassNotFoundException ex) {


return reservation;
}
catch (NotBoundException ex) {
System.out.println("Erreur NotBoundException");


return reservation;
}

catch (MalformedURLException ex) {
System.out.println("Erreur MalformedURLException");


return reservation;
}

catch (RemoteException ex) {
System.out.println("Erreur RemoteException");

return reservation;
}

}

public int annuler(int numVol,int numTicket,int numReservation) throws java.rmi.RemoteException {

int testVol;
int testHotel;
try{
InterfaceVol obj = (InterfaceVol) Naming.lookup ("rmi://localhost:1099/volServeur");
testVol = obj.annulerV(numVol,numTicket);
InterfaceHotel obj1 = (InterfaceHotel) Naming.lookup ("rmi://localhost:1099/hotelServeur");
testHotel = obj1.annulerH(numReservation);


return(1);
}

else
return(0);

}

catch (SQLException ex) {


return(0);
}

catch (ClassNotFoundException ex) {


return(0);
}
catch (NotBoundException ex) {


return(0);
}

catch (MalformedURLException ex) {


return(0);
}

catch (RemoteException ex) {


return(0);
}


}

public String[] listerV(String date ,String paysDepart,String paysDestination) throws java.rmi.RemoteException {

String[] rs={" "," "," "} ;

try{
InterfaceVol obj = (InterfaceVol) Naming.lookup ("rmi://localhost:1099/volServeur");
rs = obj.listerV(date,paysDepart,paysDestination);

}
/*
catch (SQLException ex) {
System.out.println("Erreur Sql");
rs = null;
}
*/

catch (NotBoundException ex) {
System.out.println("Erreur NotBoundException");
rs=null;
}

catch (RemoteException ex) {
System.out.println("Erreur RemoteException");
rs=null;
}
catch (MalformedURLException ex) {
System.out.println("Erreur MalformedURLException");
rs=null;;
}

return(rs);
}//fin listerV()

public String[] listerH(int numReservation) throws java.rmi.RemoteException {

String info="Reservation introuvable";
String s[];
try{
InterfaceHotel obj = (InterfaceHotel) Naming.lookup ("rmi://localhost:1099/hotelServeur");
s = obj.listerH(numReservation);
}

catch (NotBoundException ex) {

s=null;
}

catch (RemoteException ex) {

s= null ;
}
catch (MalformedURLException ex) {

s=null;
}

return(s) ;
}

public static void main(String args[]) throws IOException {


try{

AgenceServeur monServeur = new AgenceServeur();
stp je veu que tu m'aide pour sera exécutable

Naming.rebind("rmi://localhost:1099/AgenceServeur", monServeur);

}

catch (RemoteException e) {
System.out.println("AgenceServeur err: " + e.getMessage());
}
}

}

7 réponses

krimog Messages postés 1860 Date d'inscription lundi 28 novembre 2005 Statut Membre Dernière intervention 14 février 2015 49
4 janv. 2010 à 14:40
Bonjour.

Tout d'abord, utilises plutôt la deuxième personne du pluriel que du singulier. Tu es sur un forum. Ta question s'adresse à plusieurs personnes.

Ensuite, si c'est du Java, merci de poster sur le forum Java (www.javafr.com)

De plus, merci d'intégrer ton code dans les tags "code" prévus à cet effet dans la barre d'outil.

Tu demandes qu'on corrige tes fautes. De quoi parles-tu ? De tes fautes d'orthographe ? D'erreurs dans ton code ? D'erreurs de conception ?
S'il s'agit d'erreurs dans ton code, de quelles erreurs parles-tu ? A quelles conditions se déclenchent-elles ?

Krimog : while (!(succeed = try())) ;
- Nous ne sommes pas des décodeurs ambulants. Le style SMS est prohibé. -
0
cs_rt15 Messages postés 3874 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 7 novembre 2014 13
4 janv. 2010 à 15:58
[ Déplacé sur javafr ]
0
fares6 Messages postés 3 Date d'inscription lundi 27 avril 2009 Statut Membre Dernière intervention 5 janvier 2010
5 janv. 2010 à 01:53
Si vous avez quelques choses à dire pour aider sinon c'est pas la peine de se moquer des autres !!!!!
0
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
5 janv. 2010 à 07:29
De qui se moque-t-on au juste ?

... j'ai comme l'impression qu'on inverse un peu trop souvent les rôles.


Kohntark -
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
krimog Messages postés 1860 Date d'inscription lundi 28 novembre 2005 Statut Membre Dernière intervention 14 février 2015 49
5 janv. 2010 à 09:38
J'ai beau relire mon message, la seule "moquerie" que j'y trouve c'est quand je parle des fautes d'orthographe. Cependant, il faut avouer que ton message est loin d'être correctement rédigé.

Cependant, ma question est des plus sérieuses. Et si tu n'y réponds pas, je vois mal comment qui que ce soit pourrait t'aider.

Krimog : while (!(succeed = try())) ;
- Nous ne sommes pas des décodeurs ambulants. Le style SMS est prohibé. -
0
fares6 Messages postés 3 Date d'inscription lundi 27 avril 2009 Statut Membre Dernière intervention 5 janvier 2010
5 janv. 2010 à 21:37
Dans ce genre de Forums nous (moi et les autres) les trouvons comme sorte de refuge souvent pour y trouver de l'aide des experts comme vous après avoir essayer bien évidement et mais il parait que certains ne sont pas le bienvenu malgré leur efforts
0
cs_rt15 Messages postés 3874 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 7 novembre 2014 13
6 janv. 2010 à 08:57
Tu es le bienvenue. Cependant, pour avoir de l'aide, il faut se plier au règlement et poser une question claire expliquant le problème.
0
Rejoignez-nous