Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 06-02-2011 15:39:41

vince56
Membre
Date d'inscription: 30-11-2010
Messages: 96

[RESOLU]ZF1.9.2 - intégration PHP classique

Bonjour,
J'utilise un kit d'intégration fournit par un éditeur de logiciel pour communiquer par web services qui est développé en PHP 5, environnement standard (pas de framework).
L'application dans laquelle on me demande d'intégrer ce kit est développée avec Zend. J'ai voulu modifier le kit afin d'utiliser les composant Zend, mais le composant Zend_Soap_Client est refusé par l'éditeur.

Donc ma question : Est-il possible, dans une application Zend, d'intégrer une partie de développement standard ? un formulaire html appelant un script PHP, sans prise en compte de l'environnement Zend ?

D'avance merci.

Cordialement.

Vincent

Dernière modification par vince56 (15-02-2011 15:12:04)

Hors ligne

 

#2 14-02-2011 15:11:58

vince56
Membre
Date d'inscription: 30-11-2010
Messages: 96

Re: [RESOLU]ZF1.9.2 - intégration PHP classique

Aucune idée?

En fait, j'utilise une classe fournie par un éditeur, développé en php classique, à savoir l'appel suivant :

Code:

$client = new SoapClient( $this->WSDL_SOAP, $this->header_soap);

Pour l'instant, j'ai modifié cette classe en modifiant cet appel par un appel Zend :

Code:

$client = new Zend_Soap_Client( $this->WSDL_SOAP, $this->header_soap);

L'idéal serait de ne pas modifier cette classe, car elle ne m'appartient pas.

Comment puis-je appeler, utiliser cette classe depuis un environnement Zend ?

Merci.

Hors ligne

 

#3 14-02-2011 18:34:57

sekaijin
Membre
Date d'inscription: 17-08-2007
Messages: 1137

Re: [RESOLU]ZF1.9.2 - intégration PHP classique

tout dépends de ce que tu cherche à faire

si c'est appeller un webservice
tu suit la doc de Zend et tu te connecte au webservice à toi de faire ce que tu veux du résultat

si ce que tu cherche à intégrer est un dev complet avec traitement intégré c'est tout autre chose

un service SOAP peut être appelé par n'importe quel client
donc rien de doit t'empêcher de faire ça en ZF

si le fournisseur de service à inclus un truc qui interdit un eautre techo que la sienne
alors ce n'est pas conforme à la norme

A+JYT

Hors ligne

 

#4 15-02-2011 09:23:56

vince56
Membre
Date d'inscription: 30-11-2010
Messages: 96

Re: [RESOLU]ZF1.9.2 - intégration PHP classique

Bonjour,
En fait, je dispose d'un kit d'intégration fournit par un éditeur, dans lequel se trouve une classe (qui fait l'appel du web service), les wsdl, les fichiers de configuration nécessaires.
Ce que je recherche à faire, c'est simplement alimenté mes variables via un formulaire, puis appeler une méthode de la classe fournie par l'éditeur.
Seulement, lorsque j'appelle la méthode, j'obtiens une erreur dans la classe de l'éditeur au niveau de l'appel de la fonction SoapClient() :

Code:

Warning: SoapClient::SoapClient() [function.SoapClient-SoapClient]: I/O warning : failed to load external entity "../wsdl/production/WebPaymentAPI.wsdl" in C:\AppServ\www\zfProject\application\payline\lib\paylineSDK.php on line 565
ERROR : SOAP-ERROR: Parsing WSDL: Couldn't load from '../wsdl/production/WebPaymentAPI.wsdl'

Si je clique sur [function.SoapClient-SoapClient] , j'obtiens l'erreur suivante :

Code:

Fatal error: Uncaught exception 'Zend_Controller_Action_Exception' with message 'Action "functionSoapclientSoapclient" does not exist and was not trapped in __call()' in C:\Program Files\ZendFrameworkCli\library\Zend\Controller\Action.php:485 Stack trace: #0 C:\Program Files\ZendFrameworkCli\library\Zend\Controller\Action.php(515): Zend_Controller_Action->__call('functionSoapcli...', Array) #1 C:\Program Files\ZendFrameworkCli\library\Zend\Controller\Dispatcher\Standard.php(289): Zend_Controller_Action->dispatch('functionSoapcli...') #2 C:\Program Files\ZendFrameworkCli\library\Zend\Controller\Front.php(946): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http)) #3 C:\AppServ\www\zfProject\index.php(187): Zend_Controller_Front->dispatch() #4 {main} thrown in C:\Program Files\ZendFrameworkCli\library\Zend\Controller\Action.php on line 485

Je ne suis pas un spécialiste de Zend, mais je ne comprends plus  ce que je dois faire ...
Merci pour votre aide, car c'est assez urgent en fait.
Vince

Dernière modification par vince56 (15-02-2011 09:24:35)

Hors ligne

 

#5 15-02-2011 13:04:38

sekaijin
Membre
Date d'inscription: 17-08-2007
Messages: 1137

Re: [RESOLU]ZF1.9.2 - intégration PHP classique

il semble que ta classe ne trouve pas le fichier wsdl
il te faut donc mettre ce fichier dans la hiérarchie de fichier de ton site
et donner à ton code le chemin pour y accéder

ce qu'il faut savoir avec ZF c'est que les chemin ./toto/titi.ext sont relatif au fichier
index.php qui est le seul script que ZF exécute
ce n'est donc pas par rapport au fichier contenant ton code pour l'appel SOAP.
donc

Code:

racine du site/
  + index.php
  + application/
  + library/
       + prolib/
            +SoapClient.php

dans une hérarchie de ce type le ../wsdl/production/WebPaymentAPI.wsdl dans SoapClient.php
ne fait par référence à Racine du site/library/prolib/../wsdl/production/WebPaymentAPI.wsdl (par rapport à SoapClient.php)

Code:

racine du site/
  + index.php
  + application/
  + library/
       + prolib/
            +SoapClient.php
       + wsdl/
            + production/
                  + WebPaymentAPI.wsdl

mais à
Racine du site/../wsdl/production/WebPaymentAPI.wsdl (par rapport à index.php)

Code:

racine du site/
  + index.php
  + application/
  + library/
       + prolib/
            +SoapClient.php
wsdl/
  + production/
       + WebPaymentAPI.wsdl

A+JYT

Dernière modification par sekaijin (15-02-2011 13:05:58)

Hors ligne

 

#6 15-02-2011 14:27:22

vince56
Membre
Date d'inscription: 30-11-2010
Messages: 96

Re: [RESOLU]ZF1.9.2 - intégration PHP classique

Bonjour,
Ok merci pour ton coup de main,c'est le chemin d'accès par rapport à l'index.php qui fait toute la différence.
Maintenant, j'obtiens : ERROR : SSL support is not available in this build
donc j'avance ... mais j'espère sue je mettrais moins de temps à régler ce problème...
Merci.

Hors ligne

 

#7 15-02-2011 14:50:57

vince56
Membre
Date d'inscription: 30-11-2010
Messages: 96

Re: [RESOLU]ZF1.9.2 - intégration PHP classique

pour mon dernier message d'erreur, si ça intéresse , voici la solution :
   1. Uncomment


      extension=php_soap.dll


      in your php.ini


   2. Uncomment


      extension=php_openssl.dll


      in your php.ini


   3. Copy


      ssleay32.dll


      and


      libeay32.dll


      to your windows system32 directory


   4. Reboot apache, et voila!


Merci sekaijin pour ton aide
Vince

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages