包含“默认提交”进程和“默认呈现”进程的工作流程没有在 JBOSS 7 上提交或呈现 HTML5 表单

环境

JEE 上的 AEM 6.5 表单

问题

如果升级到 AEM 6.5 表单:

  • 在含有“默认提交表单”进程的工作流程中,提交 HTML5 表单失败。
  • 在含有“默认呈现”进程的工作流程中,呈现 HTML5 表单失败。

原因

将 JBoss 版本从 JBoss 6.4.5(用于 AEM 6.3 表单)和 JBoss 7.0.6(用于 AEM 6.4 表单)更新至 JBoss 7.1.2(用于 AEM 6.5 表单)。

在执行上述更新后,由于“默认提交表单”进程中使用的 Content-Type 发生更新,或者,由于“默认呈现”进程中使用的 User-Agent 发生更新,导致提交或呈现 HTML5 表单失败。

解决方案

执行以下步骤,解决由于“默认提交表单”进程导致的失败问题:

  1. 在工作台中打开默认提交表单进程。
  2. 新建一个字符串数据类型的变量。例如,camelCaseContentType
  3. 在“检测内容类型”步骤中,建立“/process_data/@camelCaseContentType”与“/process_data/httpHeaders[@id='Content-Type']”的映射关系。
  4. 在“content type refers to html form”行中,添加以下条件:
    string(contains(lower-case(/process_data/@camelCaseContentType), 'application/x-www-form-urlencoded'))
  5. 保存并部署此进程。

执行以下步骤,解决由于“默认呈现”进程导致的失败问题:

  1. 在工作台中打开默认呈现进程。
  2. 新建一个字符串数据类型的变量。例如,camelCaseUserAgent
  3. 在“检测用户代理”步骤中,建立“/process_data/@camelCaseUserAgent”与“/process_data/httpHeaders[@id='User-Agent']”的映射关系。
  4. 在“user agent contains ipad or 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'
  5. 保存并部署此进程。

 

Adobe 徽标

登录到您的帐户