IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

comment un serveur peut -il appeller un autre serveur?


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    159
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 159
    Par défaut comment un serveur peut -il appeller un autre serveur?
    Salut,

    Je fais des modifications dans le code d'un serveur S1 et je souhaite que ce dernier fasse appel à un service d'une serveur S2. Je ne sais pas comment je peux faire en terme de code (java bien sur). Je m'explique d'avantage:
    Supposons que le serveur S2 (le serveur que je souhaite appeler) dispose d'une service accessible par appel à la méthode methodeMonservice(). Comment dois je faire pour appeler methodeMonService() depuis le serveur S1?


    Merci pour vos explication.

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    352
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 352
    Par défaut
    Qu'entend-tu par serveur : hardware, software. Dans le second cas de quoi s'agit-il ? Est-ce un serveur d'application ? une application Java standalone (exécutée par une simple JVM) ?

    Il faudrait préciser un peu plus le contexte et l'environnement de ta question.

    En supposant qu'il s'agisse de faire communiquer 2 applications standalones, la réponse est RMI qui permet de faire de l'invocation de méthodes sur des objets distants. Dans le cas d'un serveur d'application, tu as l'embarras du choix, moyennant une encapsulation de ta classe se service (S2) : web service, EJB, servlet, ...

    Jacques Desmazières

  3. #3
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    159
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 159
    Par défaut
    Il s'agit d'un serveur d'application... Est-il possible d'utiliser RMI avec des tels serveurs?
    Sinon est ce que tu peux m'expliquer le principe de l'encapsulation, en ejb par exemple, et comment la communication se fait entre les deux serveurs?

    Merci beaucoup

  4. #4
    Membre Expert
    Avatar de gifffftane
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 354
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Février 2007
    Messages : 2 354
    Par défaut
    La réponse de Jacques - 06 reste bonne.

    Maintenant, pour aller plus loin, cela dépasse largement l'usage de ce forum. Il faut que tu voyes les tutoriaux sur le sujet.

    Les technos les plus simples - ce qualificatif est très relatif en ce domaine - sont RMI et HTTP, pour obtenir un résultat opérationnel correct. Si tu veux te former à la tuyauterie, sans forcément arriver à un résultat correct (ou en étant sûr d'arriver à un résultat incorrect, devrais-je dire), plonge toi dans les sockets.

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    352
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2006
    Messages : 352
    Par défaut
    Pour faire vite, tu exposes les méthodes de ta classe de service dans une interface (remote interface) d'un EJB Session stateless (c'est le mieux, sauf si tu dois avoir une notion de session) et tu utilises un EDI pour générer tout ce qui va avec (c'est le + simple). Les échanges se font via RMI/IIOP, en bénéficiant des services du conteneur d'EJB (timeout, transactions, ....). Pour invoquer la méthode, tu instancie l'EJB distant et tu appelles les méthodes à travers l'objet qui t'est retourné.

    Sinon tu as la possibilité d'utiliser des web services. L'avantage c'est qu'il existe des frameworks te permettant d'exposer un java bean sous forme de web services sans développement (Apache CXF, XFire, Apache Axis). Par contre il te faut générer les classes du client, mais cela est aussi réalisé par ces outils. L'avantage, c'est que c'est + simple, cela peut fonctionner avec des conteneurs de servlets (Tomcat), mais par contre c'est un peu moins performant (à vérifier).

    Jacques Desmazières

  6. #6
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    159
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 159
    Par défaut
    je me suis orienté vers les web services, je trouve que c'est plus facile surtout avec apache axis...

    Mais j'aimerais bien apprendre comment on peut faire la même chose avec les EJB... j'ai cherché de la doc mais je n'ai pas trouvé grande chose, si vous connaissez des liens intéressants merci de me les filer je suis preneur

    Merci

Discussions similaires

  1. [10g] Comment acceder à un serveur oracle à partir d'un autre serveur oracle
    Par bambi98 dans le forum Connexions aux bases de données
    Réponses: 5
    Dernier message: 05/08/2012, 00h58
  2. Réponses: 23
    Dernier message: 30/06/2007, 18h14
  3. Comment un client peut Passer son IOR au serveur ?
    Par ratapapa dans le forum CORBA
    Réponses: 2
    Dernier message: 14/12/2005, 00h19
  4. Réponses: 4
    Dernier message: 03/11/2005, 12h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo