RechercherRechercher    Liste des MembresListe des Membres     S'enregistrerS'enregistrer    ProfilProfil    ConnexionConnexion 
Se désinscrire d'une mailing list
 
Génération automatique de documents

 
Poster un nouveau sujet   Répondre au sujet    SCENARI Index du Forum -> Discussion générale
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
mosfet37



Inscrit le: 17 Avr 2008
Messages: 11
Localisation: CHAETAU DU LOIR

MessagePosté le: Dim Mai 17, 2009 9:30 am    Sujet du message: Génération automatique de documents Répondre en citant

Bonjour,
Je voudrais savoir s'il est possible de lancer une génération de manière logicielle à partir d'une requete HTTP sur un SCENARI Server. Le but étant d'exécuter une génération automatique après une mise à jour d'un fichier, ou de déclencher une génération en javascript (requête ajax).
Florent
_________________
Dir. Technique PMB Services
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
sylvain.spinelli



Inscrit le: 03 Mai 2006
Messages: 495
Localisation: Kelis

MessagePosté le: Dim Mai 17, 2009 5:58 pm    Sujet du message: Génération automatique de documents Répondre en citant

Bonjour,

Oui, il est possible de lancer une génération par une requête http.

La requête est constituée d'un flux xml décrivant la ou les générations
(ou autre actions) à effectuer. Le service renvoit un identifiant de
traitement, gr' auquel il est possible de réinterroger le serveur
régulièrement pour être informé de l'état d'avancement de la t'e en
cours. En fin de traitement, le résultat est retourné sous forme d'un
flux xml qui reprend la structure xml des t'es demandées enrichies des
différents statuts. Une dernière requête de cloture doit alors être
envoyée au serveur.

Initialement cette implémentation a été faite pour être interrogée par
une task ANT susceptible d'interroger un serveur scenari distant. Si
votre contexte appelant peut exploiter un contexte java, ce serait le
plus simple.

Dans la version 3.7 (en cours de dev), il sera possible d'appeler le
serveur en forçant le mode synchrone, ce qui simplifiera les appels par
d'autres biais que la task ANT implémentée. Une seule requête est alors
envoyée au serveur, la réponse est retournée lorsque la génération est
achevée avec le résultat (succès / échec...), c'est plus simple ;)

Dites-nous l'option qui vous intéresse, on vous donnera la marche à
suivre...

Sylvain

(Message envoyé depuis une mailing list SCENARIplatform)
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
mosfet37



Inscrit le: 17 Avr 2008
Messages: 11
Localisation: CHAETAU DU LOIR

MessagePosté le: Lun Mai 18, 2009 6:05 pm    Sujet du message: Exactement ce qu'il me faut ! Répondre en citant

Bonsoir !

Merci pour cette réponse détaillée ! A priori, je n'ai pas accès à un contexte java, je préfère la méthode brute HTTP Smile Pour la prgression, c'est parfait, c'est exactement ce dont j'ai besoin.
J'ai juste besoin des flux pour lancer une génération OpenOffice et HTML pour mon Dokiel PMB !
L'objectif est de faire une petite application Web/Dojo qui permet de déposer des MindMapping Freemind, les transformer en Scenari/Dokiel via XSLT et de générer automatiqement les documents.
Ensuite, un portail permet de consulter le document sous toutes ses formes.
Idéal pour gérer des comptes rendus ou des cahiers des charges !

Florent
_________________
Dir. Technique PMB Services
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé
sylvain.spinelli



Inscrit le: 03 Mai 2006
Messages: 495
Localisation: Kelis

MessagePosté le: Mer Mai 20, 2009 2:14 pm    Sujet du message: Génération automatique de documents Répondre en citant

Bonjour,

le projet minMapping->Dokiel semble intéressant. N'hésitez pas à nous tenir au courant de vos travaux.

Voilà une petite documentation pour interroger un serveur Scenari distant :


L'URL du service de batch
L'url du service de "batch" de Scenari est : [urlServeurJ2EE]/[webApp]/s/chain/u/batch
En générale la webapp posède le nom : SCENARIserver[major][medium]
Ce qui donne par exemple (cela dépend de votre config) : http://127.0.0.1:8080/SCENARIserver36/s/chain/u/batch

Paramétrage du service de batch
Pour des questions de sécurité, toutes les publications générés par le service de batch seront impérativement placées dans un dossier paramétré lors de la déclaration du service de batch.

Lors de la construction de votre webApp par l'utilitaire de Scenari, dans le build.property, vous pouvez décommenter ces lignes et paramétrer le chemin :
###
# Configuration du mode batch
# server.conf.batch=true
# server.conf.batch.destPathRoot=${server.work.path}/batchGen



Requête d'appel
Le contenu de la 1ère requête peut être envoyée par les méthodes http PUT, GET ou POST
  • Si c'est du PUT, le flux xml est directement dans le contenu
  • Si c'est du GET ou du POST, le flux xml doit être dans un paramètre "task"

Schéma Xml de la requête pour lancer des générations
Pour une simple génération voilà la structure xml :
<generate wspCode="" rootItemUri="" destPath="" type="" coalesceIfPending="true"/>

  • wspCode est le nom de l'atelier à interroger
  • rootItemUri est le chemin de l'item racine de la publication. Exemple : /monEspace/monItemRacine.xml (Attention, ce chemin doit toujours commencer par /)
  • type est le code du générateur à appeler, c'est à le code qui est spcéfifié dans le .generator de votre modèle dans SCENARIbuilder.
  • destPath est le chemin dans le disque dur pour stocker le résultat de la publication. Pour des raisons de sécurité, ce chemin est en relatif par rapport à la racine des publications paramétré dans le service de batch (cf "Paramétrage du service de batch" ci-dessus).
  • coalesceIfPending : si true, les reqêtes de génération seront fusionnées si deux appels simultannés de génération sont lancés. (false par défaut)

Si plusieurs génération d'un même item doivent être lancées, ou si des "genDeploy" doivent être enchainées, la syntaxe est :
<generate wspCode="" rootItemUri="" destPath="]
<type code=""/> ### 1er générateur
<type code=""> ### 2ème générateur
<type code=""/> ### GenDeploy du 2ème générateur
</type>
</generate>

Si vous souhaitez lancer plusieurs générations d'items différents dans une même requête :
<sequence haltOnError="false"/>
<generate .../>
<generate .../>
</sequence>

Si @haltOnError est à false, la séquence des générations n'est pas interrompue en cas d'échec d'une génération (true par défaut)


Requête incluant des traitements supplémentaires ANT

Il est possible d'imbriquer des traitements ANT aux générations qui seront exécutés à partir du serveur Scenari dans la requête.
ATTENTION, pour des questions de sécurité, cette possibilité est désactivée par défaut. Elle ne doit être activée que dans un contexte sécurisé. Demandez si cette fonction vous intéresse...

Réponse du serveur lorsque de le traitement est en cours

Si la t'e n'a pas été executée en synchrone et n'est pas achevée lors de la construction de la réponse du serveur, la réponse est de type "text/plain" contenant simplement une chaine de caractère correspondant à un ID du traitement entamé.

Requêtes suivantes de demande du statut du traitement

Pour interroger à nouveau le serveur et connaitre l'état de la t'e en cours, il faut réinterroger la même URL en méthode GET ou POST avec les paramètres suivants :
[urlServeurJ2EE]/[webApp]/s/chain/u/batch?cdaction=GetStatus&taskId=XXXXX
où XXXXX est l'id de la task obtenu précédemment.

Si la t'e n'est toujours pas achevée, la réponse est celle décrite au chapitre "Réponse du serveur lorsque de le traitement est en cours".

Si la tache est achevée, la réponse est celle décrite au chapitre ci-dessous "Réponse du serveur lorsque le traitement est achevé".

Réponse du serveur lorsque le traitement est achevé

Lorsque le traitement est achevé, la réponse est de mime-type "text/xml" et non plus "text/plain". Le flux xml retourné correspond à la requête enrichie de d'attributs d'états indiquant le succès ou l'échec du ou des générations lancées.
Exemple :
<generate wspCode="" rootItemUri="" destPath="" type="" coalesceIfPending="true" status="Finished|Failed"/>

Des balises <error message=""/> peuvent être incluses dans la balise generate si @status="Failed".

Requête de cloture d'une task

Pour purger la task en cours sur le serveur (purge mémoire), il est important de lancer une dernière requete au serveur pour lui indiquer qu'il peut clore cette task.
[urlServeurJ2EE]/[webApp]/s/chain/u/batch?cdaction=Close&taskId=XXXXX




(Message envoyé depuis une mailing list SCENARIplatform)


Dernière édition par sylvain.spinelli le Jeu Oct 01, 2009 6:39 am; édité 1 fois
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
stephane.crozat



Inscrit le: 27 Juin 2006
Messages: 419
Localisation: UTC

MessagePosté le: Mar Mai 26, 2009 9:36 am    Sujet du message: Génération automatique de documents Répondre en citant

