Leiste mit Community-Erfolgen erweitern.

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

Mark Solution

Diese Konversation wurde aufgrund von Inaktivität geschlossen. Bitte erstellen Sie einen neuen Post.

GELÖST

How do I fetch the number of versions present in an asset in AEM programmatically?

Avatar

Level 2

Hi everyone,

 

I have a requirement to fetch the number of versions present in an Asset using a servlet.

Can anyone please provide some references?

 

Thanks in advance.

1 Akzeptierte Lösung

Avatar

Korrekte Antwort von
Community Advisor

Hello @KaibalyaJena_123 

As I understood your requirement, you need the number of versions created for a given asset.

 

You can use VersionHistory Interface to get all the versions and their details. Please refer below doc link for available methods.

https://developer.adobe.com/experience-manager/reference-materials/spec/jsr170/javadocs/jcr-2.0/java...


Do let me know if you face any issues or you have different requirement?
Hope it helps.

Lösung in ursprünglichem Beitrag anzeigen

3 Antworten

Avatar

Korrekte Antwort von
Community Advisor

Hello @KaibalyaJena_123 

As I understood your requirement, you need the number of versions created for a given asset.

 

You can use VersionHistory Interface to get all the versions and their details. Please refer below doc link for available methods.

https://developer.adobe.com/experience-manager/reference-materials/spec/jsr170/javadocs/jcr-2.0/java...


Do let me know if you face any issues or you have different requirement?
Hope it helps.

Avatar

Community Advisor

Hello @KaibalyaJena_123 

 

 

     eg:
     AssetVersionManager versionManager = resolver.adaptTo(AssetVersionManager.class);

     // to get existing versions
     Iterator<AssetVersion> versions = versionManager.listVersions("/path/to/asset/document.pdf");
     ...

 

you can readily use the AssetVersionManager API.

- Get path of asset in servlet

- Get resourceResolver from Request

- Adapt to AssetVersionManager 

- List all versions of the related asset./

 

 

Details are available on https://developer.adobe.com/experience-manager/reference-materials/6-5/javadoc/com/adobe/granite/ass...


Aanchal Sikka

Avatar

Employee

If you want you use JCR API then below code snippet you can use -

final VersionManager versionManager = node.getSession().getWorkspace().getVersionManager();
final VersionHistory versionHistory = versionManager.getVersionHistory(node.getPath());
final VersionIterator versionIter = versionHistory.getAllVersions();

 if you want you use Resource API then you can use 

AssetVersionManager versionManager = resolver.adaptTo(AssetVersionManager.class);
Iterator<AssetVersion> versions = versionManager.listVersions("/content/dam/sample.jpg");