Merge branch '6.1.x'

This commit is contained in:
Sébastien Deleuze 2024-03-22 17:46:35 +01:00
commit cf8810042a
31 changed files with 41 additions and 2 deletions

View File

@ -86,6 +86,7 @@ class ResourcesBeanDefinitionParser implements BeanDefinitionParser {
@Override
@Nullable
public BeanDefinition parse(Element element, ParserContext context) {
Object source = context.extractSource(element);

View File

@ -60,6 +60,7 @@ class ViewControllerBeanDefinitionParser implements BeanDefinitionParser {
@Override
@Nullable
@SuppressWarnings("unchecked")
public BeanDefinition parse(Element element, ParserContext parserContext) {
Object source = parserContext.extractSource(element);

View File

@ -29,6 +29,7 @@ import org.springframework.beans.factory.support.RootBeanDefinition;
import org.springframework.beans.factory.xml.BeanDefinitionParser;
import org.springframework.beans.factory.xml.ParserContext;
import org.springframework.core.Ordered;
import org.springframework.lang.Nullable;
import org.springframework.util.xml.DomUtils;
import org.springframework.web.servlet.view.BeanNameViewResolver;
import org.springframework.web.servlet.view.ContentNegotiatingViewResolver;
@ -68,6 +69,7 @@ public class ViewResolversBeanDefinitionParser implements BeanDefinitionParser {
@Override
@Nullable
public BeanDefinition parse(Element element, ParserContext context) {
Object source = context.extractSource(element);
context.pushContainingComponent(new CompositeComponentDefinition(element.getTagName(), source));

View File

@ -168,6 +168,7 @@ class WebMvcConfigurerComposite implements WebMvcConfigurer {
}
@Override
@Nullable
public Validator getValidator() {
Validator selected = null;
for (WebMvcConfigurer configurer : this.delegates) {

View File

@ -82,6 +82,7 @@ abstract class AbstractServerResponse extends ErrorHandlingServerResponse {
}
@Override
@Nullable
public ModelAndView writeTo(HttpServletRequest request, HttpServletResponse response,
Context context) throws ServletException, IOException {

View File

@ -264,6 +264,7 @@ final class DefaultEntityResponseBuilder<T> implements EntityResponse.Builder<T>
}
@Override
@Nullable
protected ModelAndView writeToInternal(HttpServletRequest servletRequest,
HttpServletResponse servletResponse, Context context)
throws ServletException, IOException {
@ -363,6 +364,7 @@ final class DefaultEntityResponseBuilder<T> implements EntityResponse.Builder<T>
}
@Override
@Nullable
protected ModelAndView writeToInternal(HttpServletRequest servletRequest, HttpServletResponse servletResponse,
Context context) throws ServletException, IOException {
@ -416,6 +418,7 @@ final class DefaultEntityResponseBuilder<T> implements EntityResponse.Builder<T>
}
@Override
@Nullable
protected ModelAndView writeToInternal(HttpServletRequest servletRequest, HttpServletResponse servletResponse,
Context context) throws ServletException, IOException {

View File

@ -35,6 +35,7 @@ import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpMethod;
import org.springframework.http.HttpStatusCode;
import org.springframework.http.MediaType;
import org.springframework.lang.Nullable;
import org.springframework.util.Assert;
import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap;
@ -229,6 +230,7 @@ class DefaultServerResponseBuilder implements ServerResponse.BodyBuilder {
}
@Override
@Nullable
protected ModelAndView writeToInternal(HttpServletRequest request, HttpServletResponse response,
Context context) throws Exception {

View File

@ -483,6 +483,7 @@ public abstract class AbstractHandlerMethodMapping<T> extends AbstractHandlerMap
}
@Override
@Nullable
protected CorsConfiguration getCorsConfiguration(Object handler, HttpServletRequest request) {
CorsConfiguration corsConfig = super.getCorsConfiguration(handler, request);
if (handler instanceof HandlerMethod handlerMethod) {
@ -600,6 +601,7 @@ public abstract class AbstractHandlerMethodMapping<T> extends AbstractHandlerMap
/**
* Return handler methods by mapping name. Thread-safe for concurrent use.
*/
@Nullable
public List<HandlerMethod> getHandlerMethodsByMappingName(String mappingName) {
return this.nameLookup.get(mappingName);
}

View File

@ -500,6 +500,7 @@ public class HandlerMappingIntrospector
}
@Override
@Nullable
public Object getAttribute(String name) {
return this.attributes.get(name);
}
@ -532,6 +533,7 @@ public class HandlerMappingIntrospector
}
@Override
@Nullable
public PathPatternParser getPatternParser() {
return this.delegate.getPatternParser();
}

View File

@ -88,6 +88,7 @@ public class FixedLocaleResolver extends AbstractLocaleContextResolver {
return getDefaultLocale();
}
@Override
@Nullable
public TimeZone getTimeZone() {
return getDefaultTimeZone();
}

View File

@ -149,6 +149,7 @@ public class ParameterizableViewController extends AbstractController {
* @see #getViewName()
*/
@Override
@Nullable
protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response)
throws Exception {

View File

@ -119,6 +119,7 @@ public class ServletForwardingController extends AbstractController implements B
@Override
@Nullable
protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response)
throws Exception {

View File

@ -159,6 +159,7 @@ public class ServletWrappingController extends AbstractController
* @see jakarta.servlet.Servlet#service(jakarta.servlet.ServletRequest, jakarta.servlet.ServletResponse)
*/
@Override
@Nullable
protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response)
throws Exception {

View File

@ -61,7 +61,7 @@ public class ResponseStatusExceptionResolver extends AbstractHandlerExceptionRes
@Override
public void setMessageSource(MessageSource messageSource) {
public void setMessageSource(@Nullable MessageSource messageSource) {
this.messageSource = messageSource;
}

View File

@ -106,6 +106,7 @@ public abstract class RequestMappingInfoHandlerMapping extends AbstractHandlerMe
* @return an info in case of a match; or {@code null} otherwise.
*/
@Override
@Nullable
protected RequestMappingInfo getMatchingMapping(RequestMappingInfo info, HttpServletRequest request) {
return info.getMatchingCondition(request);
}
@ -243,6 +244,7 @@ public abstract class RequestMappingInfoHandlerMapping extends AbstractHandlerMe
* but not by consumable/producible media types
*/
@Override
@Nullable
protected HandlerMethod handleNoMatch(
Set<RequestMappingInfo> infos, String lookupPath, HttpServletRequest request) throws ServletException {

View File

@ -37,6 +37,7 @@ public class ContinuationHandlerMethodArgumentResolver implements HandlerMethodA
}
@Override
@Nullable
public Object resolveArgument(MethodParameter parameter, @Nullable ModelAndViewContainer mavContainer,
NativeWebRequest webRequest, @Nullable WebDataBinderFactory binderFactory) throws Exception {

View File

@ -112,6 +112,7 @@ public class ExtendedServletRequestDataBinder extends ServletRequestDataBinder {
}
@Override
@Nullable
protected Object getRequestParameter(String name, Class<?> type) {
Object value = super.getRequestParameter(name, type);
if (value == null) {

View File

@ -829,6 +829,7 @@ public class RequestMappingHandlerAdapter extends AbstractHandlerMethodAdapter
}
@Override
@Nullable
protected ModelAndView handleInternal(HttpServletRequest request,
HttpServletResponse response, HandlerMethod handlerMethod) throws Exception {

View File

@ -523,6 +523,7 @@ public class RequestMappingHandlerMapping extends RequestMappingInfoHandlerMappi
}
@Override
@Nullable
public RequestMatchResult match(HttpServletRequest request, String pattern) {
Assert.state(getPatternParser() == null, "This HandlerMapping uses PathPatterns.");
RequestMappingInfo info = RequestMappingInfo.paths(pattern).options(this.config).build();
@ -535,6 +536,7 @@ public class RequestMappingHandlerMapping extends RequestMappingInfoHandlerMappi
}
@Override
@Nullable
protected CorsConfiguration initCorsConfiguration(Object handler, Method method, RequestMappingInfo mappingInfo) {
HandlerMethod handlerMethod = createHandlerMethod(handler, method);
Class<?> beanType = handlerMethod.getBeanType();

View File

@ -142,6 +142,7 @@ public class RequestResponseBodyMethodProcessor extends AbstractMessageConverter
* converter to read the content with.
*/
@Override
@Nullable
public Object resolveArgument(MethodParameter parameter, @Nullable ModelAndViewContainer mavContainer,
NativeWebRequest webRequest, @Nullable WebDataBinderFactory binderFactory) throws Exception {
@ -167,6 +168,7 @@ public class RequestResponseBodyMethodProcessor extends AbstractMessageConverter
}
@Override
@Nullable
protected <T> Object readWithMessageConverters(NativeWebRequest webRequest, MethodParameter parameter,
Type paramType) throws IOException, HttpMediaTypeNotSupportedException, HttpMessageNotReadableException {

View File

@ -253,6 +253,7 @@ public class ServletInvocableHandlerMethod extends InvocableHandlerMethod {
* Bridge to controller method-level annotations.
*/
@Override
@Nullable
public <A extends Annotation> A getMethodAnnotation(Class<A> annotationType) {
return ServletInvocableHandlerMethod.this.getMethodAnnotation(annotationType);
}

View File

@ -85,6 +85,7 @@ public class ServletRequestMethodArgumentResolver implements HandlerMethodArgume
}
@Override
@Nullable
public Object resolveArgument(MethodParameter parameter, @Nullable ModelAndViewContainer mavContainer,
NativeWebRequest webRequest, @Nullable WebDataBinderFactory binderFactory) throws Exception {

View File

@ -95,6 +95,7 @@ public class JspAwareRequestContext extends RequestContext {
* request, session or application scope; if not found, returns {@code null}.
*/
@Override
@Nullable
protected TimeZone getFallbackTimeZone() {
if (jstlPresent) {
TimeZone timeZone = JstlPageLocaleResolver.getJstlTimeZone(getPageContext());

View File

@ -395,6 +395,7 @@ public class MessageTag extends HtmlEscapingAwareTag implements ArgumentAware {
/**
* Return default exception message.
*/
@Nullable
protected String getNoSuchMessageExceptionDescription(NoSuchMessageException ex) {
return ex.getMessage();
}

View File

@ -180,6 +180,7 @@ public abstract class AbstractMultiCheckedElementTag extends AbstractCheckedElem
* since we're dealing with multiple HTML elements.
*/
@Override
@Nullable
protected String resolveId() throws JspException {
Object id = evaluate("id", getId());
if (id != null) {

View File

@ -364,6 +364,7 @@ public class OptionTag extends AbstractHtmlElementBodyTag implements BodyTag {
}
@Override
@Nullable
protected String autogenerateId() throws JspException {
return null;
}

View File

@ -323,6 +323,7 @@ public class OptionsTag extends AbstractHtmlElementTag {
* since we're dealing with multiple HTML elements.
*/
@Override
@Nullable
protected String resolveId() throws JspException {
Object id = evaluate("id", getId());
if (id != null) {

View File

@ -200,6 +200,7 @@ public class ResourceBundleViewResolver extends AbstractCachingViewResolver
@Override
@Nullable
protected View loadView(String viewName, Locale locale) throws Exception {
BeanFactory factory = initFactory(locale);
try {

View File

@ -461,6 +461,7 @@ public class UrlBasedViewResolver extends AbstractCachingViewResolver implements
* @see #requiredViewClass
*/
@Override
@Nullable
protected View createView(String viewName, Locale locale) throws Exception {
// If this resolver is not supposed to handle the given view,
// return null to pass on to the next resolver in the chain.
@ -545,6 +546,7 @@ public class UrlBasedViewResolver extends AbstractCachingViewResolver implements
* @see org.springframework.beans.factory.InitializingBean#afterPropertiesSet
*/
@Override
@Nullable
protected View loadView(String viewName, Locale locale) throws Exception {
AbstractUrlBasedView view = buildView(viewName);
View result = applyLifecycleMethods(viewName, view);

View File

@ -119,6 +119,7 @@ public class XmlViewResolver extends AbstractCachingViewResolver
}
@Override
@Nullable
protected View loadView(String viewName, Locale locale) throws BeansException {
BeanFactory factory = initFactory();
try {

View File

@ -306,7 +306,7 @@ public class XsltView extends AbstractUrlBasedView {
* @return the adapted XSLT Source
* @throws IllegalArgumentException if the given Object is not of a supported type
*/
protected Source convertSource(Object sourceObject) throws Exception {
protected Source convertSource(@Nullable Object sourceObject) throws Exception {
if (sourceObject instanceof Source source) {
return source;
}