Adobe Experience Manager Forms JEEでのドキュメントマッピング中に無効なCoercionExceptionが発生する

Adobe Experience Manager Forms JEEでは、ワークベンチプロセスがorg.w3c.dom.Documentを想定する変数にcom.adobe.idp.Document値を割り当てようとすると、InvalidCoercionExceptionで失敗する可能性があります。 これは、プロセスマッピングまたはカスタムコードが互換性のないドキュメントタイプを使用し、Workbenchがサポートされていない暗黙的な変換を試みる場合に発生します。 この問題を修正するには、プロセス変数、サービス入力、出力、およびカスタムコードで使用されるドキュメントタイプを調整します。

説明 description

環境

Adobe Experience Manager(AEM)Forms JEE 6.5.0

問題/症状

  • 一部のレコードでWorkbench プロセスが失敗し、次のエラーが発生します。

    com.adobe.idp.dsc.util.InvalidCoercionException: Cannot coerce object: of type: com.adobe.idp.Document to type: interface org.w3c.dom.Document

  • プロセス出力変数(Out1.xmlなど)はcom.adobe.idp.Documentとして指定されます。

  • 受け取り側のWorkbench変数またはダウンストリームサービスにはorg.w3c.dom.Documentが必要です。

  • WorkbenchはSetValueService中に暗黙的な型の変換を試みます。 この変換はサポートされていないため、プロセスは例外をスローします。

原因

Workbench プロセスマッピングまたはカスタムコードにデータタイプの不一致が存在します。 W3C XML ドキュメント (org.w3c.dom.Document)を想定する変数にAdobe ドキュメント タイプ (com.adobe.idp.Document)が割り当てられます。 Workbenchでは、これらのタイプ間の暗黙的な変換はサポートされていないため、例外が発生します。

解決策 resolution

問題を解決するには、次の手順に従います。

  1. Workbench プロセスを確認して、com.adobe.idp.Documentが割り当てられるか、org.w3c.dom.Documentを期待する変数またはサービスにマッピングされる場所を特定します。

  2. ソース変数とターゲット変数の両方が同じドキュメントタイプ(com.adobe.idp.Documentまたはorg.w3c.dom.Document)を使用するように、データタイプを調整します。

  3. 異なるタイプが必要な場合:

    • ドキュメントストリームをXMLとして読み取り、解析して、com.adobe.idp.Documentをorg.w3c.dom.Documentに変換します。
    • 必要に応じて、下流のAdobe Forms操作のためにorg.w3c.dom.Documentをcom.adobe.idp.Documentに戻します。
    • これら2つのタイプ間の直接キャストまたは暗黙的な割り当てを削除します。
  4. 更新したWorkbench アプリケーションまたはプロセスを再デプロイします。

  5. 代表的な入力文書でプロセスをテストします。

  6. InvalidCoercionExceptionが発生しなくなったことを確認します。

recommendation-more-help
experience-cloud-kcs-help-kbarticles