Esecuzione del flusso di lavoro di esempio per elaborare ordini recuperati dai servizi Web REST
Questo flusso di lavoro utilizza questi oggetti e file di esempio:
- Flusso di lavoro: RestfulServizioWebFL
-
Dispositivo di input: RestfulServizioWebEsempio
Il dispositivo di input esegue una chiamata GET per recuperare gli ordini JSON da un servizio Web REST di esempio su
http://localhost:15080/restapi/1.0/sample/order
-
Notifica: RestfulServizioWebNotificaEsempio
La notifica esegue una chiamata POST ad un servizio Web di esempio su
http://localhost:15080/restapi/1.0/sample/completeJobTicket
-
Ordini JSON
Un ordine viene recuperato ogni 30 secondi dal servizio Web di esempio.
Contenuto dell'ordine di esempio:
{"Order": {"orderId": "ORDnumber", "customername": "Ricoh"}}
Ogni ordine contiene un numero generato a caso, ad esempio: 1238875463.
-
File di stampa:
Brochure.pdf
eCover.pdf
Questi file vengono scaricati localmente da
http://localhost:15080/restapi/
-
File del foglio di stile XSLT:
-
orderToOverrides.xslt
-
jobticketToOverrides.xslt
I file sono nella directory
restsample
:/aiw/aiw1/testfiles/restsample
(Linux)C:\aiw\aiw1\testfiles\restsample
(Windows)
-
-
File PDF di notifica
Un file PDF di notifica viene generato per ciascun ordine completato. Ogni file viene chiamato ORDER-ORDnumero, ad esempio: ORDER-ORD1238875463.
-
La proceduraCallRESTService esegue una chiamata GET per recuperare i ticket lavoro JSON da un servizio Web REST di esempio su
http://localhost:15080/restapi/1.0/sample/jobTicket
- Nota:
-
I servizi Web di esempio sono disponibili localmente. Restituiscono dati di esempio in risposta a richieste specifiche trasmesse dal dispositivo di input di esempio, notifica e procedura CallRESTService. I servizi Web non supportano altre richieste.
-
Gli oggetti e i file di esempio, incluso il flusso di lavoro RestfulServizioWebFL, sono installati con la funzione Attivazione servizi Web.
Per eseguire il flusso di lavoro di esempio:
- Fare clic sulla scheda Principale.
- Nel portlet Stampanti, fare clic con il tasto destro del mouse sulla stampante Esempio e selezionare Abilita.
- Nel portlet del Dispositivo di input, fare clic con il tasto destro del mouse sul
dispositivo di input del servizio Web REST RestfulEsempioServizioWeb e selezionare Abilita e Connetti.
Nella tabella lavori viene visualizzato un lavoro.
- Fare clic con il tasto destro del mouse sul dispositivo di input RestfulEsempioServizioWeb e selezionare Disabilita.
- Fare clic nuovamente con il tasto destro del mouse sul dispositivo di input e selezionare
Disconnetti.Nota: Il dispositivo di input di esempio esegue un polling per gli ordini ogni 30 secondi e recupera un lavoro JSON. Se il dispositivo di input non viene disabilitato e disconnesso, nella tabella lavori compare un nuovo lavoro ogni 30 secondi.
Ogni volta che il dispositivo di input RestfulEsempioServizioWeb recupera un lavoro JSON:
-
Il lavoro viene inviato mediante la sezione Principale del flusso di lavoro.
-
La procedura ImposProprDaFile di Testo imposta la proprietà Nome Cliente su RicohSample e la proprietà Cliente 1 su RicohCustom.
-
La procedura ConvertiJSONInXML converte il lavoro in XML.
-
La funzione ApplicaTransformXSL usa il foglio di stile XSLT
orderToOverrides.xslt
per convertire 2 elementi XML in 2 RICOH ProcessDirector proprietà di lavoro in un file di sovrascrittura:Elemento XML Proprietà di lavoro orderId Job.Info.Attr3 customername Job.CustomerName Contenuti di un esempio di file di sovrascrittura:
Job.Info.Attr3=ORD1238875463 Job.CustomerName=Ricoh
La procedura posiziona il file di sovrascrittura nella directory di spool per il lavoro. RICOH ProcessDirector utilizza i valori nel file di sovrascrittura per impostare i valori delle proprietà per il lavoro.
-
La funzione AssegnValoriLavoro imposta la proprietà relativa al valore del Nome lavoro su ORDER-${Job.Info.Attr3}, ad esempio: ORDER-ORD1238875463.
-
La procedura CallRESTService esegue una chiamata GET ad uno dei servizi Web di esempio che simulano il sito Web per ordinare libri. La procedura specifica l'ID ordine in quanto valore della proprietà dei Parametri di richiesta: orderId:${Job.Info.Attr3}.
Il servizio Web restituisce le informazioni di ticket di lavoro JSON per l'ordine a RICOH ProcessDirector.
Contenuti di informazioni di ticket di lavoro di esempio:
{"JobTicket": [{ "itemnumber": "1182563839", "copies":"4","media" : "Letter Plain","file" : "http://localhost:15080/restapi/Brochure.pdf","type" : "Brochure","title" : "RPDBestSeller"}, { "itemnumber": "1934194376", "copies":"4","media" : "Letter Preprinted","file" : "http://localhost:15080/restapi/Cover.pdf","type" : "Cover" ,"title" : "RPDBestSeller" }]}
-
La procedura ConvertiJSONInXML converte le informazioni del ticket di lavoro JSON in XML.
-
L'operazione CreateJobsFromXML utilizza l'espressione XPath //JobTicket per analizzare le informazioni del ticket di lavoro XML. La procedura rileva 2 ticket di lavoro e crea 2 lavori secondari.
Contenuti di lavori secondari di esempio:
<?xml version="1.0" encoding="UTF-8"?><JobTicket><copies>4</copies><file>http://localhost:15080/restapi/Brochure.pdf</file><itemnumber>2112076335</itemnumber><media>Letter Plain</media><type>Brochure</type><title>RPDBestSeller</title></JobTicket><?xml version="1.0" encoding="UTF-8"?><JobTicket><copies>4</copies><file>http://localhost:15080/restapi/Cover.pdf</file><itemnumber>1418780325</itemnumber><media>Letter Preprinted</media><type>Cover</type><title>RPDBestSeller</title></JobTicket>
La procedura invia i 2 lavori secondari al flusso di lavoro RestfulServizioWebFL.
La regola sul connettore [2] Secondario determina se i lavori sono secondari controllando la presenza o meno di un punto decimale nel numero di lavoro. Il connettore invia i lavori secondari mediante la sezione Secondario del flusso di lavoro.
Il lavoro JSON originario continua attraverso la sezione Principale fino alla procedura AttivaApplicazioneHotFolder. Tale procedura inserisce il lavoro JSON in una hot folder:
-
/aiw/aiw1/testfiles/restsample/sending
(Linux) -
C:\aiw\aiw1\testfiles\restsample\sending
(Windows)
Uno dei servizi web di esempio che simula il sito web per l'ordinazione di libri esegue il pooling delle hot folders per i lavori. Il servizio Web elabora ciascun lavoro JSON quando riceve una richiesta dalla notifica RestfulServizioWebNotificaEsempio. Per ulteriori informazioni, fare riferimento agli elementi contenuti nell'elenco relativo alla procedura ConservLavoriCompletati.
-
-
La procedura ApplicaTrasformazioneXSL2 utilizza il foglio di stile XSLT
ticketlavorePerSovrascrittura.xslt
per convertire 6 elementi XML per ciascun lavoro secondario in proprietà di lavoro RICOH ProcessDirector in un file di sovrascrittura:Elemento XML Proprietà di lavoro file Job.Info.Attr2 itemnumber Job.Info.Attr1 type Job.Info.Attr4 title Job.Info.Attr5 copies Job.Copies media Job.Media Contenuti di un esempio di file di sovrascrittura:
Job.Info.Attr2=http://localhost:15080/restapi/Brochure.pdf Job.Info.Attr1=1182563839 Job.Info.Attr4=Brochure Job.Info.Attr5=RPDBestSeller Job.Copies=4 Job.Media=Letter Preprinted
-
La procedura DownloadFile scarica sia il
Cover.pdf
sia ilBrochure.pdf
file dahttp://localhost:15080/restapi/
impostando il valore della proprietà URL for download file su ${Job.Info.Attr2}. -
La procedura AssegnJobValues2 stabilisce il valore di 3 proprietà di lavoro:
-
Stampante richiesta: Esempio
-
Flusso di dati input: PDF
-
Nome lavoro: ${Job.Info.Attr5}-${Job.Info.Attr4}
TI nomi dei lavori secondari per il file
Brochure.pdf
e per il fileCover.pdf
sono ora RPDBestSeller-Brochure e RPDBestSeller-Cover. -
-
Le procedure OttimizzazionePDF, ConteggioPagine, CreazionePageRanges, e StampaLavori elaborano e stampano i lavori secondari RPDBestSeller-Brochure e RPDBestSeller-Cover sulla stampante Esempio.
-
Quando ciascun lavoro secondario di stampa arriva alla procedura ConservaLavoriCompletati la notifica del servizio web RestfulServizioWebNotificaEsempio esegue una chiamata POST a uno dei servizi web di esempio
http://localhost:15080/restapi/1.0/sample/completeJobTicket
. Il valore della proprietà Richiesta parametri è:jobTicket:${Job.Info.Attr1} jobId:${Job.ID}
Il servizio Web attende fino a quando tutti i lavori secondari del lavoro JSON originario sono nello stato lavoro Conservato. Il servizio Web crea quindi un file PDF con il numero di lavoro e il numero di elemento per ciascun ticket di lavoro nell'ordine. Ad esempio:
10000001.2 with item number 278955095 has been processed10000001.1 with item number 913895452 has been processed
Il servizio Web inserisce il file PDF nella hot folder di recupero per la procedura AttivaApplicazioneHotFolder :
-
/aiw/aiw1/testfiles/restsample/retrieval
(Linux) -
C:\aiw\aiw1\testfiles\restsample\retrieval
(Windows)
La procedura AttivaApplicazioneHotFolder esegue un polling della hot folder, identifica il file PDF e invia il lavoro alla procedura successiva.
-
-
L'operazione AssignJobValues imposta il valore della proprietà Flusso di dati di input su PDF e invia il lavoro PDF all'operazione RetainCompletedJobs.
-
- Nella tabella lavori, fare di nuovo clic con il tasto destro su ORDER-ORDnumero lavoro e selezionare Visualizza.
Nel visualizzatore viene visualizzato il file PDF. L'informazione contenuta nel file PDF conferma che 2 lavori secondari sono stati elaborati.