Expand my Community achievements bar.

Submissions are now open for the 2026 Adobe Experience Maker Awards.

Image Field Logo not rendering in PDF from XDP in AEM as a cloud Forms

Avatar

Level 2

Hello All,

 

We are trying to render a PDF from XDP using output service which has a logo. We are passing ImageName in the xml data node and which should pick logo from the crx- content dam path. This is working fine in aem forms 6.5 on premise and the same is not working in aem forms on cloud. Here is the js code we are using in the initialize event of the image field.

var hostUrl = "crx///content/dam/myproject/images/logos/";

var imageName = xfa.resolveNode("xfa.record.ImageName");

if(imageName!==null ){

this.logo.value.image.href= hostUrl +imageName.value+".jpg";

}

Topics

Topics help categorize Community content and increase your ability to discover relevant content.

2 Replies

Avatar

Employee

Hi @satish_puli,

As far as I remember, the crx:/// protocol is no longer supported for security and architectural reasons. Cloud Service utilizes Asset APIs/CDA (Content Delivery API) for exposing DAM assets, and direct repository calls like crx:/// aren’t allowed.


The image field in your XDP cannot resolve the crx:///content/dam/myproject/images/logos/xyz.jpg reference, so the logo never loads. To fix the issue, Instead of crx:///, construct an HTTP(S) URL pointing to the published asset (e.g., via Asset Share or directly from DAM's public URL):

var baseUrl = "https://author-pXXXX-eYYYY.adobeaemcloud.com/content/dam/myproject/images/logos/";
var imageName = xfa.resolveNode("xfa.record.ImageName");
if (imageName !== null) {
    this.logo.value.image.href = baseUrl + imageName.value + ".jpg";
}

You can also choose author or publish based on where the Output Service runs and asset availability. You can include the base64-encoded image in the XML if really dynamic, but it’s not efficient for large or many images.

Thanks
Pranay



Avatar

Level 2

Thank you @Pranay_M  for your prompt response. We are trying to use the same way as you suggested by giving the absolute path as below script. Still we are seeing the blank image and the image is not getting loaded into the image field. Can you pls suggest different way to load the logo. Thanks in advance.

var baseUrl = "https://author-pXXXX-eYYYY.adobeaemcloud.com/content/dam/myproject/images/logos/";
var imageName = xfa.resolveNode("xfa.record.ImageName");
if (imageName !== null) {
    this.logo.value.image.href = baseUrl + imageName.value + ".jpg";
}