Ajout génération automatique du WSDL pour eviter les erreurs
This commit is contained in:
parent
4de0962235
commit
1a401be3df
@ -51,41 +51,41 @@ class ServiceController extends Zend_Controller_Action
|
|||||||
}
|
}
|
||||||
require_once $pathClassService.'Entreprise.php';
|
require_once $pathClassService.'Entreprise.php';
|
||||||
$fichierWsdl = 'Entreprise-'.$version.'.wsdl';
|
$fichierWsdl = 'Entreprise-'.$version.'.wsdl';
|
||||||
|
|
||||||
// Fourniture du wsdl
|
// Génération/Founiture du wsdl
|
||||||
if (isset($_GET['wsdl'])) {
|
if ( isset($_GET['wsdl']) || isset($_GET['wsdl-generate']) || isset($_GET['wsdl-auto']) ) {
|
||||||
if (file_exists($fichierWsdl)) {
|
if (file_exists($fichierWsdl)) {
|
||||||
if (!headers_sent()) {
|
if (!headers_sent()) {
|
||||||
header('Content-Type: text/xml');
|
header('Content-Type: text/xml');
|
||||||
}
|
}
|
||||||
echo file_get_contents($fichierWsdl);
|
echo file_get_contents($fichierWsdl);
|
||||||
} else {
|
} else {
|
||||||
echo "Erreur WSDL inexistant ";
|
// Définition du webservice
|
||||||
}
|
$wsdl = new Zend_Soap_AutoDiscover();
|
||||||
}
|
$wsdl->setComplexTypeStrategy('Zend_Soap_Wsdl_Strategy_ArrayOfTypeSequence');
|
||||||
// Génération du wsdl
|
$wsdl->setOperationBodyStyle( array('use' => 'literal') );
|
||||||
elseif ( isset($_GET['wsdl-generate']) || isset($_GET['wsdl-auto']) ) {
|
$wsdl->setBindingStyle( array('style' => 'document') );
|
||||||
|
$wsdl->setClass('Entreprise');
|
||||||
// Définition du webservice
|
|
||||||
$wsdl = new Zend_Soap_AutoDiscover();
|
// Enregistrement du WSDL dans un fichier
|
||||||
$wsdl->setComplexTypeStrategy('Zend_Soap_Wsdl_Strategy_ArrayOfTypeSequence');
|
if ( isset($_GET['wsdl-generate']) ) {
|
||||||
$wsdl->setOperationBodyStyle( array('use' => 'literal') );
|
if (file_exists($fichierWsdl)) {
|
||||||
$wsdl->setBindingStyle( array('style' => 'document') );
|
unlink($fichierWsdl);
|
||||||
$wsdl->setClass('Entreprise');
|
}
|
||||||
|
|
||||||
// Enregistrement du WSDL dans un fichier
|
|
||||||
if ( isset($_GET['wsdl-generate']) ) {
|
|
||||||
if (!file_exists($fichierWsdl)) {
|
|
||||||
$wsdl->dump($fichierWsdl);
|
$wsdl->dump($fichierWsdl);
|
||||||
echo "Le fichier $fichierWsdl a été généré";
|
echo "Le fichier $fichierWsdl a été généré";
|
||||||
} else {
|
} elseif (isset($_GET['wsdl']) && !file_exists($fichierWsdl)) {
|
||||||
echo "ERREUR : Le fichier $fichierWsdl est déjà présent !";
|
$wsdl->dump($fichierWsdl);
|
||||||
|
if (!headers_sent()) {
|
||||||
|
header('Content-Type: text/xml');
|
||||||
|
}
|
||||||
|
echo file_get_contents($fichierWsdl);
|
||||||
}
|
}
|
||||||
}
|
// Envoi sur la sortie standard le wsdl
|
||||||
// Envoi sur la sortie standard le wsdl
|
elseif ( isset($_GET['wsdl-auto']) ){
|
||||||
elseif ( isset($_GET['wsdl-auto']) ){
|
$wsdl->handle();
|
||||||
$wsdl->handle();
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Fourniture du service
|
// Fourniture du service
|
||||||
} else {
|
} else {
|
||||||
|
@ -1,6 +1,5 @@
|
|||||||
README
|
README
|
||||||
======
|
======
|
||||||
|
|
||||||
Le webservice est basé sur le ZendFramework pour générer les WSDLs.
|
Le webservice est basé sur le ZendFramework pour générer les WSDLs.
|
||||||
|
|
||||||
Fichier de configuration
|
Fichier de configuration
|
||||||
@ -22,6 +21,10 @@ Obtenir le WSDL
|
|||||||
- Générer le wsdl : http://hostname/service?wsdl-generate
|
- Générer le wsdl : http://hostname/service?wsdl-generate
|
||||||
- Utiliser le WSDL généré : http://hostname/service?wsdl
|
- Utiliser le WSDL généré : http://hostname/service?wsdl
|
||||||
|
|
||||||
|
N.B : Le fichier WSDL est généré automatiquement en appelant
|
||||||
|
http://hostname/service?wsdl afin de ne pas provoquer d'erreur
|
||||||
|
après une mise en production
|
||||||
|
|
||||||
Pour définir le mode (vhost d'apache)
|
Pour définir le mode (vhost d'apache)
|
||||||
SetEnv APPLICATION_ENV "development"
|
SetEnv APPLICATION_ENV "development"
|
||||||
SetEnv APPLICATION_ENV "production"
|
SetEnv APPLICATION_ENV "production"
|
||||||
|
Loading…
Reference in New Issue
Block a user