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

Services Web Java Discussion :

Quelle est la différence entre SOAP et REST ?


Sujet :

Services Web Java

  1. #1
    Membre confirmé
    Avatar de geforce
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    1 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 055
    Points : 559
    Points
    559
    Par défaut Quelle est la différence entre SOAP et REST ?
    Bonjour,

    je sais je pose une question bête, mais c'est ce type de chose que l'on se pose en premier (comme je suis débutant donc veuillez m'excuser)

    Bon je résume ce que je sais :

    SOAP :
    Simple Object Access Protocol, protocole d’accès aux objets simples.
    Comme son nom ne l’indique pas, c’est un protocole d’échange d’informations inter-applications basé sur xml.

    REST:
    REST est l’acronyme anglais de REpresentational State Transfer.
    Ce n’est pas un protocole, mais simplement une manière d’utiliser l’architecture relative au protocole HTTP.
    Il a des méthodes relatives à ce protocole (GET, POST, PUT, DELETE, HEAD, CONNECT, TRACE, OPTIONS ....)

    Mais ça me dit pas par exemple quand il faut utiliser l'un et pas l'autre ?

    Merci pour vos réponses.

  2. #2
    Membre confirmé
    Avatar de geforce
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    1 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 055
    Points : 559
    Points
    559
    Par défaut
    Bon

    je reformule ma question quel sont les choix qui motive d'avoir une architecture WebService en REST et pas en SOAP ?

    Merci

  3. #3
    Membre du Club
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Septembre 2012
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2012
    Messages : 21
    Points : 40
    Points
    40
    Par défaut
    SOAP :
    Avantages:
    • Language, plate-forme, et le transport agnostique
    • Conçu pour gérer les environnements informatiques distribués
    • La norme est en vigueur pour les services Web, et a donc un meilleur soutien des autres normes (WSDL, WS-*) et de l'outillage des fournisseurs
    • Built-in de gestion des erreurs (fautes)
    • Extensibilité
    inconvénients:
    • Conceptuellement plus difficile, plus "poids lourd" que le reste
    • Un peu plus bavard
    • Plus difficiles à développer, nécessite des outils
    REST:
    Avantages:
    • Language et agnostique plate-forme
    • Beaucoup plus simple à développer que SOAP
    • Courbe d'apprentissage Petit, moins de dépendance sur les outils
    • Concise, pas besoin de couche de messagerie supplémentaire
    • Closer dans la conception et la philosophie sur le Web
    inconvénients:
    • Suppose un modèle de communication point à point - non utilisable pour l'environnement de calcul distribué dans lequel le message peut passer par un ou plusieurs intermédiaires
    • Manque de soutien pour les normes de sécurité, la politique, la messagerie fiable, etc, afin que les services qui ont des exigences plus sophistiquées sont plus difficiles à développer ("rouler propre")
    • Lié au modèle de transport HTTP

  4. #4
    Membre régulier
    Homme Profil pro
    Dévelopeur Cobol + Java J2SE
    Inscrit en
    Novembre 2007
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Dévelopeur Cobol + Java J2SE
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 72
    Points : 77
    Points
    77
    Par défaut
    Citation Envoyé par taherlabidi Voir le message
    SOAP :
    Avantages:
    • Language, plate-forme, et le transport agnostique
    • Conçu pour gérer les environnements informatiques distribués
    • La norme est en vigueur pour les services Web, et a donc un meilleur soutien des autres normes (WSDL, WS-*) et de l'outillage des fournisseurs
    • Built-in de gestion des erreurs (fautes)
    • Extensibilité
    inconvénients:
    • Conceptuellement plus difficile, plus "poids lourd" que le reste
    • Un peu plus bavard
    • Plus difficiles à développer, nécessite des outils
    REST:
    Avantages:
    • Language et agnostique plate-forme
    • Beaucoup plus simple à développer que SOAP
    • Courbe d'apprentissage Petit, moins de dépendance sur les outils
    • Concise, pas besoin de couche de messagerie supplémentaire
    • Closer dans la conception et la philosophie sur le Web
    inconvénients:
    • Suppose un modèle de communication point à point - non utilisable pour l'environnement de calcul distribué dans lequel le message peut passer par un ou plusieurs intermédiaires
    • Manque de soutien pour les normes de sécurité, la politique, la messagerie fiable, etc, afin que les services qui ont des exigences plus sophistiquées sont plus difficiles à développer ("rouler propre")
    • Lié au modèle de transport HTTP
    J'ai une question concernant le client. Avec REST, à chaque interrogation du serveur (HttpUrlConnection) on démarre une nouvelle connexion,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    et j'ai remarqué que cela prend un certain temps. Qu'en est il avec SOAP ? (est ce que les temps de réponse sont les mêmes ?)

  5. #5
    Traductrice
    Avatar de Mishulyna
    Femme Profil pro
    Développeur Java
    Inscrit en
    Novembre 2008
    Messages
    1 504
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2008
    Messages : 1 504
    Points : 7 840
    Points
    7 840
    Par défaut
    Citation Envoyé par CobolProgrammator Voir le message
    J'ai une question concernant le client. Avec REST, à chaque interrogation du serveur (HttpUrlConnection) on démarre une nouvelle connexion,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    et j'ai remarqué que cela prend un certain temps. Qu'en est il avec SOAP ? (est ce que les temps de réponse sont les mêmes ?)
    Bonjour,

    Peut-être ça dépend aussi de l'implémentation du client. N'ayant jamais compris l'implémentation Jersey du côté client, j'ai écrit une simple classe Java qui utilise la librairie Apache HttpClient

    Je n'ai pas de url.openConnection(), juste des HttpRequest httpReq = new HttpGet(urlWS);
    Chaque fois que tu dis "je ne peux pas", n'oublie pas d'ajouter le mot "encore".

  6. #6
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par CobolProgrammator Voir le message
    J'ai une question concernant le client. Avec REST, à chaque interrogation du serveur (HttpUrlConnection) on démarre une nouvelle connexion,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    HttpURLConnection conn = (HttpURLConnection) url.openConnection();
    et j'ai remarqué que cela prend un certain temps. Qu'en est il avec SOAP ? (est ce que les temps de réponse sont les mêmes ?)
    Pas vraiment. Les deux sont basés sur le protocole HTTP, donc tu as ses contraintes. Et dedans, il y a des mécanismes prévu pour garder la connection ouverte entre les requêtes. Autant SOAP que REST peuvent à priori en profiter.

Discussions similaires

  1. Réponses: 12
    Dernier message: 01/06/2010, 16h57
  2. Réponses: 2
    Dernier message: 25/05/2005, 21h34
  3. Réponses: 5
    Dernier message: 03/05/2005, 18h22
  4. Réponses: 11
    Dernier message: 31/01/2005, 17h48
  5. Quelle est la différence entre le float et le real ?
    Par Manson dans le forum Débuter
    Réponses: 3
    Dernier message: 10/08/2004, 17h26

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