Resumen de los pasos

Para procesar un formulario por valor, realice los siguientes pasos:

  1. Incluir archivos de proyecto.
  2. Cree un objeto de API de cliente de Forms.
  3. Hacer referencia al diseño de formulario.
  4. Procesar un formulario por valor.
  5. 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.

Crear un objeto de API de cliente de Forms

Para poder importar datos mediante programación en una API de cliente de formulario de PDF, debe crear un cliente de servicio de integración de datos. Al crear un cliente de servicios, define la configuración de conexión necesaria para invocar un servicio.

Hacer referencia al diseño de formulario

Al procesar un formulario por valor, debe crear un objeto com.adobe.idp.Document que contenga el diseño de formulario que desea procesar. Puede hacer referencia a un archivo XDP existente o puede crear dinámicamente un diseño de formulario en tiempo de ejecución y rellenar un com.adobe.idp.Document con esos datos.

NOTA
Esta sección y el inicio rápido correspondiente hacen referencia a un archivo XDP existente.

Procesar un formulario por valor

Para procesar un formulario por valor, pase una instancia de com.adobe.idp.Document que contenga el diseño de formulario al parámetro inDataDoc del método de procesamiento (puede ser cualquiera de los métodos de procesamiento del objeto FormsServiceClient, como renderPDFForm, (Deprecated) renderHTMLForm, etc.). Este valor de parámetro se reserva normalmente para los datos que se combinan con el formulario. Igualmente, pase un valor de cadena vacío al parámetro formQuery. Normalmente, este parámetro requiere un valor de cadena que especifica el nombre del diseño de formulario.

NOTA
Si desea mostrar datos dentro del formulario, los datos deben especificarse dentro del elemento xfa:datasets. Para obtener información acerca de la arquitectura XFA, vaya a https://www.pdfa.org/norm-refs/XFA-3_3.pdf.

Escriba el flujo de datos del formulario en el explorador web del cliente

Cuando el servicio Forms procesa un formulario por valor, 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

Procesar un formulario por valor mediante la API de Java

Procesar un formulario por valor mediante la API de servicio web

Incluir archivos de biblioteca Java de AEM Forms

Estableciendo propiedades de conexión

Inicio rápido de la API del servicio de Forms

Pasar documentos al servicio de Forms

Crear aplicaciones web que procesen Forms

Procesar un formulario por valor mediante la API de Java

Procesar un formulario por valor mediante la API de Forms (Java):

  1. Incluir archivos de proyecto

    Incluya archivos JAR de cliente, como adobe-forms-client.jar, en la ruta de clase del proyecto Java.

  2. Crear un objeto de API de cliente de Forms

    • Cree un objeto ServiceClientFactory que contenga propiedades de conexión.
    • Cree un objeto FormsServiceClient utilizando su constructor y pasando el objeto ServiceClientFactory.
  3. Hacer referencia al diseño de formulario

    • Cree un objeto java.io.FileInputStream que represente el diseño de formulario que se va a procesar mediante su constructor y pasando un valor de cadena que especifique la ubicación del archivo XDP.
    • Cree un objeto com.adobe.idp.Document utilizando su constructor y pasando el objeto java.io.FileInputStream.
  4. Procesar un formulario por valor

    Invoque el método renderPDFForm del objeto FormsServiceClient y pase los siguientes valores:

    • Un valor de cadena vacío. (Normalmente, este parámetro requiere un valor de cadena que especifica el nombre del diseño de formulario).
    • Objeto com.adobe.idp.Document que contiene el diseño de formulario. Normalmente, este valor de parámetro se reserva para los datos que se combinan con el formulario.
    • Objeto PDFFormRenderSpec que almacena opciones en tiempo de ejecución. Este es un parámetro opcional y puede especificar null si no desea especificar opciones en tiempo de ejecución.
    • Un objeto URLSpec que contiene valores de URI requeridos por el servicio Forms.
    • Objeto java.util.HashMap que almacena datos adjuntos de archivos. Este 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 se puede escribir en el explorador web del cliente.

  5. Escribir el flujo de datos del formulario en el explorador web del cliente

    • Cree un objeto com.adobe.idp.Document invocando el método getOutputContent del objeto FormsResult.
    • Obtenga el tipo de contenido del objeto com.adobe.idp.Document invocando su método getContentType.
    • Establezca el tipo de contenido del objeto javax.servlet.http.HttpServletResponse invocando su método setContentType y pasando el tipo de contenido del objeto com.adobe.idp.Document.
    • Cree un objeto javax.servlet.ServletOutputStream utilizado para escribir el flujo de datos de formulario en el explorador web del cliente invocando el método getOutputStream del objeto javax.servlet.http.HttpServletResponse.
    • Cree un objeto java.io.InputStream invocando el método getInputStream del objeto com.adobe.idp.Document.
    • Cree una matriz de bytes y asigne el tamaño del objeto InputStream. Invoque el método available del objeto InputStream para obtener el tamaño del objeto InputStream.
    • Rellene la matriz de bytes con la secuencia de datos de formulario invocando el método read del objeto InputStream y pasando la matriz de bytes como argumento.
    • Invoque el método write del objeto javax.servlet.ServletOutputStream para enviar la secuencia de datos de formulario al explorador web del cliente. Pase la matriz de bytes al método write.