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

Symfony PHP Discussion :

Web Service sous symfony


Sujet :

Symfony PHP

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2008
    Messages
    155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Février 2008
    Messages : 155
    Points : 48
    Points
    48
    Par défaut Web Service sous symfony
    Bonjour,

    Voila je doit mettre en place pour l'un de nos clients un web service. J'aimerai savoir comment on fait un web service sous Symfony. J'ai vue qu'il y avait des plugin mais je ne trouve pas claire leur doc et l'utilisation.

    Alors si quelqu'un à déjà fait un web service avec Symfony (1.2) et qu'il possède un tuto claire (car je suis encore novice dans cette partie de développement). Je suis preneur.

    Merci infiniment.

  2. #2
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2011
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2011
    Messages : 124
    Points : 150
    Points
    150
    Par défaut
    Voilà un tuto http://www.symfony-project.org/jobee...Doctrine/en/16

    J'ai sélectionné la version 1.2 de symfony et doctrine mais tu peux prendre n'importe quel version et ORM.

  3. #3
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2008
    Messages
    155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Février 2008
    Messages : 155
    Points : 48
    Points
    48
    Par défaut
    Merci pour ta réponse.

    Oui je connaissais déjà ce lien. J'ai déjà fait un web service avec. Mais j'ai oublié de mettre des précisions dans mon premier message.

    Je doit utiliser SOAP. Donc je doit faire un fichier wsdl.

  4. #4
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2011
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2011
    Messages : 124
    Points : 150
    Points
    150
    Par défaut
    Quels sont les plugins que tu as déjà essayés ?

  5. #5
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2008
    Messages
    155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Février 2008
    Messages : 155
    Points : 48
    Points
    48
    Par défaut
    Je suis tombé sur un tuto pour ce plugins : http://www.symfony-project.org/plugi...bServicePlugin. Mais j'ai vue que ce plugins n'était compatible que 1.3 et j'ai trouvé un autre plugins mais n'ayant aucune doc je ne l'ai pas installé.

    Si je savais créer un fichier wsdl sous symfony avec les éléments de-dans. Ca me serai utile.

  6. #6
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2008
    Messages
    155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Février 2008
    Messages : 155
    Points : 48
    Points
    48
    Par défaut
    J'ai trouvé se tuto http://www.finalconcept.com.au/artic...bserviceplugin mais il me semble pas très clair....

  7. #7
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2009
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2009
    Messages : 100
    Points : 123
    Points
    123
    Par défaut
    Bonjour,

    La différence entre la version 1.3 et la version 1.4 est que la version 1.4 est une version 1.3 mais dont les fonctions obsolètes ont été supprimés. Tu peut donc utiliser dans la grande majorité des cas un plugins 1.4 dans la version 1.4 de symfony.

    Je t'encourage donc à créer ton webservice avec ckWebServicePlugin

    Inarius

  8. #8
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2008
    Messages
    155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Février 2008
    Messages : 155
    Points : 48
    Points
    48
    Par défaut
    Oui mais le souci c'est que le projet a été fait sous la 1.2

  9. #9
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2008
    Messages
    155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Février 2008
    Messages : 155
    Points : 48
    Points
    48
    Par défaut
    Et y-a-t-il pas moyen de créer un web service totalement a la main. En créer son propre fichier wsdl. Car le web service doit juste faire un traitement.

  10. #10
    Expert éminent
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Points : 8 486
    Points
    8 486
    Par défaut
    Il est parfaitement possible de créer un web service sans passer par un plugin.

    Il est probable que le plugin fonctionne sur la 1.2, même s'il n'est pas validé. Il faudra le valider toi même. Je ne sais pas s'il est fourni avec les fichiers tests, cela simplifierait de beaucoup la vérification de compatibilité.

    Après, c'est à toi de voir, en fonction du nombre de commande dans ton web service si cela vaut la peine d'adapter le plugin à la 1.2 ou s'il n'est pas plus simple de développer directement ton web service.
    Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher, il mangera toujours (Lao Tseu).

    • Pensez à valoriser les réponses pertinantes, cliquez sur le bouton vert +1 pour indiquer votre accord avec la solution proposée.
    • Pensez à utiliser la balise [code] pour afficher du code, elle est cachée sous le bouton [#] dans l'éditeur.
    • Une discussion est terminée ? Alors le bouton est votre ami !

  11. #11
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2009
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2009
    Messages : 100
    Points : 123
    Points
    123
    Par défaut
    Sinon, pourquoi ne pas utiliser Zend? Tu as des classes dans Zend qui te permettent de mettre facilement en place un webservice.

    Pour installer Zend dans symfony, tu peut regarder dans la doc : http://www.symfony-project.org/jobee...zend_framework

    J'espere que ca te sera utile,
    Inarius

  12. #12
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2008
    Messages
    155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Février 2008
    Messages : 155
    Points : 48
    Points
    48
    Par défaut
    Merci pour toutes vos réponses.

    Pour Zend je préfère pas trop l'utilisé, car je trouve inclure Zend dans Symfony fait ralentir l'exécution du projet.

    Pour le plugin, je l'ai installé. Je suis actuellement entrain de le testé. Mais comme s'est mon premier Web Service (de plus sous symfony, pour en rajouter une couche ) que je fait, j'ai encore du mal sur la compréhension.

    Sinon si quelqu'un a un petit tuto sur la conception de a à z d'un web service sous symfony. Je suis preneur.

    Pour l'instant je test le plugin et je reviens vers vous si j'ai des résultats ou non.

  13. #13
    Membre actif
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2010
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2010
    Messages : 144
    Points : 241
    Points
    241
    Par défaut
    Pour avoir fait un webservice récemment (pas sous symfony), j'ai découvert Zend Studio qui permet d'éditer les fichiers WSDL et XSD depuis une interface graphique. Il fait tout le plus gros du travail et il reste juste quelques petites corrections à apporter dans le WSDL mais rien de bien méchant.

  14. #14
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2008
    Messages
    155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Février 2008
    Messages : 155
    Points : 48
    Points
    48
    Par défaut
    Bon je n'y comprend rien ... . Surtout que c'est mon premier web service en soap. Autant c'est simple de faire un web service en xml. Au temps je trouve dur de le faire en soap surtout avec symfony.

  15. #15
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2008
    Messages
    155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Février 2008
    Messages : 155
    Points : 48
    Points
    48
    Par défaut
    Je viens de trouvé ca : http://snippets.symfony-project.org/snippet/135. Je vais voir si je peut l'adapté.

  16. #16
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2008
    Messages
    155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Février 2008
    Messages : 155
    Points : 48
    Points
    48
    Par défaut
    Bon je viens d'installer le plugin qui me permet de faire des web service. J'ai suivi le tutoriel. J'ai mon wsdl...Et après... (le mec complétement perdu...)

  17. #17
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2008
    Messages
    155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Février 2008
    Messages : 155
    Points : 48
    Points
    48
    Par défaut
    Bon j'ai suivit le tutoriel et j'ai fait une méthode client pour testé le web service mais voila j'ai une jolie erreur qui est la suivante "DTD are not supported by SOAP".

    Je vous fourni mon code de ma méthode et mon wsdl.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    	public function executeIndex(sfWebRequest $request)
    	{
    		ini_set("soap.wsdl_cache_enabled", 0);
    		$wsdl = "http://localhost/SoapApi.wsdl";
    		$test = new SoapClient($wsdl, array('trace' => true));
    		$test->performanse_multiply('1','2');
    		die;
    	}
    Voici mon wsdl :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
     
    <?xml version="1.0" encoding="utf-8"?>
    <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" name="SoapApi" targetNamespace="http://localhost/" xmlns:tns="http://localhost/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
      <wsdl:types xmlns:xsd="http://www.w3.org/2001/XMLSchema">
        <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="http://localhost/"/>
      </wsdl:types>
      <wsdl:portType name="SoapApiPortType">
        <wsdl:operation name="performanse_multiply" parameterOrder="a b">
          <wsdl:input message="tns:performanse_multiplyRequest"/>
          <wsdl:output message="tns:performanse_multiplyResponse"/>
        </wsdl:operation>
      </wsdl:portType>
      <wsdl:binding xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" name="SoapApiBinding" type="tns:SoapApiPortType">
        <soap:binding xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
        <wsdl:operation xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" name="performanse_multiply">
          <soap:operation xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" soapAction="http://localhost/performanse_multiply" style="rpc"/>
          <wsdl:input xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
            <soap:body xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" parts="a b" use="literal" namespace="http://localhost/" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
          </wsdl:input>
          <wsdl:output xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
            <soap:body xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" parts="result" use="literal" namespace="http://localhost/" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
          </wsdl:output>
        </wsdl:operation>
      </wsdl:binding>
      <wsdl:message name="performanse_multiplyRequest">
        <wsdl:part name="a" type="xsd:double"/>
        <wsdl:part name="b" type="xsd:double"/>
      </wsdl:message>
      <wsdl:message name="performanse_multiplyResponse">
        <wsdl:part name="result" type="xsd:double"/>
      </wsdl:message>
      <wsdl:service xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" name="SoapApiService">
        <wsdl:port xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" name="SoapApiPort" binding="tns:SoapApiBinding">
          <soap:address xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" location="http://localhost/SoapApi.php"/>
        </wsdl:port>
      </wsdl:service>
    </wsdl:definitions>

  18. #18
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2008
    Messages
    155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Santé

    Informations forums :
    Inscription : Février 2008
    Messages : 155
    Points : 48
    Points
    48
    Par défaut
    j'ai rajouté dans ma méthode index cette ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    echo '<pre>';
    		var_dump($service->__getLastRequest(), 
    		         $service->__getLastRequestHeaders(), 
    		         $service->__getLastResponse(), 
    		         $service->__getLastResponseHeaders());
    Il me retourne tous null...

Discussions similaires

  1. [1.x] Problème de web services sous symfony 1.4 chez l'hébergeur
    Par ryosakasaki7777 dans le forum Symfony
    Réponses: 0
    Dernier message: 11/01/2012, 19h55
  2. Problème déploiement Web Service sous Axis
    Par djalouk dans le forum Services Web
    Réponses: 4
    Dernier message: 17/09/2007, 16h09
  3. web service sous Mono
    Par mczikas dans le forum Mono
    Réponses: 6
    Dernier message: 13/03/2007, 18h18
  4. Réponses: 3
    Dernier message: 08/03/2007, 10h16
  5. Créer un client Web Service sous Eclipse et Windows
    Par Lebas dans le forum Services Web
    Réponses: 2
    Dernier message: 28/08/2006, 10h53

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