From a724d4581f936b57dd421d7fb8fed006d6c828d2 Mon Sep 17 00:00:00 2001 From: Phillip Webb Date: Tue, 16 Dec 2014 15:12:09 -0800 Subject: [PATCH] Set Jetty temp dir Ensure that the system temp directory is passed to the Jetty WebAppContext. This prevents `jsp` folders from appearing in the current directory. Fixes gh-2169 --- .../jetty/JettyEmbeddedServletContainerFactory.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/spring-boot/src/main/java/org/springframework/boot/context/embedded/jetty/JettyEmbeddedServletContainerFactory.java b/spring-boot/src/main/java/org/springframework/boot/context/embedded/jetty/JettyEmbeddedServletContainerFactory.java index 38f2f85103b..6fdd307dd55 100644 --- a/spring-boot/src/main/java/org/springframework/boot/context/embedded/jetty/JettyEmbeddedServletContainerFactory.java +++ b/spring-boot/src/main/java/org/springframework/boot/context/embedded/jetty/JettyEmbeddedServletContainerFactory.java @@ -221,6 +221,7 @@ public class JettyEmbeddedServletContainerFactory extends protected final void configureWebAppContext(WebAppContext context, ServletContextInitializer... initializers) { Assert.notNull(context, "Context must not be null"); + context.setTempDirectory(getTempDirectory()); setExtendedListenerTypes(context); if (this.resourceLoader != null) { context.setClassLoader(this.resourceLoader.getClassLoader()); @@ -246,6 +247,11 @@ public class JettyEmbeddedServletContainerFactory extends postProcessWebAppContext(context); } + private File getTempDirectory() { + String temp = System.getProperty("java.io.tmpdir"); + return (temp == null ? null : new File(temp)); + } + private void setExtendedListenerTypes(WebAppContext context) { try { context.getServletContext().setExtendedListenerTypes(true);