parent
							
								
									489fc83c53
								
							
						
					
					
						commit
						eba12f4ebf
					
				|  | @ -21,6 +21,6 @@ nativeBuildToolsVersion=0.10.5 | |||
| snakeYamlVersion=2.4 | ||||
| springFrameworkVersion=6.2.3 | ||||
| springFramework60xVersion=6.0.23 | ||||
| tomcatVersion=10.1.34 | ||||
| tomcatVersion=10.1.36 | ||||
| 
 | ||||
| kotlin.stdlib.default.dependency=false | ||||
|  |  | |||
|  | @ -2544,10 +2544,6 @@ bom { | |||
| 			versionRange "[11.0.0-M1,)" | ||||
| 			because "it exceeds our Jakarte EE 10 baseline" | ||||
| 		} | ||||
| 		prohibit { | ||||
| 			versionRange "[10.1.35,10.1.36]" | ||||
| 			because "https://bz.apache.org/bugzilla/show_bug.cgi?id=69576 and related problems in 10.1.36" | ||||
| 		} | ||||
| 		group("org.apache.tomcat") { | ||||
| 			modules = [ | ||||
| 				"tomcat-annotations-api", | ||||
|  |  | |||
|  | @ -36,6 +36,7 @@ import org.apache.catalina.connector.Connector; | |||
| import org.apache.catalina.core.AprLifecycleListener; | ||||
| import org.apache.catalina.loader.WebappLoader; | ||||
| import org.apache.catalina.startup.Tomcat; | ||||
| import org.apache.catalina.webresources.StandardRoot; | ||||
| import org.apache.commons.logging.Log; | ||||
| import org.apache.commons.logging.LogFactory; | ||||
| import org.apache.coyote.AbstractProtocol; | ||||
|  | @ -165,6 +166,9 @@ public class TomcatReactiveWebServerFactory extends AbstractReactiveWebServerFac | |||
| 	protected void prepareContext(Host host, TomcatHttpHandlerAdapter servlet) { | ||||
| 		File docBase = createTempDir("tomcat-docbase"); | ||||
| 		TomcatEmbeddedContext context = new TomcatEmbeddedContext(); | ||||
| 		StandardRoot resourcesRoot = new StandardRoot(); | ||||
| 		resourcesRoot.setReadOnly(true); | ||||
| 		context.setResources(resourcesRoot); | ||||
| 		context.setPath(""); | ||||
| 		context.setDocBase(docBase.getAbsolutePath()); | ||||
| 		context.addLifecycleListener(new Tomcat.FixContextListener()); | ||||
|  |  | |||
|  | @ -238,9 +238,10 @@ public class TomcatServletWebServerFactory extends AbstractServletWebServerFacto | |||
| 	protected void prepareContext(Host host, ServletContextInitializer[] initializers) { | ||||
| 		File documentRoot = getValidDocumentRoot(); | ||||
| 		TomcatEmbeddedContext context = new TomcatEmbeddedContext(); | ||||
| 		if (documentRoot != null) { | ||||
| 			context.setResources(new LoaderHidingResourceRoot(context)); | ||||
| 		} | ||||
| 		WebResourceRoot resourceRoot = (documentRoot != null) ? new LoaderHidingResourceRoot(context) | ||||
| 				: new StandardRoot(context); | ||||
| 		resourceRoot.setReadOnly(true); | ||||
| 		context.setResources(resourceRoot); | ||||
| 		context.setName(getContextPath()); | ||||
| 		context.setDisplayName(getDisplayName()); | ||||
| 		context.setPath(getContextPath()); | ||||
|  | @ -814,7 +815,7 @@ public class TomcatServletWebServerFactory extends AbstractServletWebServerFacto | |||
| 
 | ||||
| 		@Override | ||||
| 		public void lifecycleEvent(LifecycleEvent event) { | ||||
| 			if (event.getType().equals(Lifecycle.CONFIGURE_START_EVENT)) { | ||||
| 			if (event.getType().equals(Lifecycle.BEFORE_INIT_EVENT)) { | ||||
| 				addResourceJars(getUrlsOfJarsWithMetaInfResources()); | ||||
| 			} | ||||
| 		} | ||||
|  | @ -834,6 +835,9 @@ public class TomcatServletWebServerFactory extends AbstractServletWebServerFacto | |||
| 					addResourceSet(url.toString()); | ||||
| 				} | ||||
| 			} | ||||
| 			for (WebResourceSet resources : this.context.getResources().getJarResources()) { | ||||
| 				resources.setReadOnly(true); | ||||
| 			} | ||||
| 		} | ||||
| 
 | ||||
| 		private void addResourceSet(String resource) { | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue