Procesar formularios HTML mediante archivos CSS personalizados rendering-html-forms-using-custom-css-files
Las muestras y los ejemplos de este documento solo son para AEM Forms en un entorno JEE.
El servicio Forms procesa formularios de HTML en respuesta a una solicitud HTTP de un explorador web. Al procesar un formulario de HTML, el servicio Forms puede hacer referencia a un archivo CSS personalizado. Puede crear un archivo CSS personalizado para satisfacer los requisitos de su empresa y hacer referencia a ese archivo CSS al utilizar el servicio Forms para procesar formularios de HTML.
El servicio Forms analiza de forma silenciosa el archivo CSS personalizado. Es decir, el servicio Forms no informa de los errores que se pueden encontrar si el archivo CSS personalizado no cumple con los estándares CSS. En este caso, el servicio Forms ignora el estilo y continúa con los estilos restantes del archivo CSS.
La siguiente lista especifica los estilos compatibles con un archivo CSS personalizado:
- Pares de estilo selector de nivel de clase: si están presentes en un archivo CSS personalizado, se utilizan selectores utilizados en el formulario de HTML como estilos de clase. Se omiten los estilos de clase no utilizados.
- Pares de estilo selector de nivel de identificador: todos los estilos de identificador se utilizan si se utilizan en el formulario de HTML.
- Pares de estilo selector de nivel de elemento: todos los estilos de elemento se utilizan si se utilizan en el formulario de HTML.
- Prioridad de estilo: la prioridad de estilo (como importante) es compatible y se puede usar en un archivo CSS personalizado.
- Tipo de medio: uno o más pares de estilo selector se pueden ajustar en @media estilo para definir el tipo de medio. El servicio Forms no comprueba si se admite el tipo de medio especificado. El tipo de medios especificado en el archivo CSS personalizado se combina en el formulario de HTML.
Puede recuperar un archivo CSS de ejemplo utilizando la aplicación FormsIVS. Cargue el formulario, selecciónelo en la página Diseño del formulario de prueba y haga clic en Generar CSS. No es necesario configurar el tipo de transformación del HTML antes de hacer clic en el botón. A continuación, seleccione guardar. Puede editar este archivo CSS para satisfacer sus necesidades comerciales.
Resumen de los pasos summary-of-steps
Para procesar un formulario de HTML que utilice un archivo CSS, realice las siguientes tareas:
- Incluir archivos de proyecto.
- Cree un objeto de API de Java de Forms.
- Haga referencia al archivo CSS.
- Procesar un formulario de HTML.
- 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 con Java, incluya los archivos JAR necesarios. Si utiliza servicios web, asegúrese de incluir los archivos proxy.
Crear un objeto de API Java de Forms
Para poder realizar mediante programación una operación admitida por el servicio Forms, debe crear un objeto de cliente de Forms.
Hacer referencia al archivo CSS
Para procesar un formulario de HTML que utilice un archivo CSS personalizado, asegúrese de hacer referencia a un archivo CSS existente.
Procesar un formulario de HTML
Para procesar un formulario de HTML, especifique un diseño de formulario creado en Designer y guardado como archivo XDP. Seleccione un tipo de transformación de HTML. Por ejemplo, puede especificar el tipo de transformación de HTML que procesa un HTML dinámico para Internet Explorer 5.0 o posterior.
El procesamiento de un formulario de HTML también requiere valores, como los valores de URI necesarios para procesar otros tipos de formulario.
Escriba el flujo de datos del formulario en el explorador web del cliente
Cuando el servicio Forms procesa un formulario de HTML, devuelve un flujo de datos de formulario que debe escribir en el explorador web del cliente para que el formulario de HTML sea visible para el usuario.
Consulte también
Procesar un formulario de HTML que utilice un archivo CSS mediante la API de Java
Incluir archivos de biblioteca Java de AEM Forms
Estableciendo propiedades de conexión
Inicio rápido de la API del servicio de Forms
Procesar formularios PDF interactivos
Procesar un formulario de HTML que utilice un archivo CSS mediante la API de Java render-an-html-form-that-uses-a-css-file-using-the-java-api
Procesar un formulario de HTML que utilice un archivo CSS personalizado mediante la API de Forms (Java):
-
Incluir archivos de proyecto
Incluya archivos JAR de cliente, como adobe-forms-client.jar, en la ruta de clase del proyecto Java.
-
Creación de un objeto de API de Java de Forms
- Cree un objeto
ServiceClientFactory
que contenga propiedades de conexión. - Cree un objeto
FormsServiceClient
utilizando su constructor y pasando el objetoServiceClientFactory
.
- Cree un objeto
-
Hacer referencia al archivo CSS
- Crear un objeto
HTMLRenderSpec
mediante su constructor. - Para procesar el formulario de HTML que utiliza un archivo CSS personalizado, invoque el método
setCustomCSSURI
del objetoHTMLRenderSpec
y pase un valor de cadena que especifique la ubicación y el nombre del archivo CSS.
- Crear un objeto
-
Procesar un formulario de HTML
Invoque el método
(Deprecated) (Deprecated) renderHTMLForm
del objetoFormsServiceClient
y pase los siguientes valores:- Un valor de cadena que especifica el nombre del diseño del formulario, incluida la extensión del nombre de archivo. Si hace referencia a un diseño de formulario que forma parte de una aplicación de Forms, asegúrese de especificar la ruta de acceso completa, como
Applications/FormsApplication/1.0/FormsFolder/Loan.xdp
. - Valor de enumeración
TransformTo
que especifica el tipo de preferencia del HTML. Por ejemplo, para procesar un formulario de HTML compatible con el HTML dinámico para Internet Explorer 5.0 o posterior, especifiqueTransformTo.MSDHTML
. - Objeto
com.adobe.idp.Document
que contiene datos para combinar con el formulario. Si no desea combinar datos, pase un objetocom.adobe.idp.Document
vacío. - El objeto
HTMLRenderSpec
que almacena las opciones de tiempo de ejecución de HTML. - Un valor de cadena que especifica el valor del encabezado
HTTP_USER_AGENT
, comoMozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)
. - Objeto
URLSpec
que almacena los valores de URI necesarios para procesar un formulario de HTML. - Objeto
java.util.HashMap
que almacena datos adjuntos de archivos. Este es un parámetro opcional y puede especificarnull
si no desea adjuntar archivos al formulario.
El método
(Deprecated) renderHTMLForm
devuelve un objetoFormsResult
que contiene una secuencia de datos de formulario que debe escribirse en el explorador web del cliente. - Un valor de cadena que especifica el nombre del diseño del formulario, incluida la extensión del nombre de archivo. Si hace referencia a un diseño de formulario que forma parte de una aplicación de Forms, asegúrese de especificar la ruta de acceso completa, como
-
Escribir el flujo de datos del formulario en el explorador web del cliente
- Cree un objeto
com.adobe.idp.Document
invocando el métodogetOutputContent
del objetoFormsResult
. - Obtenga el tipo de contenido del objeto
com.adobe.idp.Document
invocando su métodogetContentType
. - Establezca el tipo de contenido del objeto
javax.servlet.http.HttpServletResponse
invocando su métodosetContentType
y pasando el tipo de contenido del objetocom.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étodogetOutputStream
del objetojavax.servlet.h\ttp.HttpServletResponse
. - Cree un objeto
java.io.InputStream
invocando el métodogetInputStream
del objetocom.adobe.idp.Document
. - Cree una matriz de bytes y rellénela con la secuencia de datos de formulario invocando el método
read
del objetoInputStream
y pasando la matriz de bytes como argumento. - Invoque el método
write
del objetojavax.servlet.ServletOutputStream
para enviar la secuencia de datos de formulario al explorador web del cliente. Pase la matriz de bytes al métodowrite
.
- Cree un objeto
Consulte también
Procesar formularios HTML mediante archivos CSS personalizados
Procesar un formulario de HTML que utilice un archivo CSS mediante la API de servicio web render-an-html-form-that-uses-a-css-file-using-the-web-service-api
Procesar un formulario de HTML que utilice un archivo CSS personalizado 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 de proxy Java en la ruta de clase.
-
Creación de un objeto de API de Java de Forms
Cree un objeto
FormsService
y establezca los valores de autenticación. -
Hacer referencia al archivo CSS
- Crear un objeto
HTMLRenderSpec
mediante su constructor. - Para procesar el formulario de HTML que utiliza un archivo CSS personalizado, invoque el método
setCustomCSSURI
del objetoHTMLRenderSpec
y pase un valor de cadena que especifique la ubicación y el nombre del archivo CSS.
- Crear un objeto
-
Procesar un formulario de HTML
Invoque el método
(Deprecated) renderHTMLForm
del objetoFormsService
y pase los siguientes valores:- Un valor de cadena que especifica el nombre del diseño del formulario, incluida la extensión del nombre de archivo. Si hace referencia a un diseño de formulario que forma parte de una aplicación de Forms, asegúrese de especificar la ruta de acceso completa, como
Applications/FormsApplication/1.0/FormsFolder/Loan.xdp
. - Valor de enumeración
TransformTo
que especifica el tipo de preferencia del HTML. Por ejemplo, para procesar un formulario de HTML compatible con el HTML dinámico para Internet Explorer 5.0 o posterior, especifiqueTransformTo.MSDHTML
. - Objeto
BLOB
que contiene datos para combinar con el formulario. Si no desea combinar datos, pasenull
. (Consulte Rellenado previo de Forms con diseños flexibles). - El objeto
HTMLRenderSpec
que almacena las opciones de tiempo de ejecución de HTML. - Un valor de cadena que especifica el valor del encabezado
HTTP_USER_AGENT
, comoMozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)
. Puede pasar una cadena vacía si no desea establecer este valor. - Objeto
URLSpec
que almacena los valores de URI necesarios para procesar un formulario de HTML. - Objeto
java.util.HashMap
que almacena datos adjuntos de archivos. Este es un parámetro opcional y puede especificarnull
si no desea adjuntar archivos al formulario. - Un objeto
com.adobe.idp.services.holders.BLOBHolder
vacío que se rellena con el método(Deprecated) renderHTMLForm
. Este valor de parámetro almacena el formulario procesado. - Un objeto
com.adobe.idp.services.holders.BLOBHolder
vacío que se rellena con el método(Deprecated) renderHTMLForm
. Este parámetro almacena los datos XML de salida. - Un objeto
javax.xml.rpc.holders.LongHolder
vacío que se rellena con el método(Deprecated) renderHTMLForm
. Este argumento almacena el número de páginas del formulario. - Un objeto
javax.xml.rpc.holders.StringHolder
vacío que se rellena con el método(Deprecated) renderHTMLForm
. Este argumento almacena el valor de configuración regional. - Un objeto
javax.xml.rpc.holders.StringHolder
vacío que se rellena con el método(Deprecated) renderHTMLForm
. Este argumento almacena el valor de procesamiento del HTML que se utiliza. - Un objeto
com.adobe.idp.services.holders.FormsResultHolder
vacío que contendrá los resultados de esta operación.
El método
(Deprecated) renderHTMLForm
rellena el objetocom.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. - Un valor de cadena que especifica el nombre del diseño del formulario, incluida la extensión del nombre de archivo. Si hace referencia a un diseño de formulario que forma parte de una aplicación de Forms, asegúrese de especificar la ruta de acceso completa, como
-
Escribir el flujo de datos del formulario en el explorador web del cliente
- Cree un objeto
FormResult
obteniendo el valor del miembro de datosvalue
del objetocom.adobe.idp.services.holders.FormsResultHolder
. - Cree un objeto
BLOB
que contenga datos de formulario invocando el métodogetOutputContent
del objetoFormsResult
. - Obtenga el tipo de contenido del objeto
BLOB
invocando su métodogetContentType
. - Establezca el tipo de contenido del objeto
javax.servlet.http.HttpServletResponse
invocando su métodosetContentType
y pasando el tipo de contenido del objetoBLOB
. - Cree un objeto
javax.servlet.ServletOutputStream
utilizado para escribir el flujo de datos de formulario en el explorador web del cliente invocando el métodogetOutputStream
del objetojavax.servlet.http.HttpServletResponse
. - Cree una matriz de bytes y rellénela invocando el método
getBinaryData
del objetoBLOB
. Esta tarea asigna el contenido del objetoFormsResult
a la matriz de bytes. - Invoque el método
write
del objetojavax.servlet.http.HttpServletResponse
para enviar la secuencia de datos de formulario al explorador web del cliente. Pase la matriz de bytes al métodowrite
.
- Cree un objeto
Consulte también
Procesar formularios HTML mediante archivos CSS personalizados
Invocar AEM Forms con codificación Base64