Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new
Bedrock Mission!

Learn more

View all

Sign in to view all badges

Marketo forms list not loaded during authoring

jayv25585659
Level 6
Level 6

as above. The drop-down list that supposed to list all the Marketo forms is empty. All I get is a message that says "Unable to load forms"

setup:

  • AEM 6.5.6
  • ACS commons 4.8.6 (release version) (in our AMS hosted environment) | 4.8.6 (release version),5.0.4 (release version), 5.0.5-snapshot and 5.0.7-snapshot (just downloaded yesterday via git clone) (in my local instance)

Things I did to setup Marketo in AEM:

  • I followed this guide => https://adobe-consulting-services.github.io/acs-aem-commons/features/marketo-form/index.html
  • Because I cannot added the embed built-in/core component directly, I had to create a new component and extend the embed component. My new component has this => sling:resourceSuperType = core/wcm/components/embed/v1/embed
  • I have created a Marketo config via Settings => Cloud services => Marketo. This created a new node/entry in /conf/myapp/settings/cloudconfigs/Marketo
  • I also have to setup the design mode configuration for my component (configuration located in /apps/settings/wcm/designs/myapp)
  • I looked at the logs and it seems the problem is the ACS-commons/Marketo class specifically (seems the class cannot see my config even if it's there)

from ACS-commons - MarketoFormDataSource class

 

MarketoClientConfigurationManager cfgMgr = request.adaptTo(MarketoClientConfigurationManager.class);
if (cfgMgr != null) {
config = cfgMgr.getConfiguration();
}
if (config == null) {
String msg = String.format("No Marketo configuration found for resource '%s'",
request.getRequestPathInfo().getSuffix());
throw new RepositoryException(msg);
}

 

--------------

from ACS-commons - MarketoClientConfigurationManagerImpl class (this class/function returns a null - i.e. cannot see my config)

 

return configRsrcRslvr.getResourceCollection(resource, "settings", "cloudconfigs").stream().filter(c -> {
boolean matches = "/apps/acs-commons/templates/utilities/marketocloudconfig"
.equals(c.getValueMap().get("jcr:content/cq:template", ""));
log.debug("Resource: {} matches: {}", c, matches);
return matches;
}).findFirst().map(c -> c.getChild(JcrConstants.JCR_CONTENT)).map(c -> c.adaptTo(MarketoClientConfiguration.class))
.orElse(null);
}

 

 

 

 

 

 

0 Replies