begin process at 2010 03 21 14:16:20
  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é :4 204 / 466

Auteur : ghitaik

Ecrire un message privé
Commentaire sur cette source (4)
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

NOMBRE D'OCCURENCE D'UNE CHAINE DE CARACTÈRE DANS TOUS LES F... par deadhand
Source avec Zip IMPLEMENTATION DU PATTERN DÉCORATEUR EN TROIS TEMPS EN PARTA... par pouicky
Source avec Zip COMMENT COPIER TOUTE UNE ARBORESCENCE par larsson
Source avec Zip JIRC IRC ROBOT CLIENT EXEMPLE par Hassen Ben Tanfous
Source avec Zip Source avec une capture MODIFICATION DU VOLUME(GAIN) ET BALANCE(PAN) SUR UN FICHIER ... par Twinuts

 Sources en rapport avec celle ci

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 :)

 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 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 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 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 java/corba des deux cotés [ par DARCIA33 ] Salut Sous vista avec le dos , j ai maintes fois essayé de lancer le serveur ,en adoptant Corba comme architec. client/serveur, suite à la compilation application corba [ par naimalanda ] salut t le monde j'ai un probleme dans mon mini projet sur une application client/serveur en java j'ai compiler le fichier idl sous eclipse à l'aide d


Nos sponsors


Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
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,811 sec (3)

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