Servlet code to download dam images
Using the below code it downloads the image but when I open that image it is corrupted.
Please help me find a way to resolve this issue
(
service = Servlet.class,
property = { SLING_SERVLET_METHODS + "=" + HttpConstants.METHOD_GET,
SLING_SERVLET_PATHS + "=/bin/assetdownloader"})
public class AssetDownloader extends SlingAllMethodsServlet {
/**
*
*/
private static final long serialVersionUID = 1L;
AssetDownloadService assetDownloadService;
protected void doGet(SlingHttpServletRequest request, SlingHttpServletResponse response) throws ServletException, IOException {
try {
ResourceResolver resourceResolver = request.getResourceResolver();
Resource assetResource = resourceResolver.getResource(request.getParameter("download"));
Set<Resource> assetSet = new HashSet<>();
assetSet.add(assetResource);
response.setContentType("application/force-download");
response.setHeader("Content-Disposition", "attachment; filename="+assetResource.getName());
assetDownloadService.assetDownload(assetResource, assetSet, true, false, false, null, null, assetResource.getName(), StringUtils.EMPTY, response.getOutputStream());
} catch (Exception e) {
e.printStackTrace();
}
}
}