diff options
| author | Jakob Heher <jakob.heher@iaik.tugraz.at> | 2026-06-10 14:16:17 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-06-10 14:16:17 +0200 |
| commit | afbe8f6aee8d7554b52aa4aa24561731715695da (patch) | |
| tree | 58f54225dedbd76adf152b9c2d246066e124e609 | |
| parent | 68165ce0bb979891fbbb6db7eb3d58c31aa1223a (diff) | |
| download | pdf-as-4-afbe8f6aee8d7554b52aa4aa24561731715695da.tar.gz pdf-as-4-afbe8f6aee8d7554b52aa4aa24561731715695da.tar.bz2 pdf-as-4-afbe8f6aee8d7554b52aa4aa24561731715695da.zip | |
deployment fixes for external tomcat (#93)
5 files changed, 15 insertions, 8 deletions
diff --git a/pdf-as-web/build.gradle b/pdf-as-web/build.gradle index a5a56450..2fdc0376 100644 --- a/pdf-as-web/build.gradle +++ b/pdf-as-web/build.gradle @@ -77,7 +77,7 @@ dependencies { api group: 'jakarta.jws', name: 'jakarta.jws-api', version: jakartaJwsVersion compileOnly group: 'jakarta.servlet', name: 'jakarta.servlet-api', version: jakartaServletVersion implementation group: 'org.springframework.boot', name: 'spring-boot-starter-webmvc', version: springBootVersion - providedRuntime group: 'org.springframework.boot', name: 'spring-boot-starter-tomcat', version: springBootVersion + providedRuntime group: 'org.springframework.boot', name: 'spring-boot-starter-tomcat-runtime', version: springBootVersion implementation group: 'org.springframework.boot', name: 'spring-boot-starter-actuator', version: springBootVersion implementation 'org.springdoc:springdoc-openapi-starter-webmvc-ui:3.0.3' providedRuntime group: 'org.apache.tomcat.embed', name: 'tomcat-embed-jasper', version: tomcatVersion diff --git a/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/helper/PdfAsParameterExtractor.java b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/helper/PdfAsParameterExtractor.java index 7178e38d..a0c407c9 100644 --- a/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/helper/PdfAsParameterExtractor.java +++ b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/helper/PdfAsParameterExtractor.java @@ -269,7 +269,7 @@ public class PdfAsParameterExtractor { return (String)request.getAttribute(PARAM_SIG_IDX); } - public static String getResonseMode(HttpServletRequest request) { + public static String getResponseMode(HttpServletRequest request) { return (String)request.getAttribute(PARAM_RESPONSE_MODE); } } diff --git a/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets/ExternSignServlet.java b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets/ExternSignServlet.java index 3b39ee16..546b07ac 100644 --- a/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets/ExternSignServlet.java +++ b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/servlets/ExternSignServlet.java @@ -336,7 +336,7 @@ public class ExternSignServlet extends HttpServlet { String locale = PdfAsParameterExtractor.getLocale(request); PdfAsHelper.setLocale(request, response, locale); - String responseMode = PdfAsParameterExtractor.getResonseMode(request); + String responseMode = PdfAsParameterExtractor.getResponseMode(request); PdfAsHelper.setResponseMode(request, response, responseMode); String filename = PdfAsParameterExtractor.getFilename(request); diff --git a/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/web_xml_bridges/ContextXmlBridge.java b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/web_xml_bridges/ContextXmlBridge.java index c9e06fb1..853920e0 100644 --- a/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/web_xml_bridges/ContextXmlBridge.java +++ b/pdf-as-web/src/main/java/at/gv/egiz/pdfas/web/web_xml_bridges/ContextXmlBridge.java @@ -1,18 +1,18 @@ package at.gv.egiz.pdfas.web.web_xml_bridges; import lombok.val; -import org.apache.tomcat.util.http.Rfc6265CookieProcessor; -import org.springframework.boot.tomcat.TomcatContextCustomizer; +import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; -/** translates the tomcat context.xml file */ +/** translates the tomcat context.xml file for spring embedded tomcat */ @Configuration +@ConditionalOnClass(name = "org.springframework.boot.tomcat.TomcatContextCustomizer") public class ContextXmlBridge { @Bean - public TomcatContextCustomizer sameSiteNone() { + public org.springframework.boot.tomcat.TomcatContextCustomizer sameSiteNone() { return ctx -> { - val processor = new Rfc6265CookieProcessor(); + val processor = new org.apache.tomcat.util.http.Rfc6265CookieProcessor(); processor.setSameSiteCookies("none"); ctx.setCookieProcessor(processor); }; diff --git a/pdf-as-web/src/main/webapp/META-INF/context.xml b/pdf-as-web/src/main/webapp/META-INF/context.xml new file mode 100644 index 00000000..166b6b7e --- /dev/null +++ b/pdf-as-web/src/main/webapp/META-INF/context.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- this is for external tomcat deployments (spring-provided tomcat uses ContextXmlBridge instead) --> +<Context> + <CookieProcessor + className="org.apache.tomcat.util.http.Rfc6265CookieProcessor" + sameSiteCookies="none" /> +</Context> |
