Problema

Questo articolo descrive come utilizzare il servizio Web Service nei processi per richiamare servizi che richiedono allegati di file come valori di input. Questo articolo descrive anche come specificare il formato in cui i file allegati sono restituiti dai servizi web LiveCycle ES.

Ad esempio, le variabili di servizio in ingresso e in uscita del tipo di documento sono rappresentate nei messaggi SOAP come allegati ai file. Per fornire i valori del documento di input, il messaggio SOAP include un file allegato. I messaggi di risposta includono allegati di file quando i servizi web hanno variabili di output del tipo documento.

I file possono essere inviate come allegati MIME o MTOM, testo codificato in base64, o utilizzando l'URL del file:

Nota: i servizi Web forniti da LiveCycle ES non supportano gli allegati MTOM.

Configurazione del messaggio di richiesta del servizio Web

Questa sezione descrive come configurare la proprietà Web Service Options dell'operazione Invoke Web Service. Si utilizza questa proprietà per configurare il messaggio di richiesta SOAP inviato al servizio Web:

Apertura della finestra di dialogo delle Impostazioni di WebService

Si utilizza la finestra di dialogo Impostazioni WebService Settings per configurare la proprietà Web Service Options dell'operazione Invoke Web Service.

Per aprire la finestra di dialogo Impostazioni WebService:

  1. Nel diagramma di processo, fai clic sull'operazione Invoke Web Service.
  2. Nella vista Proprietà, espandi la sezione Opzioni servizio Web e fai clic sul pulsante accanto alla casella Opzioni.

Specifica le proprietà dei servizi Web

È necessario fornire le seguenti informazioni sul servizio Web affinché il servizio Web Services recuperi la WSDL e invii e riceva messaggi SOAP:

URL WSDL: L'URL della definizione del servizio Web. Gli URL per le WSDL di processo hanno il seguente formato: http://[server name]:[port]/soap/services/[process name]?wsdl Per esempio, il seguente URL punta al WSDL per il processo chiamato echoDocument. L'application server viene eseguito sullo stesso computer su cui è installato LiveCycle Workbench ES: http://localhost:8080/soap/services/echoDocument?wsdl User Name: Il nome utente dell'account che è possibile utilizzare per accedere al servizio Web. È necessario fornire un nome utente solo se il servizio Web richiede l'autenticazione.

Password: la password che corrisponde al nome utente fornito per la proprietà Nome utente.

Porta: Il servizio che si desidera utilizzare, che è esposto attraverso la WSDL. Una WSDL può esporre più servizi.

URL di destinazione: l'URL che fornisce l'accesso al servizio Web. Per un processo chiamato echoDocument, l'URL è http://localhost:8080/soap/services/echoDocument.

strong>Operation: l'operazione di servizio Web da invocare. L'elenco viene compilato automaticamente quando si carica la definizione del servizio Web.

Time Out: la quantià di tempo che si desidera attendere per una risposta dal servizio Web prima di abbandonare la chiamata del servizio Web. Il valore fornito è in secondi.





Per specificare le proprietà del servizio Web

  1. Nella finestra di dialogo Impostazioni di WebService, fai clic sulla scheda Impostazioni.
  2. Nella casella URL WSDL, digita l'URL del servizio Web WSDL.
  3. Fai clic su Carica per recuperare la WSDL. Alcune proprietà della scheda Impostazioni vengono popolate automaticamente utilizzando le informazioni della WSDL.
  4. Se necessario, digita un nome utente e una password.
  5. Se il valore predefinito per Porta non è corretto, digitare un valore diverso.
  6. Se il valore predefinito di forTarget URL non è corretto, digitare un URL diverso.
  7. Selezionare l'operazione che si desidera richiamare.
  8. (Facoltativo) Specificare la quantità di tempo che trascorre prima che la richiesta di servizio si esaurisca.

Generazione della richiesta iniziale di SOAP

La finestra di dialogo Impostazioni WebService Settings genera automaticamente un messaggio SOAP per richiamare il servizio Web. Il messaggio si basa sulle proprietà del servizio Web specificate dall'utente. Il messaggio SOAP viene fornito in una casella di testo dove è possibile modificare il messaggio secondo le proprie necessità.

