Optimización del rendimiento del servicio Forms optimizing-the-performance-of-theforms-service
Optimización del rendimiento del servicio Forms optimizing-the-performance-of-the-forms-service
Al procesar un formulario, puede definir opciones en tiempo de ejecución que optimicen el rendimiento del servicio 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.)
Resumen de los pasos summary-of-steps
Para optimizar el rendimiento del servicio Forms mientras se procesa un formulario, realice las siguientes tareas:
- Incluir archivos de proyecto.
- Cree un objeto de API de cliente de Forms.
- Establezca las opciones de rendimiento en tiempo de ejecución.
- Procese el formulario.
- Escriba el flujo de datos del formulario en el explorador web del cliente.
Incluir archivos de proyecto
Incluya los archivos necesarios en el proyecto de desarrollo. Si está creando 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 cliente de Forms
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 FormsServiceClient objeto. Si utiliza la API del servicio web de Forms, cree un FormsService objeto.
Establecer opciones de tiempo de ejecución del rendimiento
Puede configurar las siguientes opciones de rendimiento en tiempo de ejecución para mejorar el rendimiento del servicio Forms:
- Procesamiento de formularios en la caché: Se puede almacenar en caché un formulario procesado como PDF en la caché del servidor. Cada formulario se almacena en caché una vez que se genera por primera vez. En un procesamiento posterior, si el formulario almacenado en caché es más reciente que la marca de tiempo del diseño de formulario, el formulario se recupera de la caché. Al almacenar en caché los formularios, se mejora el rendimiento del servicio Forms porque no tiene que recuperar el diseño de formulario de un repositorio.
- Las guías del formulario (obsoletas) pueden tardar más en procesarse que otros tipos de transformación. Se recomienda almacenar en caché las guías del formulario (obsoleto) para mejorar el rendimiento.
- Opción independiente: Si no necesita que el servicio Forms realice cálculos en el servidor, puede establecer la opción Independiente en
true, lo que hace 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, introduzca información en el formulario y lo envíe de nuevo al servicio de Forms. A continuación, el servicio Forms realiza una operación de cálculo y vuelve a procesar el formulario para el usuario con los resultados mostrados en el formulario. Si se devuelve un formulario sin información de estado al servicio Forms, solo están disponibles los datos XML y no se realizan cálculos en el servidor. - PDF lineal: Se organiza un archivo PDF lineal para permitir un acceso incremental eficiente en un entorno de red. El archivo de PDF es PDF válido en todos los aspectos y es compatible con todos los visores existentes y otras aplicaciones de PDF. Es decir, se puede ver un PDF linealizado mientras se sigue descargando.
- Esta opción no mejora el rendimiento cuando se procesa un formulario de PDF en el cliente.
- Opción GuideRSL: Habilita la generación de guías de formulario (obsoleto) mediante bibliotecas compartidas en tiempo de ejecución. Esto significa que la primera solicitud descargará un archivo SWF más pequeño, además de bibliotecas compartidas más grandes que se almacenan en la caché del explorador. Para obtener más información, consulte RSL en la documentación de Flex.
- También puede mejorar el rendimiento del servicio Forms procesando un formulario en el cliente. (Consulte Representación de Forms en el cliente.)
Procesamiento del 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 explorador web del cliente
Una vez que el servicio Forms procesa un formulario, devuelve un flujo de datos de formulario que debe escribir en el explorador web del cliente. Cuando se escribe en el explorador 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
Inicio rápido de la API del servicio de Forms
Procesar formularios PDF interactivos
Procesar formularios como HTML
Creación de aplicaciones web que procesen Forms
Optimizar el rendimiento mediante la API de Java optimize-the-performance-using-the-java-api
Representar un formulario con rendimiento optimizado mediante la API de Forms (Java):
-
Incluir archivos de proyecto
Incluya archivos JAR del cliente, como adobe-forms-client.jar, en la ruta de clase de su proyecto Java.
-
Creación de un objeto de API de cliente de Forms
- Cree un
ServiceClientFactoryobjeto que contiene propiedades de conexión. - Cree un
FormsServiceClientusando su constructor y pasando elServiceClientFactoryobjeto.
- Cree un
-
Establecer opciones de tiempo de ejecución del rendimiento
- Cree un
PDFFormRenderSpecusando su constructor. - Establezca la opción de caché de formulario invocando la variable
PDFFormRenderSpecdel objetosetCacheEnabledmétodo y pasotrue. - Establezca la opción linealizada invocando la variable
PDFFormRenderSpecdel objetosetLinearizedPDFmétodo y pasotrue.
- Cree un
-
Procesamiento del formulario
Invocar el
FormsServiceClientdel objetorenderPDFFormy pase los siguientes valores:- Un valor de cadena que especifica el nombre del diseño de formulario, incluida la extensión del nombre de archivo.
- A
com.adobe.idp.Documentobjeto que contiene datos para combinar con el formulario. Si no desea combinar datos, pase un vacíocom.adobe.idp.Documentobjeto. - A
PDFFormRenderSpecque almacena opciones en tiempo de ejecución para mejorar el rendimiento. - A
URLSpecque contiene valores de URI necesarios para el servicio Forms. - A
java.util.HashMapque almacena archivos adjuntos. Este es un parámetro opcional y puede especificarnullsi no desea adjuntar archivos al formulario.
La variable
renderPDFFormel método devuelve unFormsResultobjeto que contiene un flujo de datos de formulario que debe escribirse en el explorador web del cliente. -
Escribir el flujo de datos del formulario en el explorador web del cliente
- Cree un
javax.servlet.ServletOutputStreamobjeto utilizado para enviar una secuencia de datos de formulario al explorador web del cliente. - Cree un
com.adobe.idp.Documentinvocando el objetoFormsResultobjeto ‘sgetOutputContentmétodo. - Cree un
java.io.InputStreaminvocando el objetocom.adobe.idp.Documentdel objetogetInputStreammétodo. - Cree una matriz de bytes y rellénela con la secuencia de datos del formulario invocando la variable
InputStreamdel objetoready pasando la matriz de bytes como argumento. - Invocar el
javax.servlet.ServletOutputStreamdel objetowritemétodo para enviar la secuencia de datos del formulario al explorador web del cliente. Pase la matriz de bytes a lawritemétodo.
- Cree un
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
Optimizar el rendimiento mediante la API de servicio web optimize-the-performance-using-the-web-service-api
Representar un formulario con un rendimiento optimizado mediante la API de Forms (servicio web):
-
Incluir archivos de proyecto
- Cree clases de proxy Java que consuman el WSDL del servicio Forms.
- Incluya las clases proxy de Java en la ruta de clase.
-
Creación de un objeto de API de cliente de Forms
Cree un
FormsServicey establezca los valores de autenticación. -
Establecer opciones de tiempo de ejecución del rendimiento
- Cree un
PDFFormRenderSpecusando su constructor. - Establezca la opción de caché de formulario invocando la variable
PDFFormRenderSpecdel objetosetCacheEnabledy pasar a verdadero. - Configure la opción independiente invocando la variable
PDFFormRenderSpecdel objetosetStandAloney pasar a verdadero. - Establezca la opción linealizada invocando la variable
PDFFormRenderSpecdel objetosetLinearizedPDFy pasar a verdadero.
- Cree un
-
Procesamiento del formulario
Invocar el
FormsServicedel objetorenderPDFFormy pase los siguientes valores:- Un valor de cadena que especifica el nombre del diseño de formulario, incluida la extensión del nombre de archivo.
- A
BLOBobjeto que contiene datos para combinar con el formulario. Si no desea combinar datos, pasenull. - A
PDFFormRenderSpeccque almacena opciones en tiempo de ejecución. - A
URLSpecque contiene valores de URI necesarios para el servicio Forms. - A
java.util.HashMapque almacena archivos adjuntos. Este es un parámetro opcional y puede especificarnullsi no desea adjuntar archivos al formulario. - Un vacío
com.adobe.idp.services.holders.BLOBHolderobjeto que rellena el método . Se utiliza para almacenar el formulario de PDF procesado. - Un vacío
javax.xml.rpc.holders.LongHolderobjeto que rellena el método . (Este argumento almacenará el número de páginas del formulario). - Un vacío
javax.xml.rpc.holders.StringHolderobjeto que rellena el método . (Este argumento almacenará el valor de configuración regional). - Un vacío
com.adobe.idp.services.holders.FormsResultHolderque contendrá los resultados de esta operación.
La variable
renderPDFFormrellena elcom.adobe.idp.services.holders.FormsResultHolderobjeto que se pasa como el último valor de argumento con un flujo de datos de formulario que debe escribirse en el explorador web del cliente. -
Escribir el flujo de datos del formulario en el explorador web del cliente
- Cree un
FormResultobteniendo el valor decom.adobe.idp.services.holders.FormsResultHolderdel objetovaluemiembro de datos. - Cree un
javax.servlet.ServletOutputStreamobjeto utilizado para enviar una secuencia de datos de formulario al explorador web del cliente. - Cree un
BLOBobjeto que contiene datos de formulario invocando la variableFormsResultdel objetogetOutputContentmétodo. - Cree una matriz de bytes y rellénela invocando la variable
BLOBdel objetogetBinaryDatamétodo. Esta tarea asigna el contenido de la variableFormsResulta la matriz de bytes. - Invocar el
javax.servlet.http.HttpServletResponsedel objetowritemétodo para enviar la secuencia de datos del formulario al explorador web del cliente. Pase la matriz de bytes a lawritemétodo.
- Cree un
Consulte también
Invocación de AEM Forms mediante la codificación Base64