2010-08-30 07:49:44 +00:00
|
|
|
README
|
|
|
|
======
|
|
|
|
|
2010-09-06 13:37:30 +00:00
|
|
|
Le webservice est basé sur le ZendFramework pour générer les WSDLs.
|
|
|
|
Le fichier Zend/Soap/Wsdl/Strategy/DefaultComplexType.php a été modifié pour
|
|
|
|
générer la documentation automatiquement.
|
2010-08-30 07:49:44 +00:00
|
|
|
|
2010-09-06 13:37:30 +00:00
|
|
|
/**
|
|
|
|
* Traitement éléments de documentation à placer dans le WSDL
|
|
|
|
* Supprime les retours chariots.
|
|
|
|
* Récupére les éléments de documentation
|
|
|
|
*/
|
|
|
|
$docBlock = preg_replace('/\n/', '', $property->getDocComment() );
|
|
|
|
if (preg_match('/\/\*\*(.+) \* @var\s+[^\s]+/m', $docBlock, $docBlockMatches)) {
|
|
|
|
//Suppression tabulation et autres
|
|
|
|
$comment = preg_replace(
|
|
|
|
array('/\r/','/\t\s\*/'),
|
|
|
|
array('',''), $docBlockMatches[1]
|
|
|
|
);
|
|
|
|
// Ajout des éléments de documentation au WSDL
|
|
|
|
$annotation = $dom->createElement('xsd:annotation');
|
|
|
|
$documentation = $dom->createElement('xsd:documentation', trim($comment));
|
|
|
|
$annotation->appendChild($documentation);
|
|
|
|
$element->appendChild($annotation);
|
|
|
|
}
|
2010-08-30 07:49:44 +00:00
|
|
|
|
2010-09-06 13:37:30 +00:00
|
|
|
Fonctionnement
|
|
|
|
==============
|
|
|
|
Obtenir le WSDL
|
|
|
|
- En mode développement : http://hostname/service?wsdl-auto
|
|
|
|
- Générer le wsdl : http://hostname/service?wsdl-generate
|
|
|
|
- Utiliser le WSDL généré : http://hostname/service?wsdl
|
|
|
|
|
|
|
|
Pour définir le mode (vhost d'apache)
|
|
|
|
SetEnv APPLICATION_ENV "development"
|
|
|
|
SetEnv APPLICATION_ENV "production"
|
|
|
|
|
|
|
|
En appelant l'url http://hostname/service, le contoller de l'application,
|
|
|
|
"service" est automatiquement utiliser.
|
|
|
|
Tout ce qui est visible dans la class utiliser par le controller se retrouve
|
|
|
|
visible dans le service (wsdl, requête)
|
|
|
|
|
|
|
|
Si des fonctions ne doivent pas être rendu visible il faut donc les séparer
|
|
|
|
dans un autre controller utilisant une autre class.
|
|
|
|
|
|
|
|
|
|
|
|
Configuration VHOST
|
|
|
|
===================
|
2010-08-30 07:49:44 +00:00
|
|
|
|
|
|
|
Exemple de vhost en mode développement
|
|
|
|
|
|
|
|
<VirtualHost *:80>
|
|
|
|
ServerName scoresws.sd.dev
|
|
|
|
AddDefaultCharset utf-8
|
|
|
|
DocumentRoot "D:/www/scoresws/public"
|
|
|
|
|
|
|
|
SetEnv APPLICATION_ENV "development"
|
|
|
|
|
|
|
|
<Directory "D:/www/scoresws/public/">
|
|
|
|
DirectoryIndex index.php
|
|
|
|
AllowOverride All
|
|
|
|
Order allow,deny
|
|
|
|
Allow from all
|
|
|
|
</Directory>
|
|
|
|
|
|
|
|
# Possible values include: debug, info, notice, warn, error, crit, alert, emerg.
|
|
|
|
LogLevel debug
|
|
|
|
ErrorLog "logs/scoresws.sd.dev-error.log"
|
|
|
|
CustomLog "logs/scoresws.sd.dev-access.log" common
|
|
|
|
</VirtualHost>
|
|
|
|
|
|
|
|
|
2010-09-06 13:37:30 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|