Per generare il messaggio SOAP iniziale:

  1. Nella finestra di dialogo Impostazioni WebService, fai clic sulla scheda Request (Richiesta).
  2. Fate clic su Genera.

Configurazione degli allegati

Il messaggio SOAP deve includere allegati di file per rappresentare i valori del documento dei parametri di input del servizio.

Il seguente codice XML mostra la struttura generale di un messaggio SOAP utilizzato per chiamare un servizio Web:

  • L'elemento Body contiene un elemento che ha lo stesso nome dell'operazione di servizio.
  • L'elemento operation_name contiene un elemento per ogni parametro di ingresso. I nomi di questi elementi sono gli stessi dei nomi dei parametri.
  • Il metodo utilizzato per allegare i file al messaggio SOAP (MIME, MTOM (esclusi i servizi Web LiveCycle ES), testo codificato base64 o URL di file) determina gli elementi che vengono utilizzati per identificare gli allegati dei file.

<soapenv:Envelope
		
	     xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/
		
	     xmlns:ser="http://foo.net/services"> 
		
	    <soapenv:Header /> 
		
	    <soapenv:Body> 
		
	       <ser:operation_name> 
		
	          <ser:parameter_name> 
		
	             <!-- elements for file attachments are placed here --> 
		
	          </ser:parameter_name> 
		
	       </ser:operation_name> 
		
	    </soapenv:Body> 
		
	 </soapenv:Envelope> 

Per i servizi Web dei processi attivati, il nome dell'operazione è sempre invoke (invocare). I nomi dei parametri sono i nomi delle variabili d'ingresso definite nel processo. La seguente tabella descrive come configurare le opzioni della finestra di dialogo Impostazioni di WebService per allegare i file. Per ogni metodo vengono forniti messaggi SOAP di esempio. Gli esempi sono messaggi di richiesta per il servizio Web di un processo con un parametro di input denominato documentIn. Il parametro documentIn è un valore del documento.

Tipo di allegato Descrizione Esempio di messaggio SOAP
MIME/MTOM

La scheda Allegato della finestra di dialogo Impostazioni di WebService viene utilizzata per specificare il valore del documento. Ogni riga della tabella rappresenta un file allegato.

Per configurare un allegato MIME:

  1. Fai clic sulla scheda Allegato,
  2. Fai clic su Load Attachment Part (carica parte allegato) per aggiungere righe alla tabella per gli allegati che devono essere specificati per l'operazione del servizio Web che si sta richiamando. Le colonne Part e Type (Parte e Tipo) sono popolate automaticamente con valori.

    Prendi nota dei valori nella colonna Part (Parte). Questi valori sono necessari nel passaggio 6 di questa procedura. La colonna Part (parte) contiene l'identificazione dell'allegato. Il servizio Web determina l'identificazione.

  3. Per ogni riga della tabella, fai clic sulla cella Allegato, quindi fai clic sul pulsante ... che appare per aprire XPath Builder. L'espressione XPath creata deve essere ricollegarsi alla posizione dei dati in cui viene salvato il valore del documento.
  4. Per ogni riga della tabella, fai clic sulla cella Content-Type e digita il tipo MIME del file che stai allegando, ad esempio application/pdf.
  5. Fai clic sulla scheda Request (Richiesta) e aggiungi un elemento attachmentID all'interno di ogni elemento che rappresenta il parametro che prende come valore l'allegato di un file.
  6. All'interno di ogni elemento attachmentID, digita il testo che appare nella colonna Part (Parte) per l'allegato nella scheda Allegato.
<soapenv:Envelope xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/ xmlns:ser="http://adobe.com/idp/services"> <soapenv:Header/> <soapenv:Body> <ser:invoke> <ser:documentIn> <ser:attachmentID> part0 </ser:attachmentID> </ser:documentIn> </ser:invoke> </soapenv:Body> </soapenv:Envelope>
testo codificato base64

Il tipo di contenuto MIME e la rappresentazione testuale del file con codifica base64 sono inclusi nel messaggio SOAP:

  • Il tipo di contenuto è specificato in un elemento contentType.
  • Il testo è specificato in un elemento binaryData.

Per ottenere il testo codificato base64, puoi usare la funzione XPath getDocContentBase64.

