Quando si esegue il rendering di un modulo, è possibile impostare opzioni di esecuzione che ottimizzano le prestazioni del servizio Forms. Un'altra attività che è possibile eseguire per migliorare le prestazioni del servizio Forms è quella di memorizzare i file XDP nell'archivio. Tuttavia, questa sezione non descrive come eseguire questa attività. (Vedere Richiamo di un servizio utilizzando una libreria client Java.)
Per ulteriori informazioni sul servizio Forms, consulta Riferimento servizi per AEM Forms.
Per ottimizzare le prestazioni del servizio Forms durante il rendering di un modulo, eseguire le operazioni seguenti:
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, assicurati di includere i file proxy.
Creare un oggetto API client Forms
Prima di poter eseguire programmaticamente un’operazione API client del servizio Forms, è necessario creare un client di servizio Forms. Se utilizzi l’API Java, crea un oggetto FormsServiceClient
. Se utilizzi l’API del servizio Web Forms, crea un oggetto FormsService
.
Impostare le opzioni di runtime delle prestazioni
Per migliorare le prestazioni del servizio Forms, puoi impostare le seguenti opzioni di esecuzione delle prestazioni:
true
, che consente di eseguire il rendering dei moduli senza informazioni sullo stato. Le informazioni sullo stato sono necessarie se si desidera eseguire il rendering di un modulo interattivo per un utente finale che quindi immette informazioni nel modulo e lo invia nuovamente al servizio Forms. Il servizio Forms esegue quindi un’operazione di calcolo ed esegue il rendering del modulo per l’utente con i risultati visualizzati nel modulo. Se un modulo senza informazioni sullo stato viene inviato nuovamente al servizio Forms, sono disponibili solo i dati XML e i calcoli sul lato server non vengono eseguiti.Rendering del modulo
Per eseguire il rendering del modulo dopo aver impostato le opzioni di prestazioni, utilizzare la stessa logica applicativa del rendering di un modulo senza opzioni di prestazioni.
Scrivere il flusso di dati del modulo sul browser Web client
Dopo il rendering di un modulo da parte del servizio Forms, restituisce un flusso di dati del modulo che è necessario scrivere nel browser Web client. Una volta scritto nel browser Web client, il modulo è visibile all’utente.
Consulta anche
Inclusione dei file libreria Java di AEM Forms
Impostazione delle proprietà di connessione
Avvio rapido API di Forms Service
Rendering di PDF forms interattivi
Creazione di applicazioni Web per il rendering di Forms
Eseguire il rendering di un modulo con prestazioni ottimizzate utilizzando l’API Forms (Java):
Includi file di progetto
Includi file JAR client, come adobe-forms-client.jar, nel percorso di classe del progetto Java.
Creare un oggetto API client Forms
ServiceClientFactory
contenente le proprietà di connessione.FormsServiceClient
utilizzando il relativo costruttore e passando l'oggetto ServiceClientFactory
.Impostare le opzioni di runtime delle prestazioni
PDFFormRenderSpec
utilizzando il relativo costruttore.setCacheEnabled
dell’oggetto true
e passando PDFFormRenderSpec
.PDFFormRenderSpec
dell’oggetto setLinearizedPDF
e passando true.
Rendering del modulo
Richiama il metodo renderPDFForm
dell'oggetto FormsServiceClient
e passa i seguenti valori:
com.adobe.idp.Document
contenente i dati da unire al modulo. Se non si desidera unire i dati, passare un oggetto com.adobe.idp.Document
vuoto.PDFFormRenderSpec
che memorizza le opzioni di esecuzione per migliorare le prestazioni.URLSpec
contenente valori URI richiesti dal servizio Forms.java.util.HashMap
che memorizza gli allegati di file. Questo è un parametro facoltativo ed è possibile specificare null
se non si desidera allegare file al modulo.Il metodo renderPDFForm
restituisce un oggetto FormsResult
contenente un flusso di dati del modulo che deve essere scritto nel browser Web client.
Scrivere il flusso di dati del modulo sul browser Web client
javax.servlet.ServletOutputStream
utilizzato per inviare un flusso di dati del modulo al browser Web client.com.adobe.idp.Document
richiamando il metodo FormsResult
object ‘s getOutputContent
.java.io.InputStream
richiamando il metodo com.adobe.idp.Document
dell'oggetto getInputStream
.read
dell'oggetto InputStream
e passando la matrice di byte come argomento.write
dell’oggetto javax.servlet.ServletOutputStream
per inviare il flusso di dati del modulo al browser Web client. Passa l'array di byte al metodo write
.Consulta anche
Avvio rapido (modalità SOAP): Ottimizzazione delle prestazioni tramite l’API Java
Inclusione dei file libreria Java di AEM Forms
Impostazione delle proprietà di connessione
Eseguire il rendering di un modulo con prestazioni ottimizzate utilizzando l’API Forms (servizio Web):
Includi file di progetto
Creare un oggetto API client Forms
Creare un oggetto FormsService
e impostare i valori di autenticazione.
Impostare le opzioni di runtime delle prestazioni
PDFFormRenderSpec
utilizzando il relativo costruttore.setCacheEnabled
dell’oggetto PDFFormRenderSpec
e passando true.setStandAlone
dell’oggetto PDFFormRenderSpec
e specificando true.setLinearizedPDF
dell’oggetto PDFFormRenderSpec
e passando true.Rendering del modulo
Richiama il metodo renderPDFForm
dell'oggetto FormsService
e passa i seguenti valori:
BLOB
contenente i dati da unire al modulo. Se non desideri unire i dati, passa null
.PDFFormRenderSpecc
che memorizza le opzioni di esecuzione.URLSpec
contenente valori URI richiesti dal servizio Forms.java.util.HashMap
che memorizza gli allegati di file. Questo è un parametro facoltativo ed è possibile specificare null
se non si desidera allegare file al modulo.com.adobe.idp.services.holders.BLOBHolder
vuoto compilato dal metodo . Viene utilizzato per memorizzare il modulo PDF di cui è stato effettuato il rendering.javax.xml.rpc.holders.LongHolder
vuoto compilato dal metodo . Questo argomento memorizza il numero di pagine nel modulo.javax.xml.rpc.holders.StringHolder
vuoto compilato dal metodo . (Questo argomento memorizza il valore delle impostazioni internazionali).com.adobe.idp.services.holders.FormsResultHolder
vuoto che conterrà i risultati dell'operazione.Il metodo renderPDFForm
popola l'oggetto com.adobe.idp.services.holders.FormsResultHolder
passato come ultimo valore dell'argomento con un flusso di dati del modulo che deve essere scritto nel browser Web client.
Scrivere il flusso di dati del modulo sul browser Web client
FormResult
ottenendo il valore del membro dati com.adobe.idp.services.holders.FormsResultHolder
dell'oggetto value
.javax.servlet.ServletOutputStream
utilizzato per inviare un flusso di dati del modulo al browser Web client.BLOB
che contiene dati del modulo richiamando il metodo FormsResult
dell'oggetto getOutputContent
.getBinaryData
dell'oggetto BLOB
. Questa attività assegna il contenuto dell'oggetto FormsResult
all'array di byte.write
dell’oggetto javax.servlet.http.HttpServletResponse
per inviare il flusso di dati del modulo al browser Web client. Passa l'array di byte al metodo write
.Consulta anche