From f9f1f3bf1f230d5cb7ef086b86221d55e52df322 Mon Sep 17 00:00:00 2001 From: "francesco.mangiacrapa" Date: Tue, 23 Apr 2024 12:19:01 +0200 Subject: [PATCH] updated export --- .../resolver/services/GeoportalExporter.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/main/java/org/gcube/datatransfer/resolver/services/GeoportalExporter.java b/src/main/java/org/gcube/datatransfer/resolver/services/GeoportalExporter.java index ab49f53..1bc34bb 100644 --- a/src/main/java/org/gcube/datatransfer/resolver/services/GeoportalExporter.java +++ b/src/main/java/org/gcube/datatransfer/resolver/services/GeoportalExporter.java @@ -147,11 +147,14 @@ public class GeoportalExporter { try { LOG.info("Serving request as getAsURL..."); FileReference pdfRef = exportAsPDF(req, ucdID, projectID, null, context, user); - return Response.ok(pdfRef.getStorageVolatileURL().toURI()).build(); - } catch (URISyntaxException e) { + String theURL = pdfRef.getStorageVolatileURL().toString(); + LOG.info("returning URL {}", theURL); + return Response.ok(theURL).build(); + } catch (Exception e) { LOG.error("Error on performing export by url", e); throw ExceptionManager.internalErrorException(req, - "Sorry, error occurred when generating the project URL", this.getClass(), helpURI); + "Sorry, error occurred when generating the project URL. Error is: " + e.getMessage(), + this.getClass(), helpURI); } } @@ -185,6 +188,7 @@ public class GeoportalExporter { String entity = HTML_Page.entityHTMLMessage("Exporting as PDF...", "The project with id: " + projectID, true, serviceViewPDF_URL); + LOG.info("returning waiting HTML page"); return Response.ok(entity).encoding("UTF-8").header(ConstantsResolver.CONTENT_TYPE, "text/html") .build(); } else { @@ -193,7 +197,7 @@ public class GeoportalExporter { // returning as stream InputStream input = pdfRef.getStorageVolatileURL().openStream(); StreamingOutput so = new SingleFileStreamingOutput(input); - + LOG.info("returning project streaming..."); return Response.ok(so) .header(ConstantsResolver.CONTENT_DISPOSITION, "inline; filename=\"" + pdfRef.getFileName() + "\"")