Quick links: Content - sections - sub sections
EN FR
Quick Search Advanced search
 
Page

  [Opened] [Résolu] Serveur SOAP et client .NET

Posted by yamsuz on 10/17/2011 09:55

Bonjour à tous,

J'ai un petit soucis au niveau du SOAP. J'ai bien fait mon serveur SOAP et je suis en train de le tester avec des clients fait dans différents langages (Php, .NET). Les autres viendront après.

J'arrive sans aucun problème a renvoyer une chaine de caractère et un numérique. J'aimerai renvoyer un tableau, puis un tableau à 2 dimensions afin de pouvoir renvoyer le résultat d'une requete SQL.

Visiblement je suis obligé (contrainte de php) d'utiliser une classe avec une structure, pourquoi pas.

Voici mon code

class suiviCtrl extends jController {

<code>
     /** 
     * on reçoit un objet et on retourne un objet
     * @return MyTestStruct
     */
    function receiveObject() {
        $rep = $this->getResponse('soap');
        
        $input = new MyTestStruct();
        
        $cnx = jDb::getConnection();
        
        $requete = "SELECT * FROM maTable";
        $rs = $cnx->query($requete);
        
        $result = $rs->fetchAll();
        
        $input->values = $result;
        
        $rep->data = $input;
        return $rep;
    }

}

/**

 * Struct used for tests
 */

class MyTestStruct{

    
 
    /**
     * @var string[=>]
     */
    public $values = array();

}

</code>

Quand je fais le test avec un client Php, je n'ai aucun problème, quand je le test avec un programme en C#, j'ai un problème pour importer le schéma du fichier XML.

Avez vous une idée, merci d'avance

  [Opened] Serveur SOAP et client .NET

Reply #1 Posted by laurentj on 10/17/2011 12:04

Bonjour,

j'ai un problème pour importer le schéma du fichier XML.

de quel schéma ? tu as vérifié si le contenu du schéma correspondait à ce qui était renvoyé (ou vice versa).

  [Opened] Serveur SOAP et client .NET

Reply #2 Posted by yamsuz on 10/17/2011 13:22

C'est l'erreur que C# me donne.

Il me parait bon :

<xsd:schema targetNamespace="http://localhost/webservice/">
<code>
    <xsd:complexType name="MyTestStruct">
        <xsd:all>
            <xsd:element name="values" type="apache:Map"/>
        </xsd:all>
    </xsd:complexType>
</xsd:schema> </code>

Je n'arrive pas à renvoyer plusieurs fois la variable values (sous forme de tableau)

  [Opened] Serveur SOAP et client .NET

Reply #3 Posted by yamsuz on 10/17/2011 13:56

Je te remercie, je viens de trouver une partie de ce qui m'intéresse

Si ça intéresse quelqu'un

class suiviCtrl extends jController {

<code>
     /** 
     * on reçoit un objet et on retourne un objet
     * @return MyTestStruct[]
     */
    function receiveObject() {
        $rep = $this->getResponse('soap');
       
        
        $rep->data = array(new MyTestStruct('titi'), new MyTestStruct('toto'));
        
        return $rep;
    }

}

/**

 * Struct used for tests
 */

class MyTestStruct{

    
    public function __construct($var = '')
    {
        $this->maDate = $var;
    }
 
    /**
     * @var string
     */
    public $maDate = '';

}

</code>
 
Page
  1. Serveur SOAP et client .NET