AEM 6.4 ha raggiunto la fine del supporto esteso e questa documentazione non viene più aggiornata. Per maggiori dettagli, consulta la nostra periodi di assistenza tecnica. Trova le versioni supportate qui.
Il servizio AEM Forms esegue il rendering dei PDF forms interattivi sui dispositivi client, in genere nei browser web, per raccogliere informazioni dagli utenti. Un modulo PDF interattivo si basa su una struttura del modulo generalmente salvata come file XDP e creata in Designer. A partire da AEM Forms, puoi trasmettere un com.adobe.idp.Document
oggetto contenente la struttura del modulo al servizio Forms. Il servizio Forms esegue quindi il rendering della struttura del modulo che si trova nel com.adobe.idp.Document
oggetto.
Il vantaggio di passare un com.adobe.idp.Document
oggetto del servizio Forms: altre operazioni del servizio restituiscono un com.adobe.idp.Document
istanza. Cioè, puoi ottenere un com.adobe.idp.Document
istanza da un'altra operazione di servizio ed esegui il rendering. Ad esempio, si supponga che un file XDP sia memorizzato in un nodo Content Services (obsoleto) denominato /Company Home/Form Designs
, come illustrato nella figura seguente.
È possibile recuperare in modo programmatico il file Loan.xdp da Content Services (obsoleto) (obsoleto) e passare il file XDP al servizio Forms all'interno di un com.adobe.idp.Document
oggetto.
Per ulteriori informazioni sul servizio Forms, vedi Riferimento servizi per AEM Forms.
Per passare un documento ottenuto da Content Services (obsoleto) (obsoleto) al servizio Forms, esegui le seguenti attività:
Includi file di progetto
Includi i file necessari nel progetto di sviluppo. Se stai creando un'applicazione client utilizzando Java, includi i file JAR necessari. Se utilizzi i servizi web, includi i file proxy.
Creare un oggetto Forms e un oggetto API client di gestione dei documenti
Prima di eseguire un’operazione API del servizio Forms a livello di programmazione, crea un oggetto API client Forms. Inoltre, poiché questo flusso di lavoro recupera un file XDP da Content Services (obsoleto), crea un oggetto API di gestione dei documenti.
Recupera la struttura del modulo da Content Services (obsoleto)
Recupera il file XDP da Content Services (obsoleto) utilizzando l’API Java o del servizio Web. Il file XDP viene restituito all'interno di un com.adobe.idp.Document
istanza (o BLOB
(se utilizzi servizi web). È quindi possibile passare il com.adobe.idp.Document
al servizio Forms.
Rendering di un modulo PDF interattivo
Per eseguire il rendering di un modulo interattivo, passare il com.adobe.idp.Document
istanza restituita da Content Services (obsoleto) al servizio Forms.
Puoi trasmettere un com.adobe.idp.Document
che contiene la struttura del modulo al servizio Forms. Due nuovi metodi denominati renderPDFForm2
e renderHTMLForm2
accettare com.adobe.idp.Document
oggetto contenente una struttura del modulo.
Eseguire un’azione con il flusso di dati del modulo
A seconda del tipo di applicazione client, è possibile scrivere il modulo in un browser Web client o salvarlo come file PDF. In genere, un’applicazione basata sul Web scrive il modulo nel browser web. Tuttavia, in genere, un’applicazione desktop salva il modulo come file PDF.
Consulta anche
Inclusione dei file libreria Java di AEM Forms
Impostazione delle proprietà di connessione
Avvio rapido API di Forms Service
Passa un documento ottenuto da Content Services (obsoleto) utilizzando il servizio Forms e l’API Content Services (obsoleto):
Includi file di progetto
Includi file JAR client, come adobe-forms-client.jar e adobe-contentservices-client.jar, nel percorso di classe del progetto Java.
Creare un oggetto Forms e un oggetto API client di gestione dei documenti
ServiceClientFactory
oggetto contenente le proprietà di connessione. (Vedi Impostazione delle proprietà di connessione.)FormsServiceClient
utilizzando il relativo costruttore e passando ServiceClientFactory
oggetto.DocumentManagementServiceClientImpl
utilizzando il relativo costruttore e passando ServiceClientFactory
oggetto.Recupera la struttura del modulo da Content Services (obsoleto)
Richiama il DocumentManagementServiceClientImpl
dell’oggetto retrieveContent
e passare i seguenti valori:
SpacesStore
. Questo valore è un parametro obbligatorio./Company Home/Form Designs/Loan.xdp
). Questo valore è un parametro obbligatorio.La retrieveContent
restituisce un CRCResult
oggetto che contiene il file XDP. Ottenere un com.adobe.idp.Document
richiamando la CRCResult
dell’oggetto getDocument
metodo .
Rendering di un modulo PDF interattivo
Richiama il FormsServiceClient
dell’oggetto renderPDFForm2
e passare i seguenti valori:
com.adobe.idp.Document
oggetto contenente la struttura del modulo recuperata da Content Services (obsoleto).com.adobe.idp.Document
oggetto contenente i dati da unire al modulo. Se non si desidera unire i dati, passare un valore vuoto com.adobe.idp.Document
oggetto.PDFFormRenderSpec
oggetto che memorizza le opzioni di esecuzione. Questo valore è un parametro facoltativo ed è possibile specificare null
se non si desidera specificare le opzioni di esecuzione.URLSpec
oggetto che contiene valori URI. Questo valore è un parametro facoltativo ed è possibile specificare null
.java.util.HashMap
oggetto che memorizza gli allegati di file. Questo valore è un parametro facoltativo ed è possibile specificare null
se non si desidera allegare file al modulo.La renderPDFForm
restituisce un FormsResult
oggetto che contiene un flusso di dati del modulo che deve essere scritto nel browser Web client.
Eseguire un’azione con il flusso di dati del modulo
com.adobe.idp.Document
richiamando l'oggetto FormsResult
oggetto ‘s getOutputContent
metodo .com.adobe.idp.Document
richiamandone l'oggetto getContentType
metodo .javax.servlet.http.HttpServletResponse
tipo di contenuto dell’oggetto richiamandone il tipo setContentType
e passare il tipo di contenuto com.adobe.idp.Document
oggetto.javax.servlet.ServletOutputStream
oggetto utilizzato per scrivere il flusso di dati del modulo nel browser Web client richiamando il javax.servlet.http.HttpServletResponse
dell’oggetto getOutputStream
metodo .java.io.InputStream
richiamando l'oggetto com.adobe.idp.Document
dell’oggetto getInputStream
metodo .InputStream
dell’oggetto read
metodo . Passa l'array di byte come argomento.javax.servlet.ServletOutputStream
dell’oggetto write
per inviare il flusso di dati del modulo al browser Web client. Passa l'array di byte al write
metodo .Consulta anche
Avvio rapido (modalità SOAP): Trasmissione di documenti al servizio Forms tramite l’API Java
Inclusione dei file libreria Java di AEM Forms
Impostazione delle proprietà di connessione
Passa un documento ottenuto da Content Services (obsoleto) utilizzando il servizio Forms e l’API Content Services (obsoleto) (servizio Web):
Includi file di progetto
Creare un progetto Microsoft .NET che utilizza MTOM. Poiché questa applicazione client richiama due servizi AEM Forms, crea due riferimenti al servizio. Utilizza la seguente definizione WSDL per il riferimento al servizio associato al servizio Forms: http://localhost:8080/soap/services/FormsService?WSDL&lc_version=9.0.1
.
Utilizzare la seguente definizione WSDL per il riferimento al servizio associato al servizio Document Management: http://localhost:8080/soap/services/DocumentManagementService?WSDL&lc_version=9.0.1
.
Perché BLOB
il tipo di dati è comune a entrambi i riferimenti di servizio e definisce completamente il BLOB
tipo di dati quando viene utilizzato. All'avvio rapido del servizio Web corrispondente, BLOB
le istanze sono completamente qualificate.
Sostituisci localhost
* con l’indirizzo IP del server che ospita AEM Forms. *
Creare un oggetto Forms e un oggetto API client di gestione dei documenti
Crea un FormsServiceClient
utilizzando il relativo costruttore predefinito.
Crea un FormsServiceClient.Endpoint.Address
utilizzando System.ServiceModel.EndpointAddress
costruttore. Passa un valore stringa che specifica il WSDL al servizio AEM Forms (ad esempio, http://localhost:8080/soap/services/FormsService?WSDL
). Non è necessario utilizzare il lc_version
attributo. Questo attributo viene utilizzato quando si crea un riferimento a un servizio.)
Crea un System.ServiceModel.BasicHttpBinding
ottenendo il valore del FormsServiceClient.Endpoint.Binding
campo . Imposta il valore restituito su BasicHttpBinding
.
Imposta la System.ServiceModel.BasicHttpBinding
dell’oggetto MessageEncoding
campo a WSMessageEncoding.Mtom
. Questo valore assicura che venga utilizzato MTOM.
Abilita l’autenticazione HTTP di base eseguendo le seguenti attività:
FormsServiceClient.ClientCredentials.UserName.UserName
.FormsServiceClient.ClientCredentials.UserName.Password
.HttpClientCredentialType.Basic
al campo BasicHttpBindingSecurity.Transport.ClientCredentialType
.Assegna il valore costante BasicHttpSecurityMode.TransportCredentialOnly
al campo BasicHttpBindingSecurity.Security.Mode
.
Ripeti questi passaggi per DocumentManagementServiceClient
* client di servizio. *
Recupera la struttura del modulo da Content Services (obsoleto)
Recupera il contenuto richiamando il DocumentManagementServiceClient
dell’oggetto retrieveContent
e passando i seguenti valori:
SpacesStore
. Questo valore è un parametro obbligatorio./Company Home/Form Designs/Loan.xdp
). Questo valore è un parametro obbligatorio.BLOB
parametro di output che memorizza il contenuto. Puoi utilizzare questo parametro di output per recuperare il contenuto.ServiceReference1.MyMapOf_xsd_string_To_xsd_anyType
parametro di output che memorizza gli attributi di contenuto.CRCResult
parametro di output. Invece di utilizzare questo oggetto, è possibile utilizzare il BLOB
parametro di output per ottenere il contenuto.Rendering di un modulo PDF interattivo
Richiama il FormsServiceClient
dell’oggetto renderPDFForm2
e passare i seguenti valori:
BLOB
oggetto contenente la struttura del modulo recuperata da Content Services (obsoleto).BLOB
oggetto contenente i dati da unire al modulo. Se non si desidera unire i dati, passare un valore vuoto BLOB
oggetto.PDFFormRenderSpec
oggetto che memorizza le opzioni di esecuzione. Questo valore è un parametro facoltativo ed è possibile specificare null
se non si desidera specificare le opzioni di esecuzione.URLSpec
oggetto che contiene valori URI. Questo valore è un parametro facoltativo ed è possibile specificare null
.Map
oggetto che memorizza gli allegati di file. Questo valore è un parametro facoltativo ed è possibile specificare null
se non si desidera allegare file al modulo.FormsResult
parametro di output utilizzato per memorizzare il modulo interattivo di PDF .
La renderPDFForm2
restituisce un FormsResult
oggetto contenente il modulo interattivo di PDF.
Eseguire un’azione con il flusso di dati del modulo
BLOB
oggetto che contiene i dati del modulo ottenendo il valore FormsResult
dell’oggetto outputContent
campo .System.IO.FileStream
richiamando il relativo costruttore. Passa un valore stringa che rappresenta la posizione del file del documento PDF interattivo e la modalità di apertura del file.BLOB
oggetto recuperato dal FormsResult
oggetto. Compilare l’array di byte ottenendo il valore del BLOB
dell’oggetto MTOM
membro dati.System.IO.BinaryWriter
richiamando il relativo costruttore e passando System.IO.FileStream
oggetto.System.IO.BinaryWriter
dell’oggetto Write
e passare l'array di byte.Consulta anche
Richiamo di AEM Forms tramite MTOM