Importar y exportar datos importing-and-exporting-data
Los ejemplos de este documento solo son para AEM Forms en un entorno JEE.
Acerca del servicio de integración de datos de formulario about-the-form-data-integration-service
El servicio de integración de datos de formulario puede importar datos en un formulario de PDF y exportarlos desde un formulario de PDF. Las operaciones de importación y exportación admiten dos tipos de PDF forms:
- Un formulario de Acrobat (creado en Acrobat) es un documento de PDF que contiene campos de formulario.
- Un formulario XML de Adobe (creado en Designer) es un documento de PDF que se ajusta a la arquitectura XML Forms de Adobe XML (XFA).
Los datos de formulario pueden existir en uno de los siguientes formatos según el tipo de formulario del PDF:
- Un archivo XFDF, que es una versión XML del formato de datos del formulario de Acrobat.
- Un archivo XDP, que es un archivo XML que contiene definiciones de campos de formulario. También puede contener datos de campos de formulario y un archivo de PDF incrustado. Un archivo XDP generado por Designer solo se puede utilizar si lleva un documento PDF incrustado con codificación base 64.
Puede realizar estas tareas mediante el servicio de integración de datos de formulario:
- Importación de datos en PDF forms. Para obtener más información, consulte Importación de datos de formulario.
- Exportar datos de PDF forms. Para obtener más información, consulte Exportación de datos de formulario.
Importación de datos de formulario importing-form-data
Puede importar datos de formulario en PDF forms interactivos mediante el servicio de integración de datos de formulario. Un formulario PDF interactivo es un documento de PDF que contiene uno o más campos para recopilar información de un usuario o para mostrar información personalizada. El servicio de integración de datos de formulario no admite cálculos de formulario, validación ni scripts.
Para importar datos en un formulario creado en Designer, debe hacer referencia a un origen de datos XML XDP válido. Veamos el siguiente ejemplo de formulario de solicitud de hipoteca.
Para importar valores de datos en este formulario, debe tener una fuente de datos XML XDP válida que corresponda al formulario. No se puede utilizar una fuente de datos XML arbitraria para importar datos a un formulario mediante el servicio de integración de datos de formulario. La diferencia entre una fuente de datos XML arbitraria y una fuente de datos XML XDP es que una fuente de datos XDP se ajusta a la arquitectura Forms XML (XFA). El siguiente XML representa una fuente de datos XML XDP que corresponde al formulario de aplicación hipotecaria de ejemplo.
<?xml version="1.0" encoding="UTF-8" ?>
- <xfa:datasets xmlns:xfa="https://www.xfa.org/schema/xfa-data/1.0/">
- <xfa:data>
- <data>
- <Layer>
<closeDate>1/26/2007</closeDate>
<lastName>Johnson</lastName>
<firstName>Jerry</firstName>
<mailingAddress>JJohnson@NoMailServer.com</mailingAddress>
<city>New York</city>
<zipCode>00501</zipCode>
<state>NY</state>
<dateBirth>26/08/1973</dateBirth>
<middleInitials>D</middleInitials>
<socialSecurityNumber>(555) 555-5555</socialSecurityNumber>
<phoneNumber>5555550000</phoneNumber>
</Layer>
- <Mortgage>
<mortgageAmount>295000.00</mortgageAmount>
<monthlyMortgagePayment>1724.54</monthlyMortgagePayment>
<purchasePrice>300000</purchasePrice>
<downPayment>5000</downPayment>
<term>25</term>
<interestRate>5.00</interestRate>
</Mortgage>
</data>
</xfa:data>
</xfa:datasets>
Resumen de los pasos summary-of-steps
Para importar datos de formulario en un formulario de PDF, realice los siguientes pasos:
- Incluir archivos de proyecto.
- Cree un cliente del servicio de integración de datos de formulario.
- Hacer referencia a un formulario de PDF.
- Hacer referencia a una fuente de datos XML.
- Importe datos en el formulario de PDF.
- Guarde el formulario de PDF como archivo de PDF.
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.
Los siguientes archivos JAR deben añadirse a la ruta de clase del proyecto:
- adobe-livecycle-client.jar
- adobe-usermanager-client.jar
- adobe-formdataintegration-client.jar
- adobe-utilities.jar (obligatorio si AEM Forms está implementado en JBoss)
- jbossall-client.jar (requerido si AEM Forms está implementado en JBoss)
Para obtener información sobre la ubicación de estos archivos JAR, consulte Incluir archivos de biblioteca Java de AEM Forms.
Crear un cliente del servicio de integración de datos de formulario
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. Para obtener más información, consulte Estableciendo propiedades de conexión.
Referencia a un formulario de PDF
Para importar datos en un formulario de PDF, debe hacer referencia a un formulario XML creado en Designer o a un formulario de Acrobat creado en Acrobat.
Hacer referencia a una fuente de datos XML
Para importar datos de formulario, debe hacer referencia a un origen de datos válido. Para importar datos en un formulario XML XFA creado en Designer, debe utilizar una fuente de datos XML XDP. Si hace referencia a un formulario de Acrobat, debe utilizar una fuente de datos XFDF. Para cada campo en el que desee importar datos, se debe especificar un valor. Si un elemento de la fuente de datos XML no se corresponde con un campo del formulario, el elemento se ignora.
Importación de datos en el formulario de PDF
Después de hacer referencia a un formulario de PDF y a una fuente de datos XML válida, puede importar los datos en el formulario de PDF.
Guarde el formulario de PDF como archivo de PDF
Después de importar los datos en un formulario, puede guardarlo como un archivo de PDF. Una vez guardado como archivo de PDF, un usuario puede abrir el formulario en Adobe Reader o Acrobat y verlo con los datos importados.
Consulte también
Importar datos de formulario mediante la API de Java
Importación de datos de formulario 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 integración de datos de formulario
Exportación de datos de formulario
Importar datos de formulario mediante la API de Java import-form-data-using-the-java-api
Importar datos de formulario mediante la API de integración de datos de formulario (Java):
-
Incluir archivos de proyecto.
Incluya archivos JAR de cliente, como adobe-formdataintegration-client.jar, en la ruta de clase del proyecto Java.
-
Cree un cliente del servicio de integración de datos de formulario.
- Crear un
ServiceClientFactory
que contiene las propiedades de conexión. - Crear un
FormDataIntegrationClient
usando su constructor y pasando el objetoServiceClientFactory
objeto.
- Crear un
-
Hacer referencia a un formulario de PDF.
- Crear un
java.io.FileInputStream
mediante su constructor. Pase un valor de cadena que especifique la ubicación del formulario de PDF. - Crear un
com.adobe.idp.Document
que almacena el formulario de PDF mediante el objetocom.adobe.idp.Document
constructor. Pase eljava.io.FileInputStream
que contiene el formulario PDF al constructor.
- Crear un
-
Hacer referencia a una fuente de datos XML.
- Crear un
java.io.FileInputStream
mediante su constructor y pase un valor de cadena que especifique la ubicación del archivo XML que contiene los datos que se van a importar al formulario. - Crear un
com.adobe.idp.Document
que almacena datos de formulario utilizandocom.adobe.idp.Document
constructor. Pase eljava.io.FileInputStream
que contiene datos de formulario al constructor.
- Crear un
-
Importe datos en el formulario de PDF.
Importe datos en el formulario de PDF invocando el
FormDataIntegrationClient
del objetoimportData
y pasando los siguientes valores:- El
com.adobe.idp.Document
que almacena el formulario de PDF. - El
com.adobe.idp.Document
que almacena datos de formulario.
El
importData
El método devuelve un valorcom.adobe.idp.Document
que almacena un formulario de PDF que contiene los datos del origen de datos XML. - El
-
Guarde el formulario de PDF como archivo de PDF.
- Crear un
java.io.File
y asegúrese de que la extensión del archivo es ".PDF". - Invoque el
Document
del objetocopyToFile
para copiar el contenido delDocument
al archivo (asegúrese de utilizar la variableDocument
objeto que ha devuelto elimportData
método).
- Crear un
Consulte también
Inicio rápido (modo SOAP): Importación de datos de formulario mediante la API de Java
Incluir archivos de biblioteca Java de AEM Forms
Estableciendo propiedades de conexión
Importación de datos de formulario mediante la API de servicio web import-form-data-using-the-web-service-api
Importar datos de formulario mediante la API de integración de datos de formulario (servicio web):
-
Incluir archivos de proyecto.
Cree un proyecto de Microsoft .NET que utilice MTOM. Asegúrese de utilizar la siguiente definición de WSDL:
http://localhost:8080/soap/services/FormDataIntegration?WSDL&lc_version=9.0.1
.note note NOTE Reemplazar localhost
con la dirección IP del servidor que aloja AEM Forms. -
Cree un cliente del servicio de integración de datos de formulario.
-
Crear un
FormDataIntegrationClient
mediante su constructor predeterminado. -
Crear un
FormDataIntegrationClient.Endpoint.Address
mediante el uso del objetoSystem.ServiceModel.EndpointAddress
constructor. Pase un valor de cadena que especifique el WSDL al servicio AEM Forms (por ejemplo,http://localhost:8080/soap/services/FormDataIntegration?blob=mtom
.) No es necesario que utilice ellc_version
atributo. Este atributo se utiliza al crear una referencia de servicio. Sin embargo, especifique?blob=mtom
para utilizar MTOM. -
Crear un
System.ServiceModel.BasicHttpBinding
al obtener el valor de la variableFormDataIntegrationClient.Endpoint.Binding
field. Convierta el valor devuelto enBasicHttpBinding
. -
Configure las variables
System.ServiceModel.BasicHttpBinding
del objetoMessageEncoding
field aWSMessageEncoding.Mtom
. Este valor garantiza que se utiliza MTOM. -
Habilite la autenticación HTTP básica realizando las siguientes tareas:
- AEM Asigne el nombre de usuario del formulario de la al campo
FormDataIntegrationClient.ClientCredentials.UserName.UserName
. - Asigne el valor de contraseña correspondiente al campo
FormDataIntegrationClient.ClientCredentials.UserName.Password
. - Asignar el valor constante
HttpClientCredentialType.Basic
al campoBasicHttpBindingSecurity.Transport.ClientCredentialType
. - Asignar el valor constante
BasicHttpSecurityMode.TransportCredentialOnly
al campoBasicHttpBindingSecurity.Security.Mode
.
- AEM Asigne el nombre de usuario del formulario de la al campo
-
-
Hacer referencia a un formulario de PDF.
- Crear un
BLOB
mediante su constructor. EstaBLOB
se utiliza para almacenar el formulario de PDF. - Crear un
System.IO.FileStream
invocando su constructor. Pase un valor de cadena que especifique la ubicación del formulario del PDF y el modo en que se abrirá el archivo. - Cree una matriz de bytes que almacene el contenido del
System.IO.FileStream
objeto. Puede determinar el tamaño de la matriz de bytes obteniendo elSystem.IO.FileStream
del objetoLength
propiedad. - Rellene la matriz de bytes con datos de flujo invocando el método
System.IO.FileStream
del objetoRead
método. Pase a leer la matriz de bytes, la posición inicial y la longitud de la secuencia. - Rellene el
BLOB
al asignar suMTOM
con el contenido de la matriz de bytes.
- Crear un
-
Hacer referencia a una fuente de datos XML.
- Crear un
BLOB
mediante su constructor. EstaBLOB
se utiliza para almacenar los datos importados en el formulario. - Crear un
System.IO.FileStream
invocando su constructor. Pase un valor de cadena que especifique la ubicación del archivo XML que contiene los datos que se van a importar y el modo en que se va a abrir el archivo. - Cree una matriz de bytes que almacene el contenido del
System.IO.FileStream
objeto. Puede determinar el tamaño de la matriz de bytes obteniendo elSystem.IO.FileStream
del objetoLength
propiedad. - Rellene la matriz de bytes con datos de flujo invocando el método
System.IO.FileStream
del objetoRead
método. Pase a leer la matriz de bytes, la posición inicial y la longitud de la secuencia. - Rellene el
BLOB
al asignar suMTOM
con el contenido de la matriz de bytes.
- Crear un
-
Importe datos en el formulario de PDF.
Importe datos al formulario de PDF invocando el
FormDataIntegrationClient
del objetoimportData
y pasando los siguientes valores:- El
BLOB
que almacena el formulario de PDF. - El
BLOB
que almacena datos de formulario.
El
importData
El método devuelve un valorBLOB
que almacena un formulario de PDF que contiene los datos del origen de datos XML. - El
-
Guarde el formulario de PDF como archivo de PDF.
- Crear un
System.IO.FileStream
invocando su constructor y pasando un valor de cadena que representa la ubicación de archivo del archivo PDF. - Cree una matriz de bytes que almacene el contenido de datos del
BLOB
objeto que ha devuelto elimportData
método. Rellene la matriz de bytes obteniendo el valor deBLOB
del objetoMTOM
field. - Crear un
System.IO.BinaryWriter
invocando su constructor y pasando el objetoSystem.IO.FileStream
objeto. - Escriba el contenido de la matriz de bytes en un archivo PDF invocando el método
System.IO.BinaryWriter
del objetoWrite
y pasando la matriz de bytes.
- Crear un
Consulte también
Invocar AEM Forms mediante MTOM
Exportación de datos de formulario exporting-form-data
Puede exportar datos de formulario desde un formulario de PDF interactivo mediante el servicio de integración de datos de formulario. El formato de los datos exportados depende del tipo de formulario. Si el tipo de formulario es un formulario de Acrobat creado en Acrobat, los datos exportados serán XFDF. Si el tipo de formulario es un formulario XML creado en Designer, los datos exportados son XDP.
Resumen de los pasos summary_of_steps-1
Para exportar datos de formulario desde un formulario de PDF, realice los siguientes pasos:
- Incluir archivos de proyecto
- Cree un cliente del servicio de integración de datos de formulario.
- Hacer referencia a un formulario de PDF.
- Exporte datos desde el formulario de PDF.
- Guarde los datos exportados como un archivo XML.
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.
Los siguientes archivos JAR deben añadirse a la ruta de clase del proyecto:
- adobe-livecycle-client.jar
- adobe-usermanager-client.jar
- adobe-formdataintegration-client.jar
- adobe-utilities.jar (obligatorio si AEM Forms está implementado en JBoss)
- jbossall-client.jar (requerido si AEM Forms está implementado en JBoss)
Crear un cliente del servicio de integración de datos de formulario
Para poder importar datos mediante programación en una API de cliente de formulario de PDF, debe crear un cliente del servicio de integración de datos. Al crear un cliente de servicios, define la configuración de conexión necesaria para invocar un servicio. Para obtener más información, Estableciendo propiedades de conexión.
Referencia a un formulario de PDF
Para exportar datos desde un formulario de PDF, debe hacer referencia al formulario de PDF que se creó en Designer o Acrobat y que contiene datos de formulario. Si intenta exportar datos desde un formulario PDF vacío, obtendrá un esquema XML vacío.
Exportación de datos desde el formulario de PDF
Después de hacer referencia a un formulario de PDF que contiene datos de formulario, puede exportar los datos desde el formulario. Los datos se exportan dentro de un esquema XML basado en el formulario.
Guardar los datos del formulario como un archivo XML
Después de exportar los datos del formulario, puede guardarlos como un archivo XML. Una vez guardado como archivo XML, puede abrirlo en un visor XML para ver los datos del formulario.
Consulte también
Exportar datos de formulario mediante la API de Java
Exportación de datos de formulario 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 integración de datos de formulario
Importación de datos de formulario
Exportar datos de formulario mediante la API de Java export-form-data-using-the-java-api
Exportar datos de formulario mediante la API de integración de datos de formulario (Java):
-
Incluir archivos de proyecto.
Incluya archivos JAR de cliente, como adobe-formdataintegration-client.jar, en la ruta de clase del proyecto Java.
-
Cree un cliente del servicio de integración de datos de formulario.
- Crear un
ServiceClientFactory
que contiene las propiedades de conexión. - Crear un
FormDataIntegrationClient
usando su constructor y pasando el objetoServiceClientFactory
objeto.
- Crear un
-
Hacer referencia a un formulario de PDF.
- Crear un
java.io.FileInputStream
mediante su constructor y pase un valor de cadena que especifique la ubicación del formulario de PDF que contiene los datos que se van a exportar. - Crear un
com.adobe.idp.Document
que almacena el formulario de PDF mediante el objetocom.adobe.idp.Document
constructor. Pase eljava.io.FileInputStream
que contiene el formulario PDF al constructor.
- Crear un
-
Exporte datos desde el formulario de PDF.
Exportar datos de formulario invocando el
FormDataIntegrationClient
del objetoexportData
y pase elcom.adobe.idp.Document
que almacena el formulario de PDF. Este método devuelve uncom.adobe.idp.Document
que almacena datos de formulario como un esquema XML. -
Guarde el formulario de PDF como archivo de PDF.
- Crear un
java.io.File
y asegúrese de que la extensión del archivo es XML. - Invoque el
Document
del objetocopyToFile
para copiar el contenido delDocument
al archivo (asegúrese de utilizar la variableDocument
objeto que ha devuelto elexportData
método).
- Crear un
Consulte también
Inicio rápido (modo SOAP): Exportación de datos de formulario mediante la API de Java
Incluir archivos de biblioteca Java de AEM Forms
Estableciendo propiedades de conexión
Exportación de datos de formulario mediante la API de servicio web export-form-data-using-the-web-service-api
Exportar datos de formulario mediante la API de integración de datos de formulario (servicio web):
-
Incluir archivos de proyecto.
Cree un proyecto de Microsoft .NET que utilice MTOM. Asegúrese de utilizar la siguiente definición de WSDL:
http://localhost:8080/soap/services/FormDataIntegration?WSDL&lc_version=9.0.1
.- Reemplazar
localhost
con la dirección IP del servidor que aloja AEM Forms.
- Reemplazar
-
Cree un cliente del servicio de integración de datos de formulario.
-
Crear un
FormDataIntegrationClient
mediante su constructor predeterminado. -
Crear un
FormDataIntegrationClient.Endpoint.Address
mediante el uso del objetoSystem.ServiceModel.EndpointAddress
constructor. Pase un valor de cadena que especifique el WSDL al servicio AEM Forms (por ejemplo,http://localhost:8080/soap/services/FormDataIntegration?blob=mtom
.) No es necesario que utilice ellc_version
atributo. Este atributo se utiliza al crear una referencia de servicio. Sin embargo, especifique?blob=mtom
para utilizar MTOM. -
Crear un
System.ServiceModel.BasicHttpBinding
al obtener el valor de la variableFormDataIntegrationClient.Endpoint.Binding
field. Convierta el valor devuelto enBasicHttpBinding
. -
Configure las variables
System.ServiceModel.BasicHttpBinding
del objetoMessageEncoding
field aWSMessageEncoding.Mtom
. Este valor garantiza que se utiliza MTOM. -
Habilite la autenticación HTTP básica realizando las siguientes tareas:
- AEM Asigne el nombre de usuario del formulario de la al campo
FormDataIntegrationClient.ClientCredentials.UserName.UserName
. - Asigne el valor de contraseña correspondiente al campo
FormDataIntegrationClient.ClientCredentials.UserName.Password
. - Asignar el valor constante
HttpClientCredentialType.Basic
al campoBasicHttpBindingSecurity.Transport.ClientCredentialType
. - Asignar el valor constante
BasicHttpSecurityMode.TransportCredentialOnly
al campoBasicHttpBindingSecurity.Security.Mode
.
- AEM Asigne el nombre de usuario del formulario de la al campo
-
-
Hacer referencia a un formulario de PDF.
- Crear un
BLOB
mediante su constructor. EstaBLOB
se utiliza para almacenar el formulario de PDF desde el que se exportan los datos. - Crear un
System.IO.FileStream
invocando su constructor. Pase un valor de cadena que especifique la ubicación del formulario del PDF y el modo en que se abrirá el archivo. - Cree una matriz de bytes que almacene el contenido del
System.IO.FileStream
objeto. Puede determinar el tamaño de la matriz de bytes obteniendo elSystem.IO.FileStream
del objetoLength
propiedad. - Rellene la matriz de bytes con datos de flujo invocando el método
System.IO.FileStream
del objetoRead
y pasando la matriz de bytes, la posición inicial y la longitud de la secuencia que se va a leer. - Rellene el
BLOB
al asignar suMTOM
con el contenido de la matriz de bytes.
- Crear un
-
Exporte datos desde el formulario de PDF.
Importe datos en el formulario de PDF invocando el
FormDataIntegrationClient
del objetoexportData
y pase elBLOB
que almacena el formulario de PDF. Este método devuelve unBLOB
que almacena datos de formulario como un esquema XML. -
Guarde el formulario de PDF como archivo de PDF.
- Crear un
System.IO.FileStream
invocando su constructor y pasando un valor de cadena que representa la ubicación del archivo XML. - Cree una matriz de bytes que almacene el contenido de datos del
BLOB
objeto que ha devuelto elexportData
método. Rellene la matriz de bytes obteniendo el valor deBLOB
del objetoMTOM
field. - Crear un
System.IO.BinaryWriter
invocando su constructor y pasando el objetoSystem.IO.FileStream
objeto. - Escriba el contenido de la matriz de bytes en un archivo XML invocando el método
System.IO.BinaryWriter
del objetoWrite
y pasando la matriz de bytes.
- Crear un
Consulte también
Invocar AEM Forms mediante MTOM
Invocar AEM Forms mediante SwaRef