Juergen Hoeller
9a27bc9b3e
Upgrade to Jackson 2.9.5 and Hibernate Validator 6.0.9
2018-03-27 17:33:34 +02:00
Juergen Hoeller
98ad23bef8
Consistent logging of encoded path evaluation failure
...
Issue: SPR-16616
2018-03-27 17:04:59 +02:00
Juergen Hoeller
e3d0ef6015
Use Map.forEach instead of manual Map.Entry iteration wherever possible
...
Issue: SPR-16646
2018-03-27 00:38:32 +02:00
Juergen Hoeller
f59ea610df
Simplified separator check within isInvalidEncodedPath
...
Issue: SPR-16616
2018-03-27 00:23:36 +02:00
Juergen Hoeller
c1405ef140
Polishing
2018-03-21 16:12:42 +01:00
Juergen Hoeller
91b803a231
Consistent encoded path evaluation in ResourceHttpRequestHandler and co
...
Issue: SPR-16616
2018-03-21 12:02:13 +01:00
Rossen Stoyanchev
0e28bee0f1
Clean duplicate separators in resource URLs
...
Most Servlet containers do this anyway, but not all, and not
consistently for forward and backslashes.
Issue: SPR-16616
2018-03-19 17:16:03 -04:00
Juergen Hoeller
f8588e364a
AcceptHeaderLocaleResolver keeps language match among supported locales
...
Issue: SPR-16599
2018-03-16 14:17:50 +01:00
Juergen Hoeller
2096676b3f
Upgrade to Apache Johnzon 1.1.7 and JRuby 9.1.16
2018-03-15 15:43:45 +01:00
Juergen Hoeller
58011f71e9
Consistent assertions for template method result vs servlet registration
2018-03-14 18:55:50 +01:00
Juergen Hoeller
2a3f90dc7b
Upgrade to Hibernate ORM 5.2.15 and Hibernate Validator 6.0.8
2018-03-09 09:40:12 +01:00
Brian Clozel
ed7684d2b2
Don't implicitly check preconditions on PUT requests
...
Prior to this commit, the `HttpEntityMethodProcessor` would check HTTP
conditions on non-safe requests (i.e. not GET/HEAD). This would prevent
Controllers from returning `ResponseEntity` containing response headers
with updated values of `"Last-Modified"` or `ETag` once the resource has
been updated.
This commit avoids those checks for non GET/HEAD requests - this code
can still be leveraged from Controllers themselves using
`ServletWebRequest::checkNotModified` methods.
Issue: SPR-15780
2018-03-08 19:43:01 +01:00
Juergen Hoeller
139dc1d373
Polishing (collapsed if checks, consistent downcasts, refined javadoc)
2018-03-08 18:11:57 +01:00
igor-suhorukov
0f7485b01d
Polish: reorder the modifiers to comply with the Java Language Specification.
2018-03-08 17:57:47 +01:00
Rossen Stoyanchev
568c93457a
Improve ResponseBodyEmitter error handling
...
After send error, ignore calls to complete or completeWithError by the
application in the same thread (e.g. try-catch block), to avoid a
competing with an error callback from servlet container during which
the same action is taken.
Issue: SPR-16548
2018-03-07 15:25:31 -05:00
Rossen Stoyanchev
e20652009d
Improve docs on SseEmitter onComplete/onError
...
Issue: SPR-16548
2018-03-07 14:59:18 -05:00
Juergen Hoeller
934a995acb
Strong recommendation for OpenPDF 1.0.5 instead of iText 2.1.7
...
Issue: SPR-16107
(cherry picked from commit b70d400
)
2018-03-07 17:08:45 +01:00
Juergen Hoeller
f57fcdee3c
Polishing
2018-03-07 15:49:58 +01:00
Patrick0308
6f4d25a6e6
Polish "Use Java 8 forEach method on Map"
2018-03-07 15:39:58 +01:00
Brian Clozel
6d26e61ac7
Guard against invalid paths in ResourceUrlProvider
...
This commit makes sure that no `StringIndexOutOfBoundsException` is
thrown when `getForRequestUrl` is called with a URL that's shorter than
the expected context path.
Issue: SPR-16526
2018-03-05 15:26:56 +01:00
Juergen Hoeller
cd4f0935c5
Revised deprecation markers
2018-03-01 23:43:06 +01:00
Rossen Stoyanchev
36cfdf68b1
Correct log level
...
Issue: SPR-16528
2018-03-01 15:52:59 -05:00
Juergen Hoeller
bfddbbe731
Polishing
2018-03-01 01:39:06 +01:00
igor-suhorukov
83300c4b27
Polish: follow naming convention
2018-03-01 00:22:29 +01:00
igor-suhorukov
8080f56db8
Polish: "@Override" should be used on overriding and implementing methods
2018-03-01 00:15:18 +01:00
igor-suhorukov
d1ccecd021
Polish: to get rid unnecessary array creation
2018-02-27 23:37:54 +01:00
igor-suhorukov
7bce04c06c
Polish: combine catches block with same body
2018-02-27 12:51:28 +01:00
igor-suhorukov
49fd724d8f
Polish: String function use should be optimized for single characters
2018-02-25 20:48:47 +01:00
Juergen Hoeller
a5cbf5fe24
Consistent use of Collection.toArray with zero-sized array argument
...
Includes consistent use of ClassUtils.toClassArray (as non-null variant)
Issue: SPR-16523
2018-02-22 11:29:46 +01:00
Juergen Hoeller
0de36d2883
Consistent HttpMethod identity comparisons
2018-02-18 22:01:22 +01:00
Juergen Hoeller
d7cab23e6d
Consistent use of StringUtils.toStringArray
...
(cherry picked from commit 6d11b40
)
2018-02-16 20:49:17 +01:00
Juergen Hoeller
8d3264f680
Prefer List.sort(Comparator) over Collections.sort(List, Comparator)
2018-02-16 10:23:18 +01:00
igor-suhorukov
2be4985b8f
Polish: anonymous inner classes containing only one method should become lambdas,
...
use getOrDefault instead of ternary operator
2018-02-16 09:38:19 +01:00
Rossen Stoyanchev
9801afb85d
Fix compile error
...
Update places that call UriUtils to catch the right exception that is
now raised as a result of using Charet.forName.
2018-02-15 15:59:21 -05:00
Juergen Hoeller
cd8a1bdb8b
AcceptHeaderLocaleContextResolver leniently handles invalid header value
...
Also falls back to language-only match among its supported locales now.
Issue: SPR-16500
Issue: SPR-16457
2018-02-15 13:14:49 +01:00
Juergen Hoeller
6d7573262e
FormTag skips rendering of hidden fields in case of empty Map
...
Issue: SPR-16498
2018-02-14 17:41:45 +01:00
Juergen Hoeller
3b810f3544
Consistent Class array vs vararg declarations (and related polishing)
2018-02-14 14:44:00 +01:00
Juergen Hoeller
46cbdff5c3
Consistent ControllerAdvice applicability against user-declared class
...
Issue: SPR-16496
2018-02-14 14:41:16 +01:00
igor-suhorukov
711b0f50f2
Polish: replace the synchronized class "Stack" by an unsynchronized one such as "Deque".
2018-02-11 21:15:46 +01:00
igor-suhorukov
0ee505b73e
Polish: assertion arguments should be passed in the correct order,
...
use assertNull instead of assertEquals(null, value),
declare delta as double value in assertEquals
2018-02-10 17:17:28 +01:00
Stephane Nicoll
991eb4858e
Update copyright header
2018-02-09 10:16:58 +01:00
igor-suhorukov
e381514b07
Collection.isEmpty() should be used to test for emptiness
...
Closes gh-1670
2018-02-09 10:11:44 +01:00
igor-suhorukov
4c888d0f32
Polish
...
Closes gh-1669
2018-02-09 10:10:05 +01:00
Juergen Hoeller
4dc964544f
AcceptHeaderLocaleResolver falls back to language-only match among its supported locales
...
Issue: SPR-16457
2018-02-02 12:41:59 +01:00
Juergen Hoeller
7f96827ade
Polishing
2018-02-02 11:34:03 +01:00
Juergen Hoeller
4a1cc9ced7
Constructor-provided field values get recorded for failed binding result
...
Also, TypeMismatchExceptions get registered via BindingErrorProcessor.
Issue: SPR-16449
2018-02-02 11:33:56 +01:00
Rossen Stoyanchev
0ded239453
[doc] Update Spring MVC exception handling content
...
Issue: SPR-16394
2018-01-31 23:03:10 -05:00
sdeleuze
b6c78452b2
Update and improve script templating documentation
...
Issue: SPR-16447
2018-01-31 17:57:41 +01:00
Juergen Hoeller
8d42888476
Upgrade to RxJava 1.3.5 and WebJars Locator 0.35
...
Includes Rhino 1.7.8 and JRuby 9.1.15 as well.
2018-01-29 21:31:27 +01:00
Rossen Stoyanchev
97894a1c22
Improve logging dependencies for tests
2018-01-23 10:42:41 -05:00
Juergen Hoeller
91e6274b7d
Upgrade to Apache HttpClient 4.5.5 and Tomcat 8.5.27
2018-01-22 22:11:00 +01:00
Juergen Hoeller
61579ffe7b
Polishing
2018-01-22 21:34:44 +01:00
Juergen Hoeller
9d0e62ef68
Javadoc format and related polishing
2018-01-22 11:43:21 +01:00
Johnny Lim
36d42bcda4
Polish InterceptorRegistration
...
Closes gh-1647
2018-01-20 10:15:12 +01:00
Juergen Hoeller
ea5f8f5a7c
Consistently handle NoClassDefFoundError in BeanUtils and related places
...
Issue: SPR-16369
2018-01-17 20:24:57 +01:00
Juergen Hoeller
121f9e3734
BridgeMethodResolver properly resolves all declared interfaces
...
Issue: SPR-16288
2018-01-11 10:18:27 +01:00
Rossen Stoyanchev
ea73ec5c41
ResourceUrlProvider handles sanitizes double slashes
...
Issue: SPR-16296
2018-01-10 17:48:43 -05:00
Rossen Stoyanchev
846636f2b9
Polish
2018-01-08 17:35:30 -05:00
Aleksey Voronenkov
cb8ad46564
Overloaded methods in InterceptorRegistration
...
Issue: SPR-16324
2018-01-08 17:31:06 -05:00
Rossen Stoyanchev
446e7ed25c
Links from @RequestMapping to reference docs
...
Issue: SPR-16266
2018-01-08 09:29:52 -05:00
Juergen Hoeller
7a55d932f9
Build against OpenPDF 1.0.5 instead of outdated iText 2.1.7
...
Issue: SPR-16352
2018-01-08 00:26:10 +01:00
Juergen Hoeller
9d27e86951
Upgrade to Hibernate Validator 6.0.7
2017-12-21 17:00:06 +01:00
Juergen Hoeller
3a51b5a9d2
Upgrade to Hibernate Validator 6.0.6
2017-12-15 15:58:12 +01:00
Rossen Stoyanchev
fda08852ba
Take content-type from ResponseEntity unconditionally
...
From #9a894a we began using the content-type from the ResponseEntity
but cross-checking it still against the requested content type.
Arguably there isn't any purpose in cross-checking. The only possible
outcomes are: a) it's compatible or b) it's not, which would result in
406 (NOT_ACCEPTABLE). As we've been given explicitly the media type to
use, it makes little sense to send 406, ignoring the wish to use that
content type.
Issue: SPR-16251
2017-12-02 00:43:43 -05:00
Rossen Stoyanchev
3650ecc3bb
Polish
2017-11-28 22:16:07 -05:00
Juergen Hoeller
a8323f6a27
Latest dependency updates (OkHttp 3.9.1, JRuby 9.1.14, Rome 1.9)
2017-11-26 16:03:48 +01:00
sdeleuze
652e5c5584
Disable CORS credentials by default
...
Access-Control-Allow-Credentials CORS header, used to
allow cookies with CORS requests, is not set to true
anymore by default when enabling CORS with
@CrossOrigin or global CORS configuration in order to
provide a more secured default CORS configuration.
The related allowCredentials property now requires to
be set to true explicitly in order to support cookies
with CORS requests.
Issue: SPR-16130
2017-11-22 22:46:44 +01:00
Juergen Hoeller
0cc644f61f
Polishing
2017-11-21 16:34:08 +01:00
Rossen Stoyanchev
bc8e525e60
Add shared instance of ReactiveAdapterRegistry
...
Issue: SPR-16218
2017-11-20 17:02:22 -05:00
Juergen Hoeller
40dacd3c1c
Polishing
2017-11-20 22:27:07 +01:00
Juergen Hoeller
27bbb73583
Expose all HttpResource header values (even if commonly not multi-value)
...
Issue: SPR-14264
2017-11-20 15:31:34 +01:00
Juergen Hoeller
20fcefc647
ResourceHttpRequestHandler uses EmbeddedValueResolverAware
2017-11-19 21:16:29 +01:00
Juergen Hoeller
14a7da8183
Upgrade to Hibernate Validator 6.0.5
2017-11-19 21:16:10 +01:00
Rossen Stoyanchev
b1b5353b7f
Revise charset by location support for static resources
2017-11-17 12:33:58 -05:00
Juergen Hoeller
cc7c90cca5
Polishing
2017-11-16 10:52:56 +01:00
Juergen Hoeller
7af9910244
Restored support for placeholders in mvc namespace resource locations
...
With the recent charset mechanism in place, we cannot rely on implicit placeholder parsing during String-to-Resource conversion anymore.
2017-11-16 09:36:23 +01:00
Juergen Hoeller
7697b398d5
Polishing
2017-11-14 17:11:16 +01:00
Juergen Hoeller
b5cedd43eb
Consistent and efficient access to BeanDefinition argument values
...
Issue: SPR-16192
2017-11-13 21:51:11 +01:00
Juergen Hoeller
72f20e8d4f
Polishing
2017-11-11 00:37:50 +01:00
Rossen Stoyanchev
9a894ab61e
Use ResponseEntity Content-Type as producible media type
...
Issue: SPR-16172
2017-11-10 15:05:03 -05:00
Juergen Hoeller
780993ce75
Polishing
2017-11-10 20:21:26 +01:00
Rossen Stoyanchev
369d33c3d0
Support charset config by (static) resource location
...
This commit adds support for configuring static resource locations
with a charset to be applied to relative paths.
2017-11-09 13:15:06 -05:00
Juergen Hoeller
a75dd2dd3e
Consistent getDateHeader checks in spring-webmvc unit tests
...
Issue: SPR-16160
2017-11-05 17:00:18 +01:00
Juergen Hoeller
e5c8dc0d65
MessageSource.getMessage returns null default message as-is (again)
...
Issue: SPR-16127
2017-10-31 11:06:42 +01:00
Juergen Hoeller
9bab7a2708
Upgrade to Java Activation Framework 1.2 for test runtime
...
Includes upgrade to Hibernate Validator 6.0.4 (where applicable)
Issue: SPR-16115
2017-10-25 19:18:10 +02:00
Juergen Hoeller
9efdadcdca
Compatibility with OpenPDF as alternative to iText 2.1.7
...
Issue: SPR-16107
2017-10-24 13:14:53 +02:00
Rossen Stoyanchev
1cc5afe24b
Fix lines over 120 characters
...
https://github.com/spring-projects/spring-framework/wiki/Spring-Framework-Code-Style#line-wrapping
2017-10-20 16:42:26 -04:00
Juergen Hoeller
e17ad551f3
Latest dependency updates (RxJava 1.3.3, Hibernate ORM 5.2.12, Hibernate Validator 5.4.2 & 6.0.3)
2017-10-20 16:16:06 +02:00
Juergen Hoeller
d1fac36e3e
SchedulingConfigurer and JmsListenerConfigurer respect @Order
...
Issue: SPR-16090
2017-10-20 16:10:12 +02:00
Rossen Stoyanchev
ab92754a2e
@MatrixVariable resolvers for WebFlux
...
The information was already parsed and available in a request attribute
but until now there were no argument resolvers to expose it.
Issue: SPR-16005
2017-10-19 21:01:38 -04:00
Juergen Hoeller
9df6f3e6b8
Polishing
2017-10-18 20:21:49 +02:00
Juergen Hoeller
bec1fc1852
ModelAttributeMethodProcessor detects re-enabled binding declaration
...
Issue: SPR-16083
2017-10-18 12:31:22 +02:00
Rossen Stoyanchev
32d78e60b6
Update information on WebApplicationContext hierarchy
...
Issue: SPR-16041
2017-10-17 21:49:57 -04:00
Rossen Stoyanchev
cd634633d8
MockMvc re-uses response instance on async dispatch
...
MockMvc now properly detects the presence of an AsyncContext and
re-uses the response instance used to start it.
This commit also includes a minor fix in
ResponseBodyEmitterReturnValueHandler to ensure it does not disable
ETag related content buffering for reactive return values that do not
result in streaming (e.g. single value or collections).
Issue: SPR-16067
2017-10-17 16:57:35 -04:00
Juergen Hoeller
3d1023be8c
Polishing
2017-10-17 11:56:30 +02:00
Juergen Hoeller
ef6aef9107
Allow PropertyEditor conversion as fallback for enums
...
Issue: SPR-16082
2017-10-17 11:49:54 +02:00
Juergen Hoeller
c3cf0840b7
Polishing
2017-10-16 15:34:39 +02:00
Juergen Hoeller
d611486978
HandlerMappingIntrospector.getHandlerMappings() never returns null
2017-10-12 15:31:11 +02:00
Brian Clozel
1356bd4359
Share HandlerInterceptors in ResourceHandlerMapping
...
Prior to this commit, the Resource `HandlerMapping` configured by
`@EnableSpringMvc` would be set up with only one custom
`HandlerInterceptor` (the one exposing the `ResourceUrlProvider` for
resolving URLs of static resources).
This behavior is not consistent with the rest of the default
configuration which leverages the interceptors configured against the
interceptor registry (with possible user-provided ones).
This change allows to register interceptors against resource handling;
this can be useful for metrics purposes, as in
spring-projects/spring-boot#10335 .
Issue: SPR-16034
2017-10-10 22:57:52 +02:00
Juergen Hoeller
699fde91db
Polishing
2017-10-10 22:18:09 +02:00