La seguente procedura richiede che il testo codificato base-64 che rappresenta il valore del documento sia memorizzato in una variabile di processo.

Per configurare un allegato di testo codificato base-64:

  1. Fai clic sulla scheda Request (Richiedi).
  2. Aggiungi i seguenti elementi all'interno dell'elemento che rappresenta il parametro che prende il valore del documento:
    • contentType
    • binaryData
  3. All'interno dell'elemento contentType, digita il tipo di contenuto o aggiungi un'espressione XPath che si risolve in una variabile stringa che contiene il tipo di contenuto.
  4. All'interno dell'elemento binaryData, aggiungi un'espressione XPath che si risolve in una variabile stringa che contiene il testo codificato base64 che rappresenta il documento.
<soapenv:Envelope xmlns:soapenv=http://schemas.xmlsoap.org/soap/envelope/ xmlns:ser="http://adobe.com/idp/services"> <soapenv:Header/> <soapenv:Body> <ser:invoke> <ser:documentIn> <ser:contentType> {$/process_data/@contentType$} </ser:contentType> <ser:binaryData> {$/process_data/@docBase64$} </ser:binaryData> </ser:documentIn> </ser:invoke> </soapenv:Body> </soapenv:Envelope>
URL del file

L'URL del file è specificato in un elemento remoteURL.

Per configurare l'allegato URL di un file:

  1. Fai clic sulla scheda Request (Richiedi).
  2. Aggiungi un elemento remoteURL all'interno dell'elemento che rappresenta il parametro che prende il valore del documento.
  3. All'interno dell'elemento remoteURL, digita l'URL del file o aggiungi un'espressione XPath che si risolve in una variabile di stringa che contiene l'URL.
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ser="http://adobe.com/idp/services"> <soapenv:Header/> <soapenv:Body> <ser:invoke> <ser:documentIn> <ser:remoteURL> http://help.adobe.com/en_US/livecycle/es/overview.pdf </ser:remoteURL> </ser:documentIn> </ser:invoke> </soapenv:Body> </soapenv:Envelope>

Configurazione dei messaggi di risposta del servizio Web LiveCycle ES

Quando un servizio Web LiveCycle ES restituisce un valore di un documento, il valore è un allegato al messaggio di risposta SOAP. Il comportamento predefinito dei servizi web LiveCycle ES è quello di memorizzare il valore del documento risultante sul server LiveCycle ES e di includere l'URL del documento nel messaggio di risposta. Tuttavia, se il messaggio di richiesta SOAP includeva un allegato MIME, la risposta utilizza anche un allegato MIME per restituire i valori del documento.

È possibile sovrascrivere il comportamento predefinito e specificare il metodo che i servizi Web LiveCycle ES utilizzano per restituire gli allegati dei documenti. I file possono essere allegati ai messaggi di risposta SOAP come allegati MIME, testo codificato in base64, o usando l'URL del file. Per specificare il modo in cui i file sono allegati ai messaggi di risposta, è necessario aggiungere uno dei valori della seguente tabella all'URL di destinazione specificato nella scheda Impostazioni della finestra di dialogo Impostazioni di WebService:

Tipo di allegato Testo da allegare
testo codificato base64 ?blob=base64
MIME ?blob=mime
URL del file ?blob=http

Per esempio, il seguente valore per l'URL di destinazione fa sì che il servizio Web di un processo chiamato echoDocument alleghi file ai messaggi di risposta SOAP come testo codificato in base64:

http://localhost:8080/soap/services/echoDocument?blob=base64

Per sovrascrivere il comportamento predefinito dell'allegato al messaggio di risposta SOAP:

  1. Nella finestra di dialogo Impostazioni WebService, fai clic sulla scheda Impostazioni .
  2. Nella casella Target URL, aggiungi uno dei valori all'URL:
    • ?blob=base64
    • ?blob=mime
    • ?blob=http

Questo prodotto è concesso in licenza in base alla licenza di Attribuzione-Non commerciale-Condividi allo stesso modo 3.0 Unported di Creative Commons.  I post su Twitter™ e Facebook non sono coperti dai termini di Creative Commons.

Note legali   |   Informativa sulla privacy online