無法搭配特定版本的Experience Manager Forms JDK使用Oracle unable-to-use-forms-with-certain-versions-of-oracle-jdk

此問題適用於下列版本:

  • Experience Manager 6.3 Forms
  • Experience Manager 6.4 Forms
  • Experience Manager 6.5 Forms

問題 issue

使用者遇到下列例外狀況:
Caused by: javax.xml.xpath.XPathExpressionException: javax.xml.transform.TransformerException: JAXP0801002: the compiler encountered an XPath expression containing '101' operators that exceeds the '100' limit set by 'FEATURE_SECURE_PROCESSING'.

原因 reason

當您使用Oracle JDK (Java開發套件)版本高於或等於下列版本執行Experience Manager Forms時,會發生例外情況:

上述和更新版本的Java包括JVM (Java虛擬機器器)中的新XML處理限制,這會造成某些Forms特定作業失敗。

因應措施 workaround

  1. 停止您的Experience Manager Forms伺服器。

  2. 為您的應用程式伺服器設定下列JVM引數:

    -Djdk.xml.xpathExprGrpLimit=100
    -Djdk.xml.xpathExprOpLimit=10000
    -Djdk.xml.xpathTotalOpLimit=10000

    它會將JVM中的系統屬性設定為相當高的值,這樣就不會達到預設限制。

  3. 啟動您的Experience Manager Forms伺服器。

recommendation-more-help
51c6a92d-a39d-46d7-8e3e-2db9a31c06a2