Entorno
AEM 6.5 Forms en JEE
Problema
Si se actualiza a los formularios AEM 6.5:
- Un formulario HTML5 incluido en un flujo de trabajo que contenga un proceso Formulario de envío predeterminado no se enviará.
- Un formulario HTML5 incluido en un flujo de trabajo que contenga un proceso Renderización predeterminada no se enviará.
Causa
Actualización en la versión JBoss de JBoss 6.4.5 (usado en AEM 6.3 Forms) y JBoss 7.0.6 (usado en AEM 6.4 Forms) a JBoss 7.1.2 en AEM 6.5 Forms.
Como resultado, el envío o la representación de formularios HTML5 falla debido a una actualización en Tipo de contenido utilizada en el proceso Formulario de envío predeterminado u Agente usuario utilizado en el proceso Renderización predeterminada.
Solución
Realice los siguientes pasos como solución para el fallo debido al proceso del formulario de envío predeterminado:
- Abra el proceso Formulario de envío predeterminado en Workbench.
- Cree una nueva variable de tipo de datos de cadena. Por ejemplo, camelCaseContentType.
- En el paso Detectar tipo de contenido, asigne “/process_data/@camelCaseContentType” con “/process_data/httpHeaders[@id='Content-Type']”.
- Añada la siguiente condición en la fila “tipo de contenido se refiere a formulario html”:
string(contains(lower-case(/process_data/@camelCaseContentType), 'application/x-www-form-urlencoded')) - Guarde e implemente el proceso.
Realice los siguientes pasos como solución para el fallo debido al proceso Renderización predeterminada:
- Abra el proceso Renderización predeterminada en Workbench.
- Cree una nueva variable de tipo de datos de cadena. Por ejemplo, camelCaseUserAgent.
- En el paso Detectar agente usuario, asigne “/process_data/@camelCaseUserAgent” con “/process_data/httpHeaders[@id='User-Agent']”.
- Añada la siguiente condición en la fila “agente usuario contiene ipad o android”:
string(contains(lower-case(/process_data/@camelCaseUserAgent), 'msapphost')) = 'true'
string(contains(lower-case(/process_data/@camelCaseUserAgent), 'android')) = 'true'
string(contains(lower-case(/process_data/@camelCaseUserAgent), 'ipad')) = 'true' - Guarde e implemente el proceso.