From 6d4d394139fd9bf9b8628f4763cb20e95f4860f5 Mon Sep 17 00:00:00 2001 From: Jim Myers Date: Thu, 1 Feb 2024 17:13:11 -0500 Subject: [PATCH] make citation servlet alt PID aware --- .../java/edu/harvard/iq/dataverse/CitationServlet.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/main/java/edu/harvard/iq/dataverse/CitationServlet.java b/src/main/java/edu/harvard/iq/dataverse/CitationServlet.java index c9bdf150fa3..bdfb1da7787 100644 --- a/src/main/java/edu/harvard/iq/dataverse/CitationServlet.java +++ b/src/main/java/edu/harvard/iq/dataverse/CitationServlet.java @@ -36,7 +36,14 @@ protected void processRequest(HttpServletRequest request, HttpServletResponse re String persistentId = request.getParameter("persistentId"); if (persistentId != null) { - DvObject dob = dvObjectService.findByGlobalId(PidUtil.parseAsGlobalID(persistentId)); + GlobalId pid = PidUtil.parseAsGlobalID(persistentId); + DvObject dob = dvObjectService.findByGlobalId(pid); + if (dob == null) { + dob = dvObjectService.findByAltGlobalId(pid, DvObject.DType.Dataset); + if (dob == null) { + dob = dvObjectService.findByAltGlobalId(pid, DvObject.DType.DataFile); + } + } if (dob != null) { if (dob instanceof Dataset) { response.sendRedirect("dataset.xhtml?persistentId=" + persistentId);