Skip to content

Links with Adobe Campaign scriptles are not externalized #2387

Open
@buuhuu

Description

@buuhuu

Bug Report

Current Behavior
When a link uses adobe campaign scriptlets the externaliser fails with an exception:

25.11.2022 10:34:09.959 *ERROR* [[0:0:0:0:0:0:0:1] [1669368834327] GET /content/campaigns/core-email-components-examples/master/e-mail-campaign/e-maill-page.campaign.content.json HTTP/1.1] com.adobe.cq.wcm.core.
components.internal.link.DefaultPathProcessor error
java.lang.IllegalArgumentException: Illegal character in query at index 82: /content/campaigns/core-email-components-examples/master/e-mail-campaign.html?foo=<%= targetData.link %>
        at java.base/java.net.URI.create(URI.java:883)
        at com.day.cq.commons.impl.ExternalizerImpl.externalLink(ExternalizerImpl.java:324) [com.day.cq.cq-commons:5.12.16]
        at com.day.cq.commons.impl.ExternalizerImpl.publishLink(ExternalizerImpl.java:358) [com.day.cq.cq-commons:5.12.16]
        at com.adobe.cq.wcm.core.components.internal.link.DefaultPathProcessor.externalize(DefaultPathProcessor.java:164) [com.adobe.cq.core.wcm.components.core:2.21.0]

Expected behavior/code
Externalization should work

Environment

  • AEM version and patch level (e.g. AEM 6.5 SP16 load1)
  • Core Components version (e.g. 2.21.0)
  • JRE version (e.g. Java(TM) SE Runtime Environment (build 1.8.0_152-b16))

Possible Solution
Adobe Campaign scriptlets should be masked before passing the link to the externalizer.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions