begin process at 2012 02 10 19:16:51
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Tutoriaux

 > CLIENT / SERVER CORBA AVEC NAMESERVICE ET AVEC FICHIER

CLIENT / SERVER CORBA AVEC NAMESERVICE ET AVEC FICHIER


 Information sur la source

Note :
8 / 10 - par 2 personnes
8,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Tutoriaux Classé sous :corba, NameService, ORB, IDL, client serveur Niveau :Initié Date de création :27/06/2008 Date de mise à jour :27/06/2008 15:44:45 Vu / téléchargé :6 418 / 700

Auteur : ghitaik

Ecrire un message privé
Commentaire sur cette source (6)
Ajouter un commentaire et/ou une note

 Description

Pour créer un Client/Serveur Corba, on a deux façons:
-soit avec le NameService, la lecture de l'ORB se fait à partir de la mémoire, ça veut dire une réponse plus rapide, mais ça nécessite le lancement du NamingService.
-soit avec un fichier, dans ce cas la lecture de l'ORB se fait à partir du fichier, ça veut dire un temps de réponse moins rapide (ouverture fichier, lecture, fermeture).

Je vais vous présenter les deux manières de faire, et chacun jugera ce qui sera avantageux pour son cas.

A partir du jdk 1.4, Corba a connu quelques changements:
-Avec la jdk 1.3, Corba implémentait *Base.java, à partir de la version 1.4 elle implémente *POA.

C'est pour cela que je donne le premier exemple avec jdk 1.3 et fichier, et le deuxième exemple avec jdk 1.4 ou + et NameService.

J'espère que cela vous aidera dans vos projets.

**************************************** ****************************
Considérant que notre projet s'appelle exemple.


-La première donnée qu'on doit implémenter est l'interface idl (exemple.idl), c'est le contrat que doit respecter le client et le serveur.
-la syntaxe du idl est simple et proche du C++: (in pour paramètres en entrée, out pour paramètres en sortie, et inout pour paramètres en entrée et en sortie), java n'accepte pas le out tout court, ça renvoi des "null", pour cela je vous conseille d'utiliser inout à la place. module est l'équivalent du package, int=short, String=string, double=double, boolean=boolean......

Alors une fois on a préparé notre exemple.idl, on va se placer dans le répertoire où elle se trouve, par exemple:
fenêtre DOS:
> cd C:\
puis on va générer le serveur et le client avec:
>idlj -fserver *.idl
>idlj -fclient *.idl
ou bien pour générer les deux en même temps, on fait:
>idlj -fall *.idl

