|
18 | 18 |
|
19 | 19 | import java.util.Collections;
|
20 | 20 | import java.util.Map;
|
21 |
| -import java.util.TreeMap; |
22 | 21 |
|
23 | 22 | import reactor.core.publisher.Mono;
|
24 | 23 |
|
25 |
| -import org.springframework.http.codec.multipart.Part; |
26 | 24 | import org.springframework.lang.Nullable;
|
27 | 25 | import org.springframework.ui.Model;
|
28 |
| -import org.springframework.util.MultiValueMap; |
29 | 26 | import org.springframework.validation.support.BindingAwareConcurrentModel;
|
30 | 27 | import org.springframework.web.bind.support.WebBindingInitializer;
|
31 | 28 | import org.springframework.web.bind.support.WebExchangeDataBinder;
|
@@ -127,21 +124,9 @@ public ExtendedWebExchangeDataBinder(@Nullable Object target, String objectName)
|
127 | 124 |
|
128 | 125 | @Override
|
129 | 126 | public Mono<Map<String, Object>> getValuesToBind(ServerWebExchange exchange) {
|
130 |
| - Map<String, String> vars = exchange.getAttributeOrDefault( |
131 |
| - HandlerMapping.URI_TEMPLATE_VARIABLES_ATTRIBUTE, Collections.emptyMap()); |
132 |
| - MultiValueMap<String, String> queryParams = exchange.getRequest().getQueryParams(); |
133 |
| - Mono<MultiValueMap<String, String>> formData = exchange.getFormData(); |
134 |
| - Mono<MultiValueMap<String, Part>> multipartData = exchange.getMultipartData(); |
135 |
| - |
136 |
| - return Mono.zip(Mono.just(vars), Mono.just(queryParams), formData, multipartData) |
137 |
| - .map(tuple -> { |
138 |
| - Map<String, Object> result = new TreeMap<>(); |
139 |
| - result.putAll(tuple.getT1()); |
140 |
| - tuple.getT2().forEach((key, values) -> addBindValue(result, key, values)); |
141 |
| - tuple.getT3().forEach((key, values) -> addBindValue(result, key, values)); |
142 |
| - tuple.getT4().forEach((key, values) -> addBindValue(result, key, values)); |
143 |
| - return result; |
144 |
| - }); |
| 127 | + return super.getValuesToBind(exchange).doOnNext(map -> |
| 128 | + map.putAll(exchange.<Map<String, String>>getAttributeOrDefault( |
| 129 | + HandlerMapping.URI_TEMPLATE_VARIABLES_ATTRIBUTE, Collections.emptyMap()))); |
145 | 130 | }
|
146 | 131 | }
|
147 | 132 |
|
|
0 commit comments