Al procesar un formulario, puede definir opciones en tiempo de ejecución que optimizarán el rendimiento del servicio de Forms. Otra tarea que puede realizar para mejorar el rendimiento del servicio Forms es almacenar archivos XDP en el repositorio. Sin embargo, esta sección no describe cómo realizar esta tarea. (Consulte Invocación de un servicio mediante una biblioteca de cliente Java).
Para obtener más información sobre el servicio Forms, consulte Referencia de servicios para AEM Forms.
Para optimizar el rendimiento del servicio Forms al procesar un formulario, realice las siguientes tareas:
Incluir archivos de proyecto
Incluya los archivos necesarios en el proyecto de desarrollo. Si va a crear una aplicación cliente mediante Java, incluya los archivos JAR necesarios. Si utiliza servicios Web, asegúrese de incluir los archivos proxy.
Creación de un objeto de API de Forms Client
Para poder realizar mediante programación una operación de API de cliente de servicio de Forms, debe crear un cliente de servicio de Forms. Si utiliza la API de Java, cree un objeto FormsServiceClient
. Si utiliza la API de servicio Web de Forms, cree un objeto FormsService
.
Configurar las opciones de tiempo de ejecución del rendimiento
Puede definir las siguientes opciones de rendimiento en tiempo de ejecución para mejorar el rendimiento del servicio Forms:
true
, lo que resulta en que los formularios se procesen sin información de estado. La información de estado es necesaria si desea procesar un formulario interactivo para un usuario final que, a continuación, introduce información en el formulario y lo envía de nuevo al servicio de Forms. A continuación, el servicio Forms realiza una operación de cálculo y devuelve el formulario al usuario con los resultados mostrados en el formulario. Si se devuelve un formulario sin información de estado al servicio de Forms, solo estarán disponibles los datos XML y no se realizarán cálculos en el servidor.Representar el formulario
Para procesar el formulario después de definir las opciones de rendimiento, se utiliza la misma lógica de aplicación que para procesar un formulario sin opciones de rendimiento.
Escribir el flujo de datos del formulario en el navegador web del cliente
Una vez que el servicio Forms procesa un formulario, devuelve una secuencia de datos de formulario que debe escribir en el explorador web del cliente. Cuando se escribe en el navegador web del cliente, el formulario es visible para el usuario.
Consulte también
Inclusión de archivos de biblioteca Java de AEM Forms
Configuración de las propiedades de conexión
Inicios rápidos de la API de servicio de Forms
Representación de PDF forms interactivos
Representación de Forms como HTML
Creación de Aplicaciones web que procesan Forms
Representar un formulario con rendimiento optimizado mediante la API de Forms (Java):
Incluir archivos de proyecto
Incluya archivos JAR de cliente, como adobe-forms-client.jar, en la ruta de clases del proyecto Java.
Creación de un objeto de API de Forms Client
ServiceClientFactory
que contenga propiedades de conexión.FormsServiceClient
utilizando su constructor y pasando el objeto ServiceClientFactory
.Configurar las opciones de tiempo de ejecución del rendimiento
PDFFormRenderSpec
utilizando su constructor.PDFFormRenderSpec
del objeto setCacheEnabled
y pasando true
.PDFFormRenderSpec
del objeto setLinearizedPDF
y pasando true.
Representar el formulario
Invoque el método FormsServiceClient
del objeto renderPDFForm
y pase los siguientes valores:
com.adobe.idp.Document
que contiene datos para combinar con el formulario. Si no desea combinar datos, pase un objeto vacío com.adobe.idp.Document
.PDFFormRenderSpec
que almacena opciones en tiempo de ejecución para mejorar el rendimiento.URLSpec
que contiene valores de URI necesarios para el servicio de Forms.java.util.HashMap
que almacena archivos adjuntos. Es un parámetro opcional y puede especificar null
si no desea adjuntar archivos al formulario.El método renderPDFForm
devuelve un objeto FormsResult
que contiene una secuencia de datos de formulario que debe escribirse en el explorador Web del cliente.
Escribir el flujo de datos del formulario en el navegador web del cliente
javax.servlet.ServletOutputStream
que se utilice para enviar una secuencia de datos de formulario al explorador Web del cliente.com.adobe.idp.Document
invocando el método FormsResult
del objeto ‘s getOutputContent
.java.io.InputStream
invocando el método com.adobe.idp.Document
del objeto getInputStream
.InputStream
del objeto read
y pasando la matriz de bytes como argumento.javax.servlet.ServletOutputStream
del objeto write
para enviar la secuencia de datos del formulario al explorador Web del cliente. Pase la matriz de bytes al método write
.Consulte también
Inicio rápido (modo SOAP): Optimización del rendimiento mediante la API de Java
Inclusión de archivos de biblioteca Java de AEM Forms
Configuración de las propiedades de conexión
Representar un formulario con rendimiento optimizado mediante la API de Forms (servicio web):
Incluir archivos de proyecto
Creación de un objeto de API de Forms Client
Cree un objeto FormsService
y defina los valores de autenticación.
Configurar las opciones de tiempo de ejecución del rendimiento
PDFFormRenderSpec
utilizando su constructor.PDFFormRenderSpec
del objeto setCacheEnabled
y pasando true.PDFFormRenderSpec
del objeto setStandAlone
y pasando true.PDFFormRenderSpec
del objeto setLinearizedPDF
y pasando true.Representar el formulario
Invoque el método FormsService
del objeto renderPDFForm
y pase los siguientes valores:
BLOB
que contiene datos para combinar con el formulario. Si no desea combinar datos, pase null
.PDFFormRenderSpecc
que almacena opciones de tiempo de ejecución.URLSpec
que contiene valores de URI necesarios para el servicio de Forms.java.util.HashMap
que almacena archivos adjuntos. Es un parámetro opcional y puede especificar null
si no desea adjuntar archivos al formulario.com.adobe.idp.services.holders.BLOBHolder
que se rellena con el método. Se utiliza para almacenar el formulario PDF procesado.javax.xml.rpc.holders.LongHolder
que se rellena con el método. (Este argumento almacenará el número de páginas del formulario).javax.xml.rpc.holders.StringHolder
que se rellena con el método. (Este argumento almacenará el valor de configuración regional).com.adobe.idp.services.holders.FormsResultHolder
que contendrá los resultados de esta operación.El método renderPDFForm
rellena el objeto com.adobe.idp.services.holders.FormsResultHolder
que se pasa como el último valor de argumento con una secuencia de datos de formulario que debe escribirse en el explorador Web del cliente.
Escribir el flujo de datos del formulario en el navegador web del cliente
FormResult
obteniendo el valor del miembro de datos com.adobe.idp.services.holders.FormsResultHolder
del objeto value
.javax.servlet.ServletOutputStream
que se utilice para enviar una secuencia de datos de formulario al explorador Web del cliente.BLOB
que contenga datos de formulario invocando el método FormsResult
del objeto getOutputContent
.BLOB
del objeto getBinaryData
. Esta tarea asigna el contenido del objeto FormsResult
a la matriz de bytes.javax.servlet.http.HttpServletResponse
del objeto write
para enviar la secuencia de datos del formulario al explorador Web del cliente. Pase la matriz de bytes al método write
.Consulte también
Invocación de AEM Forms mediante codificación Base64