Vous allez chercher les classes générées dans le module que vous avez spécifié dans exemple.idl (com/corba/*.java).
Normalement on doit avoir 6 classes générées (Valable pour le client et le serveur):
- _exempleStub.java
- exemple.java
- exempleHelper.java
- exempleHolder.java
- exempleOperation.java
- (selon la version du jdk si c'est 1.3 exempleBase.java, si c'est 1.4 ou plus exemplePOA.java)
Après on doit ajouter 3 autres classes:
- Client.java
- Server.java
- exepmleImpl.java (c'est le servant qui fait la relation entre client et serveur, et il est du côté serveur).
En ce qui concerne ces 3 classes, elles sont dans le jar.

Il faut mettre les classes dans un projet java dans eclipse par exemple.

Finalement, après avoir adapter les 3 classes selon vos besoin, il suffit de démarrer le NamingService (si vous avez choisi l'exemple avec le NameService).
le NameService se démarre comme suit:
Fenêtre DOS:
> start tnameserv -ORBInitialPort 1050
- Le tnameserv est présent dans la JDK, alors pas la peine d'ajouter aucun jar.
Il faut prendre en considération le port (dans notre exemple 1050) sinon, si vous décidez de le changer, il faut penser à le changer dans la classe Server et la classe Client.

- Si vous avez décidé d'utiliser l'exemple avec le fichier, il suffit de faire attention au chemin du fichier pour que le client et le serveur pointe sur le même.

-démarrer Server.java
-démarrer le Client.java


 Conclusion

Pour l'exemple avec NamingService, il ne faut pas oublier de démarrer le Nameservice.

et bon courage :)

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
  •   exemple
    •   src
    • exemple.idlTélécharger ce fichier [Réservé aux membres club]234 octets

Télécharger le zip


 Historique

27 juin 2008 15:44:45 :
erreur de frappe

 Sources de la même categorie

Source avec Zip DÉCOMPILER UN .CLASS JAVA AVEC JAD par Julien39
REDIMENSIONNER UNE JTABLE par Julien39
Source avec Zip UTILISATION DE LA SÉRIALISATION par Julien39
Source avec Zip Source avec une capture ORGANISER UNE APPLICATION JAVA par Julien39
Source avec Zip [TUTORIEL] COMMENT RÉAGIR FACE À UNE EXCEPTION par Julien39

 Sources en rapport avec celle ci

Source avec Zip COMPTEUR DE TEMPS DE CONNEXION A L'INTERNET EN RESEAU. par Tiger076
Source avec Zip CONTENEUR DE COMPOSANT HETEROGENES par mad_charif
Source avec Zip Source avec une capture PROJET POUR L'IMPLÉMENTATION D'UN WORKFLOW DE GESTION DES CO... par mdrjeuxvideo
Source avec Zip EXEMPLE DE CORBA-JAVA DE CLIENT/SERVEUR SIMPLE BASÉ SUR LA R... par mdrjeuxvideo
Source avec Zip PROTOTYPE D'UNE APPLICATION CORBA POUR L'ÉQUILIBRAGE DE LA C... par nabilberrehouma

Commentaires et avis

Commentaire de hug0_76 le 27/06/2008 16:19:30 8/10

Bonjour,

Je n'ai pas regardé entièrement les sources, mais mon commentaire est plus une question ouverte qu'une critique objective de ta source.

Que penses tu de l'évolution de la spécification CORBA (qui n'est plus toute jeune) face aux actuels ESB et architecture orientée services?

Juste une petite remarque concernant le code, il manque de commentaires.

Commentaire de ghitaik le 30/06/2008 14:18:40

Bonjour,

Effectivement, Corba est une solution qui n'est pas jeune, mais des fois, on est contraint à l'utiliser selon le contexte sur lequel on est amené à travailler.

Personne ne peut contredire que les orientés services sont plus faciles à implémenter, mais malheureusement ils sont aussi plus lourds, par exemple la communication en WebService se fait en xml qui est lourd par rapport à la communication Corba qui s'effectue avec du binaire.

Autre désavantage de Corba, c'est les ports qu'on doit ouvrir, tant dit qu'avec les WebServices, ça suffit que le port 80 soit ouvert pour que ça marche.

Bref, chacune des deux solutions a ses avantages et ses inconvénients, reste à voir la solution la plus adaptée à notre situation.  

Commentaire de bro love le 11/05/2009 14:29:23 8/10

Félicitation pour ce petit tuto CORBA.
Bon courage à toi Guithek

Commentaire de ghitaik le 11/05/2009 15:55:40

Merci BRO LOVE pour tes encouragements :)

Commentaire de meriem2805 le 10/12/2011 20:42:41

i like it

Commentaire de james79 le 30/12/2011 12:27:48

tout d'abord...c un très bon travail...bravo.....
donc je me suis intéresser....j'ai suivie tout les étapes (installation de JaCorb 2.3.0, générer les classe, démarrer le NamingService) et lors de la dernière étape celle de lancer le serveur.java (a partir du Cmd) la compilation affiche 4 erreur de même type...même chose pour le client (2 erreur tjr même type)....
donc la fichage pour le serveur:

C:\Users\Home\Desktop\CORBA>start tnameserver -ORBInitialPort 1050
Le système ne peut trouver le fichier tnameserver.

C:\Users\Home\Desktop\CORBA>start tnameserv -ORBInitialPort 1050

C:\Users\Home\Desktop\CORBA>cd C:\Users\Home\Desktop\CORBA\Server_Nameservice_1.3\src\com\corba

C:\Users\Home\Desktop\CORBA\Server_Nameservice_1.3\src\com\corba>javac Server.java

Server.java:22: cannot find symbol
symbol  : class exemple_Impl
location: class com.corba.Server
                exemple_Impl exemple_impl = new exemple_Impl();
                ^
Server.java:22: cannot find symbol
symbol  : class exemple_Impl
location: class com.corba.Server
                exemple_Impl exemple_impl = new exemple_Impl();
                                                ^
Server.java:30: cannot find symbol
symbol  : class exemple
location: class com.corba.Server
                exemple href = exempleHelper.narrow(exemple_impl);
                ^
Server.java:30: cannot find symbol
symbol  : variable exempleHelper
location: class com.corba.Server
                exemple href = exempleHelper.narrow(exemple_impl);
                               ^
4 errors

j'aimerai bien que tu m'aide a trouvé la cause d'erreur....je te remercie d'avance

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

JNDI [ par acidburnjo ] Bonjour tous le monde j'ai un problème pour passer du server de noms CORBA de Java au serveur de nom JNDI de J2EE. J'ai pas mal chercher sur d'au CORBA idl par objet [ par Kirdream ] Bonjour,je voudrais savoir s'il est possible de créer plusieurs idl par objets ?Et si il y a plusieurs classes dans un fichier .jar, faut-il créer un application de corba en java [ par zkenpachi ] slt tout le monde pour commencer j une application client/server corba en java , mon premier probleme c ke je c pas encore comment executé des fichier Frame et CORBA [ par vinvay ] Est-il possible d'avoir une fenêtre frame ou jframe qui tournent en même temps que l'orb de corba ??Si oui comment ??J'avais pensais mettre l'orb dans Problème lors de la compilation du fichier IDL de Corba [ par vinvay ] cf : http://java.sun.com/developer/technicalArticles/RMI/rmi_corba/au 5) il est dit que lors de la compilation du fichier FileInterface.idl, le fichie s'il y a quelqu'un metrise l'architecture CORBA [ par riyadh25gl ] mon problemme c'est : est ce que le netBeans integre un ORB et comment fonctionner si oui ou se trouve cet ORB et comment s'appelle et comment l'integ Erreur client d'un EJB [ par did2604 ] Bonjour,- J'ai créé une "Enterprise Application" dans Netbeans comprenant le client et le EJB Module.- J'ai une connectivé à ma base de données dans N Corba: fichier répartis [ par amira21 ] Je doit réaliser une application de gestion de fichier répartis(écriture et lecture) avec Corba.Jé pa trouvé un site qui peut m'aider Veuillez me prop corba [ par kamel_521 ]      salut y t'il de cours CORBA bien detaille avec des notions POA, BOA ,ORBcomment installe le OpenORB sous WINDOWS XP corba [ par laura_larson2000 ] au secours j'ai pas pu realiser en java l' interface graphique  "service de nommage "  CORBA afin de voir tous les clients /serveu


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,265 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales