Merge branch '6.1.x'
# Conflicts: # framework-platform/framework-platform.gradle
This commit is contained in:
		
						commit
						e1cf203295
					
				|  | @ -9,15 +9,15 @@ javaPlatform { | |||
| dependencies { | ||||
| 	api(platform("com.fasterxml.jackson:jackson-bom:2.15.4")) | ||||
| 	api(platform("io.micrometer:micrometer-bom:1.14.0-M2")) | ||||
| 	api(platform("io.netty:netty-bom:4.1.111.Final")) | ||||
| 	api(platform("io.netty:netty-bom:4.1.112.Final")) | ||||
| 	api(platform("io.netty:netty5-bom:5.0.0.Alpha5")) | ||||
| 	api(platform("io.projectreactor:reactor-bom:2024.0.0-M5")) | ||||
| 	api(platform("io.rsocket:rsocket-bom:1.1.3")) | ||||
| 	api(platform("org.apache.groovy:groovy-bom:4.0.22")) | ||||
| 	api(platform("org.apache.logging.log4j:log4j-bom:2.21.1")) | ||||
| 	api(platform("org.assertj:assertj-bom:3.26.0")) | ||||
| 	api(platform("org.eclipse.jetty:jetty-bom:12.0.11")) | ||||
| 	api(platform("org.eclipse.jetty.ee10:jetty-ee10-bom:12.0.11")) | ||||
| 	api(platform("org.eclipse.jetty:jetty-bom:12.0.12")) | ||||
| 	api(platform("org.eclipse.jetty.ee10:jetty-ee10-bom:12.0.12")) | ||||
| 	api(platform("org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.8.1")) | ||||
| 	api(platform("org.jetbrains.kotlinx:kotlinx-serialization-bom:1.6.3")) | ||||
| 	api(platform("org.junit:junit-bom:5.10.3")) | ||||
|  | @ -56,9 +56,9 @@ dependencies { | |||
| 		api("io.r2dbc:r2dbc-spi:1.0.0.RELEASE") | ||||
| 		api("io.reactivex.rxjava3:rxjava:3.1.8") | ||||
| 		api("io.smallrye.reactive:mutiny:1.10.0") | ||||
| 		api("io.undertow:undertow-core:2.3.14.Final") | ||||
| 		api("io.undertow:undertow-servlet:2.3.14.Final") | ||||
| 		api("io.undertow:undertow-websockets-jsr:2.3.14.Final") | ||||
| 		api("io.undertow:undertow-core:2.3.15.Final") | ||||
| 		api("io.undertow:undertow-servlet:2.3.15.Final") | ||||
| 		api("io.undertow:undertow-websockets-jsr:2.3.15.Final") | ||||
| 		api("io.vavr:vavr:0.10.4") | ||||
| 		api("jakarta.activation:jakarta.activation-api:2.0.1") | ||||
| 		api("jakarta.annotation:jakarta.annotation-api:2.0.0") | ||||
|  | @ -103,10 +103,10 @@ dependencies { | |||
| 		api("org.apache.httpcomponents.client5:httpclient5:5.3.1") | ||||
| 		api("org.apache.httpcomponents.core5:httpcore5-reactive:5.2.5") | ||||
| 		api("org.apache.poi:poi-ooxml:5.2.5") | ||||
| 		api("org.apache.tomcat.embed:tomcat-embed-core:10.1.25") | ||||
| 		api("org.apache.tomcat.embed:tomcat-embed-websocket:10.1.25") | ||||
| 		api("org.apache.tomcat:tomcat-util:10.1.25") | ||||
| 		api("org.apache.tomcat:tomcat-websocket:10.1.25") | ||||
| 		api("org.apache.tomcat.embed:tomcat-embed-core:10.1.28") | ||||
| 		api("org.apache.tomcat.embed:tomcat-embed-websocket:10.1.28") | ||||
| 		api("org.apache.tomcat:tomcat-util:10.1.28") | ||||
| 		api("org.apache.tomcat:tomcat-websocket:10.1.28") | ||||
| 		api("org.aspectj:aspectjrt:1.9.22.1") | ||||
| 		api("org.aspectj:aspectjtools:1.9.22.1") | ||||
| 		api("org.aspectj:aspectjweaver:1.9.22.1") | ||||
|  |  | |||
|  | @ -1,5 +1,5 @@ | |||
| /* | ||||
|  * Copyright 2002-2021 the original author or authors. | ||||
|  * Copyright 2002-2024 the original author or authors. | ||||
|  * | ||||
|  * Licensed under the Apache License, Version 2.0 (the "License"); | ||||
|  * you may not use this file except in compliance with the License. | ||||
|  | @ -30,13 +30,13 @@ import org.springframework.util.StringUtils; | |||
|  * @author Juergen Hoeller | ||||
|  * @since 26.05.2003 | ||||
|  * @see java.util.Locale | ||||
|  * @see org.springframework.util.StringUtils#parseLocaleString | ||||
|  * @see org.springframework.util.StringUtils#parseLocale | ||||
|  */ | ||||
| public class LocaleEditor extends PropertyEditorSupport { | ||||
| 
 | ||||
| 	@Override | ||||
| 	public void setAsText(String text) { | ||||
| 		setValue(StringUtils.parseLocaleString(text)); | ||||
| 		setValue(StringUtils.parseLocale(text)); | ||||
| 	} | ||||
| 
 | ||||
| 	@Override | ||||
|  |  | |||
|  | @ -648,6 +648,10 @@ class CustomEditorTests { | |||
| 		assertThat(localeEditor.getValue()).isEqualTo(Locale.CANADA); | ||||
| 		assertThat(localeEditor.getAsText()).isEqualTo("en_CA"); | ||||
| 
 | ||||
| 		localeEditor = new LocaleEditor(); | ||||
| 		localeEditor.setAsText("zh-Hans"); | ||||
| 		assertThat(localeEditor.getValue()).isEqualTo(Locale.forLanguageTag("zh-Hans")); | ||||
| 
 | ||||
| 		localeEditor = new LocaleEditor(); | ||||
| 		assertThat(localeEditor.getAsText()).isEmpty(); | ||||
| 	} | ||||
|  |  | |||
|  | @ -55,8 +55,9 @@ public class BindingReflectionHintsRegistrar { | |||
| 
 | ||||
| 	private static final String JACKSON_ANNOTATION = "com.fasterxml.jackson.annotation.JacksonAnnotation"; | ||||
| 
 | ||||
| 	private static final boolean jacksonAnnotationPresent = ClassUtils.isPresent(JACKSON_ANNOTATION, | ||||
| 			BindingReflectionHintsRegistrar.class.getClassLoader()); | ||||
| 	private static final boolean jacksonAnnotationPresent = | ||||
| 			ClassUtils.isPresent(JACKSON_ANNOTATION, BindingReflectionHintsRegistrar.class.getClassLoader()); | ||||
| 
 | ||||
| 
 | ||||
| 	/** | ||||
| 	 * Register the necessary reflection hints to bind the specified types. | ||||
|  | @ -96,12 +97,10 @@ public class BindingReflectionHintsRegistrar { | |||
| 						} | ||||
| 					} | ||||
| 					if (clazz.isEnum()) { | ||||
| 						typeHint.withMembers( | ||||
| 								MemberCategory.INVOKE_PUBLIC_CONSTRUCTORS, | ||||
| 						typeHint.withMembers(MemberCategory.INVOKE_PUBLIC_CONSTRUCTORS, | ||||
| 								MemberCategory.INVOKE_PUBLIC_METHODS); | ||||
| 					} | ||||
| 					typeHint.withMembers( | ||||
| 							MemberCategory.DECLARED_FIELDS, | ||||
| 					typeHint.withMembers(MemberCategory.DECLARED_FIELDS, | ||||
| 							MemberCategory.INVOKE_DECLARED_CONSTRUCTORS); | ||||
| 					for (Method method : clazz.getMethods()) { | ||||
| 						String methodName = method.getName(); | ||||
|  | @ -138,8 +137,7 @@ public class BindingReflectionHintsRegistrar { | |||
| 	} | ||||
| 
 | ||||
| 	private void registerPropertyHints(ReflectionHints hints, Set<Type> seen, @Nullable Method method, int parameterIndex) { | ||||
| 		if (method != null && method.getDeclaringClass() != Object.class && | ||||
| 				method.getDeclaringClass() != Enum.class) { | ||||
| 		if (method != null && method.getDeclaringClass() != Object.class && method.getDeclaringClass() != Enum.class) { | ||||
| 			hints.registerMethod(method, ExecutableMode.INVOKE); | ||||
| 			MethodParameter methodParameter = MethodParameter.forExecutable(method, parameterIndex); | ||||
| 			Type methodParameterType = methodParameter.getGenericParameterType(); | ||||
|  | @ -214,6 +212,7 @@ public class BindingReflectionHintsRegistrar { | |||
| 		}); | ||||
| 	} | ||||
| 
 | ||||
| 
 | ||||
| 	/** | ||||
| 	 * Inner class to avoid a hard dependency on Kotlin at runtime. | ||||
| 	 */ | ||||
|  |  | |||
|  | @ -1,5 +1,5 @@ | |||
| /* | ||||
|  * Copyright 2002-2023 the original author or authors. | ||||
|  * Copyright 2002-2024 the original author or authors. | ||||
|  * | ||||
|  * Licensed under the Apache License, Version 2.0 (the "License"); | ||||
|  * you may not use this file except in compliance with the License. | ||||
|  | @ -393,7 +393,7 @@ public class CacheControl { | |||
| 	} | ||||
| 
 | ||||
| 	private void appendDirective(StringBuilder builder, String value) { | ||||
| 		if (builder.length() > 0) { | ||||
| 		if (!builder.isEmpty()) { | ||||
| 			builder.append(", "); | ||||
| 		} | ||||
| 		builder.append(value); | ||||
|  |  | |||
|  | @ -245,8 +245,7 @@ public final class WebAsyncManager { | |||
| 	} | ||||
| 
 | ||||
| 	/** | ||||
| 	 * Mark the {@link WebAsyncManager} as wrapping a | ||||
| 	 * multipart async request. | ||||
| 	 * Mark the {@link WebAsyncManager} as wrapping a multipart async request. | ||||
| 	 * @since 6.1.12 | ||||
| 	 */ | ||||
| 	public void setMultipartRequestParsed(boolean isMultipart) { | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue