RestfulWebServiceWF

Utilisez ce flot de travaux pour voir comment une unité d'entrée de service Web REST, une étape CallRESTService et une notification de service Web REST échangent des données à l'aide des services Web REST.

L'unité d'entrée de service Web REST pour le flot de travaux RestfulWebServiceSample récupère les travaux JSON depuis les services Web RICOH ProcessDirector qui simulent un site Web de commande de livres. L'unité d'entrée envoie les travaux au flot de travaux RestfulWebServiceWF.

Lorsqu'un travail JSON entre dans la branche Parent du flot de travaux, l'étape SetJobPropsFromTextFile attribue des valeurs aux propriétés Nom du client et Personnalisé1.

L'étape ConvertJSONToXML convertit le travail en XML.

L'étape ApplyXSLTransform utilise la feuille de style XSLT orderToOverrides.xslt pour convertir 2 éléments XML en 2 propriétés de travail RICOH ProcessDirector dans un fichier substitution. L'étape place le fichier de substitutions dans le répertoire spoule du travail. RICOH ProcessDirector utilise les valeurs du fichier de substitutions pour définir les valeurs des propriétés du travail.

Élément XML Propriété du travail
orderId Job.Info.Attr3
customername Job.CustomerName

L'étape AssignJobValues définit la valeur de la propriété Nom du travail.

L'étape CallRESTService émet un appel GET vers l'un des exemples de services Web qui simule le site Web de commande de livres. Le service Web renvoie les informations sur la fiche de travail JSON pour la commande à RICOH ProcessDirector.

L'étape ConvertJSONToXML convertit les informations sur la fiche de travail JSON en XML.

L'étape CreateJobsFromXML utilise l'expression XPath //JobTicket pour analyser les informations de la fiche de travail XML. L'étape identifie 2 fiches de travail et crée 2 travaux enfants. Cette étape soumet les deux travaux enfant au flot de travaux RestfulWebServiceWF.

La règle appliquée au connecteur [2] Enfant détermine si les travaux sont des travaux enfants en vérifiant si le numéro du travail comporte une décimale. Le connecteur envoie les travaux enfants via la branche Enfant du flot de travaux.

Le travail JSON initial se poursuit via la branche Parent jusqu'à l'étape RunHotFolderApplication. Cette étape place le travail JSON dans un dossier prioritaire.

Un des exemples de services Web interroge le dossier prioritaire pour savoir s'il comporte des travaux. Le service Web traite chaque travail JSON lorsqu'il reçoit une requête provenant de la notification RestfulWebServiceSampleNotify.

L'étape ApplyXSLTransform2 utilise la feuille de style XSLT jobticketToOverrides.xslt pour convertir 6 éléments XML pour chaque travail enfant en propriétés de travail RICOH ProcessDirector dans un fichier substitution :

Élément XML Propriété du travail
file Job.Info.Attr2
itemnumber Job.Info.Attr1
type Job.Info.Attr4
title Job.Info.Attr5
copies Job.Copies
media Job.Media

L'étape DownloadFile télécharge les fichiers Brochure.pdf et Cover.pdf.

L'étape AssignJobValues2 définit les valeurs de 3 propriétés de travaux, notamment Requested printer.

Les étapes OptimizePDF, CountPages, CreatePageRanges et PrintJobs traitent et impriment les travaux enfants.

Lorsque chaque travail d'impression atteint l'étape RetainCompletedJobs, la notification de service Web RestfulWebServiceSampleNotify émet un appel POST vers l'un des exemples de service Web. Le service Web attend que tous les travaux enfant du travail JSON initial soient à l'état Conservé. Il crée ensuite un fichier PDF contenant le numéro de travail et le numéro d'élément de chaque fiche de travail de la commande, par exemple :

10000001.2 avec le numéro d'élément 278955095 a été traité10000001.1 avec le numéro d'élément 913895452 a été traité

Le service Web place le fichier PDF dans le dossier prioritaire de récupération pour l'étape RunHotFolderApplication.

L'étape RunHotFolderApplication interroge le dossier prioritaire, recherche le fichier PDF et fait passer le travail à l'étape suivante.

L'étape AssignJobValues définit la valeur de la propriété Flot de données en entrée sur PDF et fait passer le travail PDF à l'étape RetainCompletedJobs.

Vous pouvez sélectionner le travail PDF dans la table Travaux et l'afficher pour vérifier que les deux travaux enfants ont bien été traités.

Pour consulter un exemple incluant des exemples de données, reportez-vous à la tâche connexe d'exécution du flot de travaux RestfulWebServiceWF.

Phases et étapes

L'illustration montre les étapes dans chacune des phases de l'exemple de flot de travaux.