El servicio Forms puede procesar formularios que tengan derechos de uso aplicados a ellos. Los derechos de uso pertenecen a funciones que están disponibles de forma predeterminada en Acrobat pero no en Adobe Reader, como la capacidad de agregar comentarios a un formulario o de rellenar los campos del formulario y guardar el formulario. Los Forms que tienen derechos de uso aplicados se denominan formularios habilitados para derechos. Un usuario que abre un formulario con derechos activados en Adobe Reader puede realizar operaciones que estén habilitadas para ese formulario.
Para aplicar derechos de uso a un formulario, el servicio de extensiones de Acrobat Reader DC debe formar parte de la instalación de AEM forms. Además, debe tener una credencial válida que le permita aplicar derechos de uso a documentos PDF. Es decir, debe configurar correctamente el servicio de extensiones de Acrobat Reader DC para poder procesar un formulario con derechos activados. (Consulte Acerca del servicio de extensiones de Acrobat Reader DC).
Para procesar un formulario que contenga derechos de uso, debe utilizar un archivo XDP como entrada, no como archivo PDF. Si utiliza un archivo PDF como entrada, el formulario se seguirá procesando; sin embargo, no será un formulario con derechos activados.
No se puede rellenar previamente un formulario con datos XML cuando se especifican los siguientes derechos de uso: enableComments
, enableCommentsOnline
, enableEmbeddedFiles
o enableDigitalSignatures
. (Consulte Rellenado previo de Forms con diseños de posición variable).
Para obtener más información sobre el servicio Forms, consulte Referencia de servicios para AEM Forms.
Para procesar un formulario con derechos activados, realice las siguientes tareas:
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.
Definir opciones de tiempo de ejecución de derechos de uso
Debe definir opciones de derechos de uso en tiempo de ejecución para procesar un formulario con derechos activados. También debe especificar el alias de la credencial que se utiliza para aplicar derechos de uso a un formulario. Después de especificar el valor de alias, debe especificar cada derecho de uso que se aplicará al formulario.
Representar un formulario con derechos activados
Para procesar un formulario con derechos activados, se utiliza la misma lógica de aplicación que para procesar un formulario sin derechos de uso. La única diferencia es que debe asegurarse de que las opciones de tiempo de ejecución de los derechos de uso se incluyen en la lógica de la aplicación.
Al procesar un formulario con derechos activados mediante la API de servicio web de Forms, no se pueden adjuntar archivos al formulario.
Escribir el flujo de datos del formulario en el explorador web del cliente
Cuando el servicio Forms procesa un formulario con derechos activados, devuelve un flujo de datos de formulario que debe escribirse en el explorador web del cliente. Una vez escrito en el explorador web del cliente, el formulario es visible para el usuario. Un usuario que vea el formulario con derechos activados en Adobe Reader puede realizar operaciones que estén habilitadas para ese formulario.
Consulte también
Representar formularios habilitados para derechos mediante la API de Java
Representar formularios habilitados para derechos mediante la API de servicio web
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
Renderización de PDF forms interactivos
Creación de aplicaciones web que procesen Forms
Representar un formulario habilitado para derechos 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
ServiceClientFactory
que contenga propiedades de conexión.FormsServiceClient
utilizando su constructor y pasando el objeto ServiceClientFactory
.Definir opciones de tiempo de ejecución de derechos de uso
ReaderExtensionSpec
utilizando su constructor.ReaderExtensionSpec
del objeto setReCredentialAlias
y especifique un valor de cadena que represente el valor del alias.ReaderExtensionSpec
. Sin embargo, solo puede establecer un derecho de uso si las credenciales a las que hace referencia le permiten hacerlo. Es decir, no puede establecer un derecho de uso si las credenciales no permiten establecerlo. Por ejemplo. para definir el derecho de uso que permite al usuario rellenar los campos del formulario y guardar el formulario, invoque el método ReaderExtensionSpec
del objeto setReFillIn
y pase true
.No es necesario invocar el método ReaderExtensionSpec
del objeto setReCredentialPassword
. El servicio Forms no utiliza este método.
Representar un formulario con derechos activados
Invoque el método FormsServiceClient
del objeto renderPDFFormWithUsageRights
y pase los siguientes valores:
Applications/FormsApplication/1.0/FormsFolder/Loan.xdp
.com.adobe.idp.Document
que contiene datos para combinar con el formulario. Si no desea combinar datos, pase un objeto com.adobe.idp.Document
vacío.PDFFormRenderSpec
que almacena opciones en tiempo de ejecución.ReaderExtensionSpec
que almacena opciones en tiempo de ejecución de derechos de uso.URLSpec
que contiene valores de URI necesarios para el servicio Forms.El método renderPDFFormWithUsageRights
devuelve un objeto FormsResult
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
com.adobe.idp.Document
invocando el método FormsResult
del objeto ‘s getOutputContent
.com.adobe.idp.Document
invocando su método getContentType
.javax.servlet.http.HttpServletResponse
invocando su método setContentType
y pasando el tipo de contenido del objeto com.adobe.idp.Document
.javax.servlet.ServletOutputStream
que se utilice para escribir el flujo de datos del formulario en el explorador web del cliente invocando el método javax.servlet.http.HttpServletResponse
del objeto getOutputStream
.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
Inclusión de archivos de biblioteca Java de AEM Forms
Configuración de las propiedades de conexión
Representar un formulario con derechos activados mediante la API de Forms (servicio web):
Incluir archivos de proyecto
Creación de un objeto de API de cliente de Forms
Cree un objeto FormsService
y establezca valores de autenticación.
Definir opciones de tiempo de ejecución de derechos de uso
ReaderExtensionSpec
utilizando su constructor.ReaderExtensionSpec
del objeto setReCredentialAlias
y especifique un valor de cadena que represente el valor del alias.ReaderExtensionSpec
. Sin embargo, solo puede establecer un derecho de uso si las credenciales a las que hace referencia le permiten hacerlo. Es decir, no puede establecer un derecho de uso si las credenciales no permiten establecerlo. Para definir el derecho de uso que permite al usuario rellenar los campos del formulario y guardar el formulario, invoque el método ReaderExtensionSpec
del objeto setReFillIn
y pase true
.Representar un formulario con derechos activados
Invoque el método FormsService
del objeto renderPDFFormWithUsageRights
y pase los siguientes valores:
Applications/FormsApplication/1.0/FormsFolder/Loan.xdp
.BLOB
que contiene datos para combinar con el formulario. Si no desea combinar datos con el formulario, debe pasar un objeto BLOB
basado en un origen de datos XML vacío. No se puede pasar un objeto BLOB
que sea nulo; de lo contrario, se genera una excepción.PDFFormRenderSpec
que almacena opciones en tiempo de ejecución.ReaderExtensionSpec
que almacena opciones en tiempo de ejecución de derechos de uso.URLSpec
que contiene valores de URI necesarios para el servicio Forms.El método renderPDFFormWithUsageRights
devuelve un objeto FormsResult
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
BLOB
que contenga datos de formulario invocando el método FormsResult
del objeto getOutputContent
.BLOB
invocando su método getContentType
.javax.servlet.http.HttpServletResponse
invocando su método setContentType
y pasando el tipo de contenido del objeto BLOB
.javax.servlet.ServletOutputStream
que se utilice para escribir el flujo de datos del formulario en el explorador web del cliente invocando el método javax.servlet.http.HttpServletResponse
del objeto getOutputStream
.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