From 80686cc60dc0bccb7a42fddefefcf13dcabdd80a Mon Sep 17 00:00:00 2001 From: Andreas Fitzek Date: Tue, 19 Aug 2014 11:45:45 +0200 Subject: Fixed #18, Get Parameters in external urls are not discarded --- .../src/main/java/at/gv/egiz/pdfas/web/servlets/ErrorPage.java | 6 ++++++ .../java/at/gv/egiz/pdfas/web/servlets/ProvidePDFServlet.java | 8 +++++++- 2 files changed, 13 insertions(+), 1 deletion(-) (limited to 'pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets') diff --git a/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets/ErrorPage.java b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets/ErrorPage.java index 12693797..8e59ff1c 100644 --- a/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets/ErrorPage.java +++ b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets/ErrorPage.java @@ -24,6 +24,7 @@ package at.gv.egiz.pdfas.web.servlets; import java.io.IOException; +import java.net.URL; import java.net.URLEncoder; import javax.servlet.ServletException; @@ -37,6 +38,7 @@ import org.slf4j.LoggerFactory; import at.gv.egiz.pdfas.web.config.WebConfiguration; import at.gv.egiz.pdfas.web.helper.HTMLFormater; import at.gv.egiz.pdfas.web.helper.PdfAsHelper; +import at.gv.egiz.pdfas.web.helper.UrlParameterExtractor; /** * Servlet implementation class ErrorPage @@ -93,6 +95,10 @@ public class ErrorPage extends HttpServlet { template = template.replace("##ERROR_URL##", errorURL); + URL url = new URL(errorURL); + String extraParams = UrlParameterExtractor.buildParameterFormString(url); + template = template.replace("##ADD_PARAMS##", extraParams); + String target = PdfAsHelper.getInvokeTarget(request, response); if(target == null) { diff --git a/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets/ProvidePDFServlet.java b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets/ProvidePDFServlet.java index 1ee96602..7909e926 100644 --- a/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets/ProvidePDFServlet.java +++ b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets/ProvidePDFServlet.java @@ -24,6 +24,7 @@ package at.gv.egiz.pdfas.web.servlets; import java.io.IOException; +import java.net.URL; import java.net.URLEncoder; import javax.servlet.ServletException; @@ -37,6 +38,7 @@ import org.slf4j.LoggerFactory; import at.gv.egiz.pdfas.common.exceptions.PdfAsException; import at.gv.egiz.pdfas.web.config.WebConfiguration; import at.gv.egiz.pdfas.web.helper.PdfAsHelper; +import at.gv.egiz.pdfas.web.helper.UrlParameterExtractor; /** * Servlet implementation class ProvidePDF @@ -95,7 +97,11 @@ public class ProvidePDFServlet extends HttpServlet { // Redirect Browser String template = PdfAsHelper.getInvokeRedirectTemplateSL(); template = template.replace("##INVOKE_URL##", invokeURL); - + + URL url = new URL(invokeURL); + String extraParams = UrlParameterExtractor.buildParameterFormString(url); + template = template.replace("##ADD_PARAMS##", extraParams); + byte[] signedData = PdfAsHelper.getSignedPdf(request, response); if (signedData != null) { template = template.replace("##PDFLENGTH##", -- cgit v1.2.3