diff --git a/spring-context/src/main/java/org/springframework/validation/DataBinder.java b/spring-context/src/main/java/org/springframework/validation/DataBinder.java index 3ab1cf202eaac20932b3929e76639677a4af8ea1..7538ece1da792a39d682c9f24650235bc093b87c 100644 --- a/spring-context/src/main/java/org/springframework/validation/DataBinder.java +++ b/spring-context/src/main/java/org/springframework/validation/DataBinder.java @@ -283,12 +283,14 @@ public class DataBinder implements PropertyEditorRegistry, TypeConverter { protected AbstractPropertyBindingResult createDirectFieldBindingResult() { DirectFieldBindingResult result = new DirectFieldBindingResult(getTarget(), getObjectName(), isAutoGrowNestedPaths()); + if (this.conversionService != null) { result.initConversion(this.conversionService); } if (this.messageCodesResolver != null) { result.setMessageCodesResolver(this.messageCodesResolver); } + return result; } diff --git a/spring-websocket/src/main/java/org/springframework/web/socket/server/jetty/JettyRequestUpgradeStrategy.java b/spring-websocket/src/main/java/org/springframework/web/socket/server/jetty/JettyRequestUpgradeStrategy.java index 0e9a7aefa98f7034e624581f4b50d9a9313e2780..0b5eaefbe81e5fa81fd528f6cdb36dc97e72635c 100644 --- a/spring-websocket/src/main/java/org/springframework/web/socket/server/jetty/JettyRequestUpgradeStrategy.java +++ b/spring-websocket/src/main/java/org/springframework/web/socket/server/jetty/JettyRequestUpgradeStrategy.java @@ -19,9 +19,9 @@ package org.springframework.web.socket.server.jetty; import java.io.IOException; import java.security.Principal; import java.util.ArrayList; -import java.util.LinkedList; import java.util.List; import java.util.Map; +import java.util.Set; import javax.servlet.ServletContext; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -162,8 +162,9 @@ public class JettyRequestUpgradeStrategy implements RequestUpgradeStrategy, Serv } private List buildWebSocketExtensions() { - List result = new ArrayList<>(); - for (String name : this.factoryAdapter.getFactory().getExtensionFactory().getExtensionNames()) { + Set names = this.factoryAdapter.getFactory().getExtensionFactory().getExtensionNames(); + List result = new ArrayList<>(names.size()); + for (String name : names) { result.add(new WebSocketExtension(name)); } return result; @@ -217,10 +218,10 @@ public class JettyRequestUpgradeStrategy implements RequestUpgradeStrategy, Serv this.handler = handler; this.selectedProtocol = protocol; if (CollectionUtils.isEmpty(extensions)) { - this.extensionConfigs = new LinkedList<>(); + this.extensionConfigs = new ArrayList<>(0); } else { - this.extensionConfigs = new ArrayList<>(); + this.extensionConfigs = new ArrayList<>(extensions.size()); for (WebSocketExtension extension : extensions) { this.extensionConfigs.add(new WebSocketToJettyExtensionConfigAdapter(extension)); }