Pour information un étudiant de master à l'UTC avait travaillé un peu
dans cette optique pour préparer un travail de scénarisation pour Opale.

Voir "OutStep" sur la page Opale.

http://scenari-platform.org/trac/outstep

Stéphane.

(Message envoyé depuis une mailing list SCENARIplatform)
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail Visiter le site web du posteur
Franck.Rouze



Inscrit le: 18 Oct 2006
Messages: 324
Localisation: Université Lille 1

MessagePosté le: Mer Déc 07, 2011 2:45 pm    Sujet du message: Répondre en citant

Bonjour,

Je suis intéressé par la publi automatique et suis retombé sur l'explication de Sylvain à l'adresse suivante :
http://scenari-platform.org/forum/viewtopic.php?t=1811&highlight=automatique

Est-ce qu'il te serait possible de me dire comment fonctionner avec ant. J'ai tenté quelques tests bêtement via navigateur sur le serveur mais sans succès et comme j'ai accès directement au serveur je pense qu'une tache ant serait plus efficace.

merci d'avance
Franck
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail Visiter le site web du posteur
antoine.pourchez



Inscrit le: 05 Mai 2006
Messages: 859
Localisation: Kelis - Rouen

MessagePosté le: Mer Déc 07, 2011 8:32 pm    Sujet du message: Génération automatique de documents Répondre en citant

Salut Franck,
Regarde du coté de http://scenarilms.utc.fr/build3.7/SCbatchANT/J-0/ .
Toine


De : Franck Rouze [mailto:no-reply@scenari-platform.org]
Envoyé : mercredi 7 décembre 2011 15:45
À : discussion@scenari-platform.org
Objet : [discussion] Re: Génération automatique de documents



Bonjour,

Je suis intéressé par la publi automatique et suis retombé sur l'explication de Sylvain à l'adresse suivante :
http://scenari-platform.org/forum/viewtopic.php?t=1811&highlight=automatique

Est-ce qu'il te serait possible de me dire comment fonctionner avec ant. J'ai tenté quelques tests bêtement via navigateur sur le serveur mais sans succès et comme j'ai accès directement au serveur je pense qu'une tache ant serait plus efficace.

merci d'avance
Franck





-------------------- m2f --------------------

(Message envoyé depuis le forum http://scenari-platform.org/forum)
http://scenari-platform.org/forum/viewtopic.php?p=10974#10974

-------------------- m2f --------------------



(Message envoyé depuis une mailing list SCENARIplatform)
_________________
Antoine POURCHEZ
Kelis
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
Franck.Rouze



Inscrit le: 18 Oct 2006
Messages: 324
Localisation: Université Lille 1

MessagePosté le: Jeu Déc 08, 2011 6:21 pm    Sujet du message: Répondre en citant

Salut Antoine,

Hum ! M'a l'air plutôt sympa ton SCbatchANT !
Je m'y colle très vite.

Merci pour l'info

Franck
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail Visiter le site web du posteur
Franck.Rouze



Inscrit le: 18 Oct 2006
Messages: 324
Localisation: Université Lille 1

MessagePosté le: Jeu Déc 08, 2011 7:06 pm    Sujet du message: Répondre en citant

Salut Antoine,

Super, ça marche nickel !

Franck
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Envoyer l'e-mail Visiter le site web du posteur
antoine.pourchez



Inscrit le: 05 Mai 2006
Messages: 859
Localisation: Kelis - Rouen

MessagePosté le: Jeu Déc 08, 2011 7:07 pm    Sujet du message: Génération automatique de documents Répondre en citant

Il y a le fichier build.xml à personnaliser. Ce dernier contient divers exemples qui doivent correspondre à ce que tu cherches.
ATTENTION : pense à activer le service « batch » dans ton SCENARIserver :
                Fichiers build.property, propriétés server.conf.batch=true et server.conf.batch.destPathRoot=${server.work.path}/batchGen
Toine



-------------------- m2f --------------------

(Message envoyé depuis le forum http://scenari-platform.org/forum)
http://scenari-platform.org/forum/viewtopic.php?p=10983#10983

-------------------- m2f --------------------



(Message envoyé depuis une mailing list SCENARIplatform)
_________________
Antoine POURCHEZ
Kelis
Revenir en haut
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    SCENARI Index du Forum -> Discussion générale Toutes les heures sont au format GMT
Page 1 sur 1

 
Sauter vers:  
Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum


Powered by phpBB 2.0.21-6 © 2001, 2007 phpBB Group
Traduction par : phpBB-fr.com