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

Adobe Summit 2023 [19th to 23rd March, Las Vegas and Virtual] | Complete AEM Session & Lab list

Upload GIF image into dam programmatically AEM

Avatar

Level 2

Hi,

I'm trying to upload external gif image programmatically using com.day.cq.dam.api.AssetManager api but it is not working as expected. i'm able to upload external jpg and png images.

example : Fat Cat Success GIF - Find & Share on GIPHY

For above gif content type is html not gif  is that is the issue?.

Can anyone help me with this, please?

Thanks,

Santosh

4 Replies

Avatar

Community Advisor

Hi,

For me below code is working for jpeg and gif.

aem63app-repo/UploadAssets.java at master · arunpatidar02/aem63app-repo · GitHub

I am succesfully able to upload gif and used in page as well.

for image you've share is video, not an gif. You can try Busy Chis Sweet Home GIF - Find & Share on GIPHY

Screen Shot 2018-08-07 at 2.52.35 PM.png

Thanks
Arun

Avatar

Level 10

Uploading Assets typically involve writing a Sling Servlet and use the AEM Asset Manager API. See this article - Adobe Experience Manager Help | Uploading files to Adobe Experience Manager DAM using AssetManager A...

Avatar

Level 9

Santhosh,

Can you tell us what is not working as per your expectation? Does post request not go through? Any error log you see in the response?

Avatar

Level 1

Hi please try this it worked for me


Map<String, Object> param = new HashMap<>();
param.put(ResourceResolverFactory.SUBSERVICE, "aemuser");
ResourceResolver resolver = resolverFactory.getServiceResourceResolver(param);

String imageUrl = "https://lh4.googleusercontent.com/cjh5t_mnSYuW_RnVI922M9kjxW8leJGp8nCwWdBjOQxz_RzNkuvVIHaxzDrZ-neDiF...";
URL url = new URL(imageUrl);
InputStream is = url.openStream();
AssetManager assetMgr = resolver.adaptTo(AssetManager.class);
String newFile = "/content/dam/folderpath/1gi_NJv844BNNRwBXzN5ccgOgnVPHqnh6.jpg";
assetMgr.createAsset(newFile, is, "image/jpeg", true);// mention  meme type for me it is jpeg