Spring Buildmaster
c08e31b7d6
Release version 5.2.5.RELEASE
2020-03-24 11:33:07 +00:00
Brian Clozel
d97eabba2f
Do not cache multipart MIME types in cache
...
Prior to this commmit, "mutipart/*" MIME types would be cached by the
`MimeTypeUtils` LRU cache. Since those MIME types are likely to have
random boundaries in them, they can waste space in the LRU cache.
This is not improving things since we're parsing them anyway.
This commit skips the caching step for all "multipart" MIME types.
Fixes gh-24767
2020-03-24 10:59:05 +01:00
Sébastien Deleuze
1cd0e720f7
Specify that Kotlin code samples leverage kotlin-allopen
2020-03-24 10:31:57 +01:00
Sébastien Deleuze
60dca027e7
Add Kotlin documentation and tests for @DynamicPropertySource
...
See gh-24540
2020-03-24 10:08:37 +01:00
Juergen Hoeller
2209e7cb92
Reuse empty class array constant in ClassUtils
...
Closes gh-24221
2020-03-24 00:08:43 +01:00
Juergen Hoeller
fdc60311ed
Avoid unnecessary trace logging in ProxyFactoryBean
...
Closes gh-24669
2020-03-24 00:07:40 +01:00
Christoph Dreis
1c6dda3ca4
Improve performance of StringUtils#cleanPath
2020-03-23 23:25:15 +01:00
Sam Brannen
ac0363c94e
Document @DynamicPropertySource support in the reference manual
...
Closes gh-24540
2020-03-23 20:43:38 +01:00
Sam Brannen
a90716522c
Include Testcontainers in Further Resources section
2020-03-23 20:05:58 +01:00
Rossen Stoyanchev
b2fa574879
Upgrade to Reactor Dysprosium-SR6
...
Closes gh-24725
2020-03-23 17:36:39 +00:00
Juergen Hoeller
910d2788e9
Polishing
2020-03-23 18:02:55 +01:00
Juergen Hoeller
2e23cf32ce
Clarify name generation responsibility for PropertySourceFactory impls
...
Closes gh-24757
2020-03-23 18:02:05 +01:00
Juergen Hoeller
bb1699a9d3
Revise documentation for autowiring with annotated constructors
...
Closes gh-24711
2020-03-23 18:01:30 +01:00
Juergen Hoeller
10d47d4d21
Enable ASM8_EXPERIMENTAL for Java 14 record support
...
Closes gh-24722
2020-03-23 18:00:59 +01:00
Juergen Hoeller
1800b10717
Expose parameter annotations from interfaces across entire class hierarchy
...
Closes gh-24127
2020-03-23 17:57:44 +01:00
Juergen Hoeller
7ebd850b85
Mark MediaTypeNotSupportedStatusException as deprecated
...
Closes gh-24743
2020-03-23 17:56:28 +01:00
Juergen Hoeller
fd1ca46ca1
Thread-safe access to WebSocketServerFactory and WebSocketExtensions
...
See gh-24745
2020-03-23 17:56:14 +01:00
Sébastien Deleuze
b7b36891fb
Upgrade to Kotlin 1.3.71
2020-03-23 17:41:55 +01:00
Sam Brannen
cf7daa36c8
Add @DynamicPropertySource support in TestContext framework
...
This commit introduces a @DynamicPropertySource annotation that can be
used on methods in test classes that want to add properties to the
Environment with a dynamically supplied value.
This new feature can be used in conjunction with Testcontainers and
other frameworks that manage resources outside the lifecycle of a
test's ApplicationContext.
Closes gh-24540
Co-authored-by: Phillip Webb <pwebb@pivotal.io >
2020-03-23 17:10:18 +01:00
陈其苗
821a8eebdd
Improve Javadoc in Configuration
2020-03-23 15:42:45 +01:00
陈其苗
0463d7fcb9
Set proxyBeansMethod to false when no method is called
2020-03-23 15:42:23 +01:00
陈其苗
0e5f27c94e
Introduce NonNull to package-info
2020-03-23 15:42:02 +01:00
Rossen Stoyanchev
e11373fe69
Unwrap XMLStreamException from cause
...
Closes: gh-24622
2020-03-23 12:22:43 +00:00
Sébastien Deleuze
623a019ef8
Upgrade to Dokka 0.10.1
...
Closes gh-24764
2020-03-23 13:01:06 +01:00
Sam Brannen
b069efade4
Polish Javadoc for @ManagedAttribute
...
See gh-24742
2020-03-23 11:34:25 +01:00
Tom van den Berge
107f88a7e4
Allow non-public Kotlin classes/ctors to be instantiated
...
Closes gh-24712
2020-03-23 10:47:28 +01:00
Brian Clozel
831a95154e
Polish ConcurrentLruCache
...
This commit improves the performance of the `ConcurrentLruCache` and
applies a consistent style to the code:
* separating read/write locks into different variables does not help
performance, so this change is reverted
* apply a consistent style for read/write locks and try/cactch calls
* the reordering of recently used keys is only done when the cache is
full
Fixes gh-24671
2020-03-22 21:49:07 +01:00
Kwangyong Kim
713a112812
Improve ConcurrentLruCache performance
...
- manage collection size manually
- check cache hit first before size check
- reduce read-lock scope
- use `map.get` to test cache instead of `queue.remove`
Closes gh-24469
See gh-24671
2020-03-22 21:48:55 +01:00
Sam Brannen
7e7e54b75e
Upgrade to JUnit 5.6.1
...
Closes gh-24762
2020-03-22 20:56:57 +01:00
Sam Brannen
5be0db9259
Consistently refer to t_actor table
2020-03-22 20:32:45 +01:00
Sam Brannen
b52136dfa5
Revert renaming of local variable
...
This commit fixes the example by reverting the renaming of the local
Actor variable to avoid a conflict with a same-named variable already
in the current scope.
See gh-24398
2020-03-22 20:28:59 +01:00
Rossen Stoyanchev
1f72ab4816
Add Javadoc to ManagedAttribute
...
Closes: gh-24742
2020-03-20 21:50:52 +00:00
陈其苗
45a629e20a
Remove unnecessary check in ConvertingEncoderDecoderSupport
2020-03-20 21:25:29 +00:00
Rossen Stoyanchev
9685380334
Fix typos
2020-03-20 21:14:56 +00:00
Qimiao Chen
09b36380cd
Fix typos in source files
...
Closes gh-24746
2020-03-20 20:06:52 +01:00
Sam Brannen
331b14bb0b
Fix NoHttp violation
2020-03-20 19:43:00 +01:00
Sam Brannen
90268de9c0
Polish implementation of BeanDefinitionReaderUtils.generateBeanName()
...
Closes gh-24739
2020-03-20 19:13:29 +01:00
Rossen Stoyanchev
2ca93cbe1c
Update Javadoc for WebClient onStatus handlers
...
Closes gh-24736
2020-03-20 18:02:18 +00:00
Sam Brannen
116a256e81
Fix typos in AnnotationsScannerTests
2020-03-20 15:03:01 +01:00
Qimiao Chen
2c5781473c
Improve Javadoc in AnnotatedElementUtils
...
Closes gh-24740
2020-03-20 15:00:17 +01:00
Rossen Stoyanchev
7efb62091d
MessagingRSocket correctly handles unconsumed input
...
Closes gh-24741
2020-03-20 10:03:56 +00:00
Rossen Stoyanchev
0d42a1bd7f
Add retry for flaky test (suspected Tomcat issue)
2020-03-19 14:32:56 +00:00
Rossen Stoyanchev
a7fe6b8f5c
Avoid NPE in ResponseCookie on null domain
...
See gh-24663
2020-03-19 12:18:29 +00:00
Rossen Stoyanchev
b121c0e2ea
Avoid ClassCastException in TomcatHttpHandlerAdapter
...
Closes gh-24707
2020-03-19 12:17:24 +00:00
Rossen Stoyanchev
5b27df772a
Suppress deprecation warning
...
See gh-24725
2020-03-19 07:21:21 +00:00
Juergen Hoeller
c2149e38fc
Upgrade to Kotlin Coroutines 1.3.5 (and Checkstyle 8.30)
2020-03-18 18:38:43 +01:00
Rossen Stoyanchev
e7329271fa
Switch to Reactor Dysprosium snapshots
...
See gh-24725
2020-03-18 17:20:03 +00:00
Sam Brannen
7b94112ec6
Update documentation for custom-java-home.gradle
...
See gh-24719
2020-03-18 17:10:16 +01:00
Sam Brannen
e6814f6609
Clean up warnings in Jsr354NumberFormatAnnotationFormatterFactory
2020-03-18 17:04:28 +01:00
Sam Brannen
678b6edad2
Delete unused method in ConfigurationClassParser
2020-03-18 17:01:33 +01:00
Sam Brannen
4bd0ad5d2e
Delete obsolete log4j config
2020-03-18 17:01:01 +01:00
Yoo In Keun
eaabe21c7b
Delete empty .gitignore file
...
Closes gh-24717
2020-03-18 16:13:56 +01:00
Sam Brannen
edb5e73d48
Update Kotlin example based on feedback from @lnhrdt
...
See gh-24398
2020-03-18 15:34:27 +01:00
Juergen Hoeller
d4b2860cc9
Upgrade to Groovy 2.5.10 (and Netty 4.1.48)
...
Closes gh-24719
2020-03-18 12:32:23 +01:00
Sam Brannen
14f5032e97
Update Kotlin example
...
See gh-gh-24398
2020-03-17 19:22:26 +01:00
Sam Brannen
17140c8d4b
Polish contribution
...
See gh-24595
2020-03-17 17:15:12 +01:00
Andrew Woodbury
2fb13d410d
Include response body in UnknownHttpStatusCodeException
...
Spring Framework 5.2.2 introduced a regression in
DefaultResponseErrorHandler.handleError(ClientHttpResponse)
Specifically, for use cases where the InputStream had already been
consumed by the first invocation of getResponseBody(), the second
invocation of getResponseBody() resulted in the response body being
absent in the created UnknownHttpStatusCodeException.
This commit fixes this by invoking getResponseBody() only once in
DefaultResponseErrorHandler.handleError(ClientHttpReponse) in order to
reuse the retrieved response body for creating the exception message
and as a separate argument to the UnknownHttpStatusCodeException
constructor.
Closes gh-24595
2020-03-17 17:06:57 +01:00
Sam Brannen
5e1e689739
Polishing
2020-03-17 15:06:10 +01:00
Sam Brannen
7dea2686b8
Polish contribution
...
See gh-24398
2020-03-17 15:06:10 +01:00
maxxedev
9b827283f1
Use more lambda expressions in data-access code examples
...
Closes gh-24398
2020-03-17 15:06:03 +01:00
Sam Brannen
a8feb792da
Fix broken Javadoc links
2020-03-16 16:30:27 +01:00
Sam Brannen
e500456f1c
Publish distribution zip files again
...
A change in `docs.gradle` in 5.2.4 resulted in distribution zip files
no longer being published to
https://repo.spring.io/release/org/springframework/spring/ .
This commit fixes this by updating the `mavenContent` configuration as
suggested by @wilkinsona.
Closes gh-24605
2020-03-16 15:43:57 +01:00
Sam Brannen
35d0b3dba9
Fix Javadoc links accidentally broken in 7b6d83a106
2020-03-16 15:43:04 +01:00
Qimiao Chen
5f2e298c08
Extract isDebugEnabled() checks to local variables
...
Closes gh-24683
2020-03-16 15:25:05 +01:00
Qimiao Chen
193a76fe2a
Avoid unnecessary sorting in AbstractHandlerMethodMapping
...
Closes gh-24704
2020-03-16 12:38:43 +01:00
Qimiao Chen
70581d1ea2
Improve javadoc in RollbackRuleAttribute regarding nested classes
...
Closes gh-24682
Co-authored-by: Sam Brannen <sbrannen@pivotal.io >
2020-03-15 12:06:16 +01:00
Qimiao Chen
d85a6c0bea
Fix typos in MergedAnnotationsCollectionTests
...
Closes gh-24701
2020-03-15 11:48:29 +01:00
Stephane Nicoll
7411b2e025
Merge pull request #24697 from chenqimiao
...
* pr/24697:
Fix typo in buildSrc/README.md
Closes gh-24697
2020-03-14 10:06:46 +01:00
陈其苗
fac1b94623
Fix typo in buildSrc/README.md
...
See gh-24697
2020-03-14 10:06:25 +01:00
Juergen Hoeller
d91fc8c672
No log level check unless String concatenation is following
2020-03-14 00:01:13 +01:00
Juergen Hoeller
6599383dac
Upgrade to RxJava 2.2.19, Undertow 2.0.30, HtmlUnit 2.38
2020-03-13 23:15:07 +01:00
Juergen Hoeller
33642345a4
Lazily check log level within validation conditions
...
See gh-24672
2020-03-13 23:14:38 +01:00
Arjen Poutsma
7c4f0318bb
Improve efficiency of built RouterFunction
...
This commit changes the way RouterFunctions registered to the builder
are composed in both WebFlux.fn and WebMvc.fn.
Prior to this commit, all routes added to the build were composed with
`reduce`.
After this commit, all routes are stored in a special router function,
allowing for more efficient execution and smaller stack traces.
Closes gh-24652
2020-03-13 16:09:41 +01:00
Arjen Poutsma
54e2df2e0e
Improve RouterFunction composition
...
This commit changes the way two RouterFunctions are composed in
WebFlux.fn. Prior to this commit, two were composed with
`switchIfEmpty()`, switching from the first to the second route if the
first did not provide an element.
After this commit, two router functions are compose using `concat`,
which results in a smaller stack trace.
See gh-24652
2020-03-13 16:09:41 +01:00
Rossen Stoyanchev
f4ce22f6ba
Merge branch '23828-sockjs'
2020-03-13 14:58:48 +00:00
Rossen Stoyanchev
fa6ccc066d
Do not raise exception for undelivered empty messages
...
Closes gh-23828
2020-03-13 14:58:31 +00:00
Rossen Stoyanchev
1a8caf9e2b
Polishing and minor refactoring
...
See gh-23828
2020-03-13 14:58:31 +00:00
Rossen Stoyanchev
7b7dfcaaed
Polishing contribution
...
See gh-24691
2020-03-13 14:58:01 +00:00
mdindoffer
c11dd4a839
Do not mention credentials as enabled by default in CorsRegistry
...
Credentials are not enabled by default contrary to the javadocs.
The credentials support must be enabled via #allowCredentials.
Closes gh-24691
Co-authored-by: Martin Dindoffer <martin.dindoffer@sigp.eu >
2020-03-13 15:21:53 +01:00
陈其苗
c5b8406def
Add some test cases in StringUtilsTests
2020-03-13 12:35:04 +00:00
陈其苗
6013591fac
Polish containsAny of CollectionUtils by reusing findFirstMatch
2020-03-13 12:32:43 +00:00
Qimiao Chen
c8c1e61c0a
Improve Javadoc in AutoProxyRegistrar
...
Closes gh-24688
Co-authored-by: Sam Brannen <sbrannen@pivotal.io >
2020-03-13 10:01:58 +01:00
Qimiao Chen
201827cb0b
Fix exception message in getMergedBeanDefinition
...
Closes gh-24686
Co-authored-by: Sam Brannen <sbrannen@pivotal.io >
2020-03-13 09:47:57 +01:00
Rossen Stoyanchev
a599859595
ServerCookie ignores empty domain with double quotes
...
Closes gh-24663
2020-03-12 12:21:19 +00:00
Rossen Stoyanchev
4aedf2ea13
MetadataEncoder expands vars correctly
...
Closes gh-24656
2020-03-12 11:35:08 +00:00
Arjen Poutsma
0dc1c7eb8b
Add ServerRequest::checkNotModified
...
This commit adds the checkNotModified method to ServerRequest in both
WebFlux.fn and WebMvc.fn. Unlike other checkNotModified methods found
in the framework, this method does not return a boolean, but rather
a response wrapped in a Mono/Optional. If the resource has
not been changed, the not-modified response can be returned directly;
if the resource has changed, the user can create a corresponding
response using switchIfEmpty/orElse(Get).
Closes gh-24173
2020-03-11 16:45:00 +01:00
Juergen Hoeller
73e39726cd
Upgrade to Kotlin 1.3.70
...
Includes latest dependency updates (Netty 4.1.47, Jetty 9.4.27, Jackson 2.10.3, Log4J 2.13.1, SnakeYAML 1.26, Vavr 0.10.2, Commons Pool 2.8, POI 4.1.2, OkHttp 3.14.7, Jetty Reactive HttpClient 1.1.2, JRuby 9.2.11, AssertJ 3.15)
2020-03-11 14:56:41 +01:00
Juergen Hoeller
bcee6b9da4
Consistent assertions for supplier-based bean definition tests
2020-03-11 14:55:39 +01:00
Juergen Hoeller
7f26e8cfc6
Short-circuit interface visibility check in case of same ClassLoader
...
Closes gh-24664
2020-03-11 14:55:08 +01:00
Juergen Hoeller
bee63e38c1
Create ScannedGenericBeanDefinitions for index-derived components as well
...
Closes gh-24638
2020-03-11 14:54:16 +01:00
Juergen Hoeller
193f419520
Deprecate PTM-based constructors in favor of generic TransactionManager
...
Closes gh-24612
2020-03-11 14:52:03 +01:00
Juergen Hoeller
6df80a8f70
Restore original JsonMappingException handling (assuming invalid input)
...
Closes gh-24610
Closes gh-24630
Closes gh-24646
2020-03-11 14:51:36 +01:00
Qimiao Chen
988aae4f2e
Remove unnecessary variable declaration in ProxyCallbackFilter
...
Closes gh-24675
2020-03-11 13:51:13 +01:00
Arjen Poutsma
61569003b5
CORS support in HTTP header predicate
...
This commit introduces CORS support for the HeadersPredicate in
WebMvc.fn and WebFlux.fn.
Closes gh-24564
2020-03-10 17:22:26 +01:00
Сергей Цыпанов
1fd447f395
Reduce String garbage in CglibAopProxy.doValidateClass()
...
Closes gh-24672
2020-03-10 17:16:08 +01:00
Arjen Poutsma
3cbea86335
Deprecate MockServerRequest
...
Deprecate MockServerRequest in favor of ServerRequest::create
combined with a MockServerWebExchange.
2020-03-10 15:45:11 +01:00
Arjen Poutsma
c03cdbac21
CORS support in HTTP method predicate
...
This commit introduces CORS support for the HttpMethodPredicate in
WebMvc.fn and WebFlux.fn.
Closes gh-24564
2020-03-10 15:45:11 +01:00
Arjen Poutsma
fc12891006
Add ServerRequest::firstHeader
...
This commit introduces the method firstHeaderiin both WebMvc.fn and
WebFlux.fn, which return the first header value of a given header name,
if any.
2020-03-10 15:45:11 +01:00
Qimiao Chen
b92515bdee
Add logger.isInfoEnabled check before logger.info
...
Closes gh-24667
2020-03-10 14:41:20 +01:00
Sviatoslav Hryb
018ba92214
Fix formatting in AOP examples in documentation
2020-03-09 14:44:41 +00:00
Sviatoslav Hryb
f5195887c9
Fix ampersands in AOP examples in documentation
2020-03-09 13:27:55 +00:00
Qimiao Chen
7ce22e2f3a
Update IntroductionInfo example in reference manual
...
Closes gh-24650
2020-03-06 12:34:00 +01:00
Arjen Poutsma
2fb90cb16b
Support for byte-range requests in WebMvc.fn
...
This commit introduces support for byte-range requests in Servlet
Functional endpoints.
Closes gh-24562
2020-03-05 15:32:31 +01:00
Rossen Stoyanchev
c237338d8f
Merge pull request #24632 from sada-sigsci/sse_content_type
...
Closes gh-24632
2020-03-04 19:28:05 +00:00
Rossen Stoyanchev
7e03728b2c
Polishing contribution
...
See gh-24632
2020-03-04 19:27:37 +00:00
sada-sigsci
cc1f57823b
Remove charset from content-type in SseEmitter
...
See gh-24632
2020-03-04 19:27:37 +00:00
Rossen Stoyanchev
b2fe494b9c
Merge changes for ShallowEtagHeaderFilter
...
Closes gh-24635
2020-03-04 19:18:11 +00:00
Rossen Stoyanchev
a98bf30ee6
ShallowEtagHeaderFilter checks for pre-existing eTag
...
The filter now checks for an explicitly set eTag and uses it instead of
generating one, and also suppresses caching.
Closes gh-24635
2020-03-04 19:17:56 +00:00
Rossen Stoyanchev
c7e037da39
Remove unnecessary calls to disableContentCaching
...
These calls were added in error when trying to fix #22797 and #23775 .
They are not needed in 304 scenarios. Those have no response content and
are skipped by ShallowETagHeaderFilter based on the status.
This leaves disableContentCaching invoked only in streaming scenarios,
which was the original intent and should be the only reason for that
method.
See gh-24635
2020-03-04 19:17:56 +00:00
Rossen Stoyanchev
d3da7a50ec
Polishing and minor refactoring
...
See gh-24635
2020-03-04 19:17:56 +00:00
Rossen Stoyanchev
e7df445e37
Merge pull reqest #24617 from dreis2211/avoid-unnecessary-sorting
...
Closes gh-24617
2020-03-04 19:16:10 +00:00
Christoph Dreis
2093e35f27
Avoid unnecessary sorting
2020-03-04 19:10:14 +00:00
Rossen Stoyanchev
87230c4f1f
Merge pull request #24589 from chenqimiao/fix404url-in-doc
...
Closes gh-24589
2020-03-03 15:40:32 +00:00
Rossen Stoyanchev
e1b0296f9e
Polishing contribution
...
See gh-24589
2020-03-03 15:38:47 +00:00
陈其苗
771fbde951
Fix URL to Spring Tool Suite
...
See gh-24589
2020-03-03 15:38:47 +00:00
Rossen Stoyanchev
2afae430eb
Update list of support multipart media types
...
See gh-24582
2020-03-03 15:38:00 +00:00
Yoo In Keun
e706fcba1f
Fix typo in testing.adoc
...
Closes gh-24627
2020-03-02 16:25:28 +01:00
Johnny Lim
8285666ee8
Polish ReactorResourceFactory
...
Closes gh-24620
2020-03-02 13:48:19 +01:00
Sviatoslav Hryb
60fd95a354
Fix formatting for pointcut expression examples in documentation
...
Closes gh-24621
2020-03-02 13:42:09 +01:00
Adrian Cole
7f5395a216
Fix typos in AbstractClientHttpRequest
...
Closes gh-24623
2020-03-02 13:36:47 +01:00
陈其苗
8a7bb49436
Improve WebClient.Builder Javadoc
2020-02-28 17:07:58 +00:00
Rossen Stoyanchev
5f1e4ffc4f
WebClient.Builder javadoc updates
...
Closes gh-24611
2020-02-28 15:55:53 +00:00
Brian Clozel
89560777e4
Upgrade Guava for API Diff plugin
...
Fixes gh-24606
2020-02-28 13:56:49 +01:00
Andreas Volkmann
b30f9a1308
Fix typo in core-aop.adoc
...
Closes gh-24602
2020-02-26 18:33:25 +00:00
Florian Berger
d4de3396f7
Fix typo about URI Encoding in docs
...
Closes gh-24603
2020-02-26 18:28:52 +00:00
wonwoo
5c2d65b8ef
Fix typo in reference manual
...
Closes gh-24597
2020-02-26 14:34:25 +01:00
Sam Brannen
787b09b202
Relax GraalVM check in DefaultParameterNameDiscoverer
...
Prior to this commit, DefaultParameterNameDiscoverer did not register
any discovers when compiling or running as a GraalVM native image.
This commit relaxes the GraalVM check so that it is only applied to the
registration of KotlinReflectionParameterNameDiscoverer.
Consequently, StandardReflectionParameterNameDiscoverer and
LocalVariableTableParameterNameDiscoverer are once again always
registered by DefaultParameterNameDiscoverer.
Closes gh-24600
2020-02-26 14:18:56 +01:00
Sam Brannen
c3bc28762e
Delete unused import in ExpressionLanguageScenarioTests
...
See gh-24586
2020-02-26 14:09:01 +01:00
ZhangT
c5fb7b9fb7
Simplify some redundant code
...
Closes gh-24586
Co-authored-by: Sam Brannen <sbrannen@pivotal.io >
2020-02-26 12:29:09 +01:00
Spring Buildmaster
0ad942f337
Next Development Version
2020-02-25 16:42:55 +00:00
Juergen Hoeller
d72c90cd7a
Assign TokenBuffer field with createToken() result
2020-02-25 15:21:28 +01:00
Juergen Hoeller
6db20eb773
Avoid package import cycles
2020-02-25 14:55:53 +01:00
Rossen Stoyanchev
2f12351292
Refine BlockHound support
...
- disable for Java 14/15 for now until BlockHound support
- targeted installation of required integrations only
2020-02-25 10:07:29 +00:00
Rossen Stoyanchev
b6f502db4e
Polishing
2020-02-25 10:07:29 +00:00
Qimiao Chen
8cf70fe509
Improve documentation for @Autowired/@Value in @Configuration classes
...
Closes gh-24585
2020-02-25 11:01:19 +01:00
Rossen Stoyanchev
7e402ba4fe
Improve docs on date and time formatting
...
Closes gh-24370
2020-02-24 19:05:09 +00:00
Juergen Hoeller
c0fbf6fca1
Polishing
2020-02-24 19:50:12 +01:00
Juergen Hoeller
399b846458
Upgrade to Groovy 3.0.1, RxJava 2.2.18, Hibernate ORM 5.4.12, Protobuf 3.11.4
2020-02-24 19:08:33 +01:00
Juergen Hoeller
0e95282153
Polishing
2020-02-24 19:08:23 +01:00
Juergen Hoeller
2afe5802c0
Clarify setCacheMillis/setCacheSeconds vs java.util.ResourceBundle
...
Closes gh-24563
2020-02-24 19:08:13 +01:00
Rossen Stoyanchev
2ae91404d1
BlockHoundIntegration for spring-core
2020-02-24 17:19:32 +00:00
Brian Clozel
f048f27d80
Configure Reactor Netty quiet shutdown period in tests
...
See gh-24538
2020-02-24 18:15:59 +01:00
Brian Clozel
f1680e5cee
Configure quiet period for shutting down Reactor resources
...
This commit adds two new properties to the `ReactorResourceFactory`.
This allows to configure the quiet and timeout periods when shutting
down Reactor resources. While we'll retain Reactor Netty's default for
production use, this option is useful for tests and developement
environments when developers want to avoid long waiting times when
shutting down resources.
Fixes gh-24538
2020-02-24 18:15:59 +01:00
Rossen Stoyanchev
96de4b3cee
Upgrade to Reactor Dysprosium-SR5
...
Closes gh-24355
2020-02-24 17:08:00 +00:00
Sam Brannen
7778508e69
Fix typos in ResolvableTypeTests
...
See gh-24529
Co-authored-by: Qimiao Chen <chenqimiao1994@126.com >
2020-02-24 15:37:42 +01:00
Qimiao Chen
1de2e0a4a7
Fix formatting in webflux-webclient.adoc
...
Closes gh-24578
2020-02-24 15:00:11 +01:00
Hyunjin Choi
ede2a1d4b2
Remove unnecessary semicolon in some enum classes
2020-02-24 14:56:12 +01:00
Sam Brannen
d1a6e49475
Reset SecurityManager in finally-block and polish
2020-02-23 18:33:56 +01:00
Sam Brannen
809ed9d469
Rename PropertyResolverExtensionsTests to Kotlin*
2020-02-23 18:21:53 +01:00
Qimiao Chen
f78c21e40b
Fix typos in tests
...
Closes gh-24566
2020-02-22 18:32:02 +01:00
Rossen Stoyanchev
8219d06ae1
Merge pull request #24493 from chenqimiao-pr/AbstractPlatformTransactionManager
...
Closes gh-24493
2020-02-20 17:59:29 +00:00
Rossen Stoyanchev
adc13f2030
Polishing contribution
...
See gh-24493
2020-02-20 17:58:47 +00:00
陈其苗
a09f02f64e
Minor refactoring in AbstractPlatformTransactionManager
...
See gh-24493
2020-02-20 17:33:18 +00:00
Rossen Stoyanchev
97ba00eff2
Use try-with-resource in XmlBeanDefinitionReader
...
Closes gh-24492
2020-02-20 17:28:30 +00:00
Rossen Stoyanchev
96e77d417b
Update WebFlux section on HTTP/2
...
Closes gh-24558
2020-02-20 16:28:22 +00:00
Rossen Stoyanchev
ca6241a093
Merge pull request #24518 from pulse00-patch/web-session-debug-logs
...
Closes gh-24518
2020-02-20 15:57:13 +00:00
Rossen Stoyanchev
de608a08ed
Polishing contribution
...
See gh-24518
2020-02-20 15:56:13 +00:00
Robert Gründler
ae9268004d
Added debug logging to DefaultWebSessionManager
...
See gh-24518
2020-02-20 15:55:59 +00:00
Rossen Stoyanchev
a134e92e7f
Improve checks on URI string in MockMvc request builder
...
Closes gh-24556
2020-02-20 15:07:40 +00:00
Arjen Poutsma
4882eb278d
Convert non-UTF-8 JSON
...
Jackson's asynchronous parser does not support any encoding except UTF-8
(or ASCII). This commit converts non-UTF-8/ASCII encoded JSON to UTF-8.
Closes gh-24489
2020-02-20 11:14:53 +01:00
Hyunjin Choi
7528b9487d
Simplify code in spring-test by using Collections.addAll
...
Closes gh-24555
2020-02-19 17:28:22 +01:00
Sam Brannen
e029dbf607
Polish Javadoc for ClientHttpResponse
2020-02-19 11:46:03 +01:00
Sam Brannen
8ff1ac59e0
Polishing
2020-02-19 11:29:51 +01:00
Qimiao Chen
acae174f8f
Fix javadoc in DependencyDescriptor
...
Closes gh-24551
2020-02-19 11:04:25 +01:00
Sviatoslav Hryb
2ad4602ca0
Correct Ant-style Patterns example in documentation
...
Closes gh-24552
2020-02-19 10:51:16 +01:00
Rossen Stoyanchev
68b980f849
Remove producible request attribute before mapping
...
The attribute was previously removed only before exception resolution
in the DispatcherServlet in order to allow error rendering to make an
independent choice on content negotation.
However, Boot rendering happens later in an ERROR dispatch which could
also be a nested dispatch on some servers. So the attribute must also
generally be removed prior to mapping.
We also move the methods where this is done to the base
RequestMappingInfoHandlerMapping class which also deals with the
produces condition and where the producible attribute is added in the
first place.
Closes gh-24466
2020-02-18 21:50:38 +00:00
Rossen Stoyanchev
87f866b688
Update DigestUtils Javadoc with regards to InputStream
...
Closes gh-24534
2020-02-18 19:56:25 +00:00
Hyunjin Choi
37ba57a921
Polish some test classes by using predefined constants
...
Closes gh-24532
2020-02-18 12:24:10 +01:00
Rossen Stoyanchev
fb6ee01281
Consistently call setComplete before WS upgrade
...
Even thought Tomcat and Jetty, which commit the response more lazily,
were not impacted by this issue, it still makes sense for them to
complete the WebFlux response (and pre-commit actions) at the same time
as for other servers for consistent behavior.
See gh-24475
2020-02-18 09:44:04 +00:00
Rossen Stoyanchev
df1145b797
Correct documentation error in section on BeanWrapper
...
Closes gh-24510
2020-02-18 09:44:04 +00:00
Brian Clozel
9036cc6899
Remove unnecessary dependency on spring-orm
...
Prior to this commit, spring-aspects would consider spring-orm as a
module providing aspects, which is not the case (anymore).
This commit removes that dependency as a result.
Fixes gh-24491
2020-02-17 20:54:58 +01:00
ZhangT
6add7b4dec
Polishing
...
Closes gh-24543
2020-02-17 17:33:39 +01:00
Sviatoslav Hryb
9e7ab4d308
Correct formatting of MessageSource example in documentation
...
Closes gh-24531
2020-02-17 15:25:17 +01:00
Brian Clozel
13f23dc32b
Mark response as complete before WebSocket upgrade
...
Prior to this commit, some WebSocket `RequestUpgradeStrategy` reactive
implementations would prevent the application from writing HTTP headers
and cookies to the response.
For Reactor Netty and Undertow, handling the upgrade and starting the
WebSocket communication marks the response status and headers as sent
and the application cannot update HTTP response headers after that.
This commit ensures that the `RequestUpgradeStrategy` implementations
mark the responses as "complete", so that headers are written before we
delegate to the server implementation.
Fixes gh-24475
2020-02-13 21:42:31 +01:00
Juergen Hoeller
4cbc61abfc
Upgrade to Tomcat 9.0.31, Apache HttpClient 4.5.11, Mockito 3.2.4, HtmlUnit 2.37
2020-02-13 16:14:49 +01:00
Sam Brannen
05301d24c1
Upgrade to JUnit Jupiter 5.6
...
Closes gh-24299
2020-02-13 15:44:58 +01:00
Sam Brannen
d481b81b7e
Fix copy-n-paste error in custom_java_home.gradle script
...
See gh-24474
2020-02-12 23:08:42 +01:00
Juergen Hoeller
a4179b4795
Polishing
2020-02-12 18:32:32 +01:00
Andy Wilkinson
d0d8c6e749
Use Gradle Enterprise Conventions Plugin to configure build scans
...
Closes gh-24512
2020-02-12 18:14:33 +01:00
Juergen Hoeller
9f6572a095
Add missing final declaration for static field
2020-02-12 16:49:19 +01:00
Juergen Hoeller
d1c7083e77
Consistent ROLE_INFRASTRUCTURE declarations for configuration classes
...
Closes gh-24509
2020-02-12 16:49:02 +01:00
Juergen Hoeller
e0319b1f79
Raise log level for exceptions from EntityManager close call
...
Closes gh-24501
2020-02-12 16:48:42 +01:00
Juergen Hoeller
b889700548
Differentiate MismatchedInputException versus ValueInstantiationException
...
Closes gh-24455
2020-02-12 16:48:32 +01:00
Sam Brannen
a9d9b76d09
Support SpEL compilation of interface methods again
...
Spring Framework 5.1.8 introduced a regression for the compilation of
SpEL expressions referencing a method declared in an interface. An
attempt to compile such an expression resulted in a
SpelEvaluationException caused by an IncompatibleClassChangeError.
This commit fixes this regression by adding explicit support in
ReflectivePropertyAccessor.OptimalPropertyAccessor.generateCode() for
methods declared in interfaces.
Closes gh-24357
2020-02-12 15:33:01 +01:00
Sam Brannen
de7bed2ab2
Simplify custom_java_home.gradle script
...
Setting `options.fork = true` causes the classpath in the forked
compiler process to include Class-Path entries from MANIFEST.MF files
in JARs in the classpath, which results in warnings about missing
classpath entries.
This commit removes the `options.fork = true` declaration and further
simplifies the script.
See gh-24474
2020-02-12 14:30:29 +01:00
Sam Brannen
9dbd411f81
Suppress warnings in Gradle build
2020-02-12 11:04:07 +01:00
Sam Brannen
5d4f1d9e09
Extract ValueExtractor functional interface
...
See gh-24375
2020-02-12 10:49:36 +01:00
Sam Brannen
974cacac31
Support nested annotations in ASM-based processing again
...
Spring Framework 5.0 introduced a regression in ASM-based annotation
processing. Specifically, nested annotations were no longer supported,
and component scanning resulted in an exception if a candidate
component was annotated with an annotation that contained nested
annotations.
This commit fixes this regression by introducing special handling in
AnnotationTypeMapping that supports extracting values from objects of
type TypeMappedAnnotation when necessary.
Closes gh-24375
2020-02-12 10:36:54 +01:00
Rossen Stoyanchev
9277b47040
Polishing: remove use of cast where avoidable
2020-02-11 16:51:35 +00:00
Rossen Stoyanchev
d552105516
Eliminate windowUntil from StringDecoder
...
This is a follow-up on the earlier commit
28a95e89f3 eliminating windowUntil
entirely which generates a BubblingException wrapper. This also keeps
the chain a little simpler.
See gh-24355
2020-02-11 16:49:21 +00:00
Rossen Stoyanchev
e35d3b8bb5
Update advice on RestTemplate
...
Closes gh-24503
2020-02-11 14:02:50 +00:00
Rossen Stoyanchev
0a974511bd
Expose awaitTerminationMillis presion
...
Closes gh-24496
2020-02-11 14:02:50 +00:00
Rossen Stoyanchev
28a95e89f3
Upgrade to Dysprosium SR5 snapshots
...
See gh-24355
2020-02-11 12:52:04 +00:00
Rossen Stoyanchev
7d1d989535
Minor polishing in ConcurrentReferenceHashMap
...
Closes gh-24494
2020-02-11 10:49:28 +00:00
Rossen Stoyanchev
e4a530efac
Minor refactoring in CommonsLogWriter
...
Closes gh-24495
2020-02-11 10:40:24 +00:00
Juergen Hoeller
d521d37f14
Upgrade to Hibernate ORM 5.4.11 and Groovy 3.0 final
2020-02-10 18:10:41 +01:00
Rossen Stoyanchev
009dfbfafc
MockRestServiceServer clears failed requests map
...
Closes gh-24486
2020-02-10 15:01:47 +00:00
Rossen Stoyanchev
df706f4c7c
Restore use of Flux-based encode method in HTTP
...
Closes gh-24441
2020-02-07 21:44:44 +00:00
Arjen Poutsma
a03a116f6b
Force TokenBuffer to use BigDecimal if elementtype
...
This commit makes the Jackson2Tokenizer enable
TokenBuffer.forceUseOfBigDecimal if the element type given to the
Decoder is BigDecimal. Previous to this commit, values would be
converted to floats.
Closes gh-24479
2020-02-07 14:16:21 +01:00
Andy Wilkinson
02e90a8645
Upgrade to Spring Asciidoctor Extensions 0.4.0.RELEASE
...
0.4.0 provides built-in support for remembering a user's selections
using local storage. This replaces the custom switch language
JavaScript.
The selection is stored using a key derived from the
options that were available. Concretely, when the options are Java or
Kotlin, the local storage key is java-kotlin. Similarly, if the
choices were Java, Kotlin, and XML, the key would be java-kotlin-xml.
Given local storage's domain and protocol scoping, the nature of the
key that's used for storage will allow a user's selections to be
applied across all documentation hosted on https://docs.spring.io that
offer the same options.
Closes gh-24481
2020-02-07 12:16:02 +01:00
Sam Brannen
c640d28a82
Polishing
2020-02-07 11:30:23 +01:00
Sam Brannen
51fa98a1b2
Apply compiler conventions to test fixtures
2020-02-07 11:04:03 +01:00
Arjen Poutsma
45555f77a6
Honour ObjectMapper feature in Jackson2Tokenizer
...
After this commit, Jackson2Tokenizer honours ObjectMapper's
DeserializationFeature.USE_BIG_DECIMAL_FOR_FLOATS feature when creating
TokenBuffers.
Closes gh-24479
2020-02-07 10:45:00 +01:00
Sam Brannen
c648425822
Ignore warnings for missing classpath elements with custom JAVA_HOME
...
Prior to this commit, the "-Werror" was removed as a command-line
argument in order not to fail the build for missing classpath elements.
This commit reinstates "-Werror" and removes "-Xlink:path" in order to
explicitly ignore warnings for missing classpath elements when executing
the build with a custom JAVA_HOME.
See gh-24474
2020-02-07 10:23:07 +01:00
Michael Simons
711fafc924
Improve assertion message in PersistenceExceptionTranslationInterceptor
...
Closes gh-24484
2020-02-06 15:41:33 +01:00
Sam Brannen
ce2c0e4c79
Credit @marcphilipp and @snicoll
...
See gh-24474
2020-02-06 15:32:51 +01:00
Sam Brannen
8f02e1088d
Support alternate JDK versions in Gradle build
...
This commit adds support for the following two JVM system properties
that control the Gradle build for alternative JDKs (i.e., a JDK other
than the one used to launch the Gradle process).
- customJavaHome: absolute path to the alternate JDK installation to
use to compile Java code and execute tests. Setting this system
property causes Groovy 3.0 RC3 to be used instead of 2.5.x. This
system property is also used in spring-oxm.gradle to determine
whether JiBX is supported.
- customJavaSourceVersion: Java version supplied to the `--release`
command line flag to control the Java source and target compatibility
version. Supported versions include 9 or higher. Do not set this
system property if Java 8 should be used.
Examples:
./gradlew -DcustomJavaHome=/opt/java/jdk-14 test
./gradlew --no-build-cache -DcustomJavaHome=/opt/java/jdk-14 test
./gradlew -DcustomJavaHome=/opt/java/jdk-14 -DcustomJavaSourceVersion=14 test
See gh-24474
2020-02-06 15:24:19 +01:00
Juergen Hoeller
b23049bd27
Polishing
2020-02-06 12:59:55 +01:00
Juergen Hoeller
669a689a50
Prevent unnecessary refresh for InjectionMetadata.EMPTY
...
Closes gh-24485
2020-02-06 12:44:05 +01:00
Stephane Nicoll
10d008e3db
Upgrade to RSocket 1.0.0-RC6
...
Closes gh-24482
2020-02-06 08:56:18 +01:00
Rossen Stoyanchev
ba5fc21ab4
Option to pair AnnotationIntrospector instances
...
Closes gh-22830
2020-02-05 20:49:07 +00:00
Rossen Stoyanchev
9aea10179b
Insert StringMessageConverter for SSE
...
Closes gh-24465
2020-02-05 20:49:07 +00:00
Juergen Hoeller
65c8a10fb0
Upgrade to EclipseLink 2.7.6 and JiBX 1.3.3
2020-02-05 18:21:03 +01:00
Juergen Hoeller
82adb09490
ImportSelector.getExclusionFilter() naming and javadoc clarification
...
See gh-24175
2020-02-05 18:20:27 +01:00
Juergen Hoeller
d93303c008
ImportSelector.getCandidateFilter() for transitive filtering of classes
...
Closes gh-24175
2020-02-05 12:35:16 +01:00
Sam Brannen
c2367b3ad2
Polish contribution
...
See gh-24383
2020-02-04 14:48:13 +01:00
Hyunjin Choi
1acf5a7424
Use dedicated catch block for ScriptException
...
Closes gh-24383
2020-02-04 14:45:52 +01:00
Sam Brannen
7575616d26
Update copyright date
...
See gh-24385
2020-02-04 14:23:18 +01:00
Hyunjin Choi
b4cf88499c
Use try-with-resource in ScriptUtils
...
Closes gh-24385
2020-02-04 14:21:59 +01:00
Qimiao Chen
5aa37ea07b
Let BFAwareGeneratorStrategy extend ClassLoaderAwareGeneratorStrategy
...
This commit updates BeanFactoryAwareGeneratorStrategy to extend
ClassLoaderAwareGeneratorStrategy in order to avoid duplication of the
common generate() implementation.
Closes gh-24396
2020-02-04 14:10:59 +01:00
Sam Brannen
2b6117c0c2
Fix Checkstyle violation
...
See gh-24393
2020-02-04 13:45:02 +01:00
Sam Brannen
72685b1d81
Polish contribution
...
See gh-24393
2020-02-04 13:41:31 +01:00
Hyunjin Choi
d624dc084f
Add close() method in FileCopyUtils to reduce duplication
...
Closes gh-24393
2020-02-04 13:36:24 +01:00
Hyunjin Choi
550f13e8ed
Simplify GenericConversionService.getMatchableConverters()
...
Closes gh-24403
2020-02-04 12:59:57 +01:00
Сергей Цыпанов
a36168c972
Produce less String-related garbage when generating bean names
...
Closes gh-24476
2020-02-04 11:18:48 +01:00
Rossen Stoyanchev
d8cd46121a
Merge pull request #24386 from hyeonisism/Simplify-use-compute-if-absent
...
Closes gh-24386
2020-02-03 20:59:49 +00:00
Rossen Stoyanchev
e7d40f930f
Remove synchronized block
...
As per the Javadoc of ConcurrentHashMap its computeIfAbsent
implementation is atomic and hence already synchronized internally,
so we can remove the surrounding synchronization block.
See gh-24470
2020-02-03 20:59:30 +00:00
Hyunjin Choi
bac5cd866e
Simplify getSessionAttributesHandler() method
2020-02-03 20:43:45 +00:00
Rossen Stoyanchev
adbc55e72a
Merge pull request #24470 from hyeonisism/Remove-redundant-character
...
Closes gh-24470
2020-02-03 20:42:14 +00:00
Rossen Stoyanchev
f5df422de9
Polishing contribution
...
See gh-24470
2020-02-03 20:32:36 +00:00
Hyunjin Choi
273812f9c5
Remove unnecessary escapes in regular expressions
...
See gh-24470
2020-02-03 20:22:40 +00:00
Sam Brannen
cf9a052e3a
Polish contribution
...
See gh-24428
2020-02-03 15:39:00 +01:00
Hyunjin Choi
1b39f138eb
Test ObjectUtils.containsElement()
...
This commit introduces a unit test for the containsElement() method
in ObjectUtils.
Closes gh-24428
2020-02-03 15:34:47 +01:00
Hyunjin Choi
14a32d13d0
Fix typo in StringUtils class
...
Closes gh-24471
2020-02-03 15:23:32 +01:00
Sam Brannen
d77a28aac3
Support optional command line arguments with empty values
...
Spring Framework provides two implementations of the
CommandLinePropertySource API: SimpleCommandLinePropertySource and
JOptCommandLinePropertySource.
Prior to this commit, JOptCommandLinePropertySource supported empty
values for optional arguments; whereas, SimpleCommandLinePropertySource
did not.
This commit modifies the implementation of SimpleCommandLinePropertySource
to allow empty values for optional arguments.
Closes gh-24464
2020-02-03 15:03:43 +01:00
Juergen Hoeller
8dfacbc210
Upgrade to Hibernate Validator 6.1.2 and OpenPDF 1.3.13
2020-02-03 12:01:40 +01:00
Sam Brannen
cbb037bc68
Suppress deprecation warning in spring-test
2020-01-31 14:37:40 +01:00
Sam Brannen
daebbf1960
Polishing
2020-01-31 14:34:50 +01:00
Johnny Lim
f01de79fe2
Polish
2020-01-31 10:38:36 +00:00
Stephane Nicoll
3a90d8a64d
Merge pull request #24460 from dreis2211
...
* pr/24460:
Polish documentation format
Closes gh-24460
2020-01-31 08:56:25 +01:00
Christoph Dreis
15b651cdfe
Polish documentation format
...
See gh-24460
2020-01-31 08:55:52 +01:00
Rossen Stoyanchev
547342b27d
Status code as Integer methods in ServerHttpResponse
...
Closes gh-24400
2020-01-30 10:06:58 +00:00
Rossen Stoyanchev
cc4261c30b
Only non-null input resets scheme specific part
...
Closes gh-24444
2020-01-30 06:16:43 +00:00
Juergen Hoeller
688167a7df
Upgrade to Checkstyle 8.29 and Apache Johnzon 1.2.3
2020-01-28 22:06:06 +01:00
Juergen Hoeller
b4a9758d9b
Polishing
2020-01-28 21:56:35 +01:00
Juergen Hoeller
8cced42fb2
Use local LoggerContext in Log4jLog when static field not initialized yet
...
Closes gh-24440
2020-01-28 21:06:48 +01:00
Juergen Hoeller
d93403a257
Alphabetical order for database names
...
See gh-24443
2020-01-28 21:06:04 +01:00
wilrosco
c86e164b03
Add Informix to the list of supported database products for procedure calls
...
Hi guys,
We're facing an issue in our application when we try to call a procedure in Informix database,
our app uses standard JDBC (spring-jdbc and com.ibm.informix.jdbc.4.50.3) without Hibernate
to connect to the database
Issue:
When we trying to execute any procedure call in our Informix database there is no data returned.
Diagnostic:
It points to the Java class called CallMetaDataProviderFactory in spring-jdbc project.
Taking a look of this class there is no explicit support for Informix procedure calls, so I added "Informix Dynamic Server" to the
list of supported databases and now I can execute procedures call without issues.
Basically I added the line "Informix Dynamic Server" to the list called "supportedDatabaseProductsForProcedures"
of CallMetaDataProviderFactory class in my local environment and it worked as expected.
I really appreciate any feedback/suggestion for this approach due we would like to continue using the framework
normally in our development without losing updates using a workaround in our end.
Many thanks in advance.
2020-01-28 20:57:52 +01:00
Сергей Цыпанов
64440a5f04
Some trivial improvements to reduce allocation pressure
...
Closes gh-24447
2020-01-28 11:07:40 +01:00
Sam Brannen
2c86d6ded2
Polishing
2020-01-28 10:50:15 +01:00
Sviatoslav
eeaae16b17
Remove dated mention of "local" bean attribute
...
Closes gh-24430
2020-01-27 17:47:48 +00:00
Juergen Hoeller
f9a73503f4
Upgrade to Hibernate Validator 6.1.1
2020-01-27 18:19:23 +01:00
Juergen Hoeller
75abd9fc7e
Upgrade to ASM 7.3
...
Closes gh-24438
2020-01-27 18:18:16 +01:00
Anton
c1218615df
Update integration.adoc
...
Fix typo
2020-01-27 16:21:16 +00:00
Rob Winch
e66e41029c
Asciidoctor Warnings Are Fatal
...
Ensure we don't get any more warnings within Asciidoctor build
Issue gh-24427
2020-01-24 15:51:59 -06:00
Rossen Stoyanchev
2fcee5ae58
Append unique number to WebFlux server log prefix
...
Closes gh-22039
2020-01-24 15:57:56 +00:00
Rossen Stoyanchev
d499e14b78
Update default value in ReactorResourceFactory
...
We used ConnectionProvider#elastic only to customize the name. Now that
Reactor Netty's TcpResources itself uses fixed 500 by default, we
update to have the same value which would apply when global resources
are not used.
Closes gh-24424
2020-01-24 15:40:16 +00:00
Rossen Stoyanchev
b142f8e660
Remove no-op code in URI encoding
...
Closes gh-24413
2020-01-24 15:37:01 +00:00
Rob Winch
ab70acb325
Fix Additional Asciidoctor Warnings
...
Fix "unknown style for example block: INFO"
Issue gh-24427
2020-01-24 09:29:13 -06:00
Sam Brannen
75a1395226
Link to BeanShell homepage
2020-01-24 16:20:02 +01:00
Rob Winch
754a8ca05a
Fix Asciidoctor Warnings
...
- Fix "possible invalid reference" errors
- Add <filename>.adoc where necessary
- Remove invalid link to beans-servicelocator This section no longer exists
- Fix "skipping reference to missing attribute" errors
- Add pass macro to escape literals interpreted as attributes
- Add missing :api-spring-framework: attribute
- Remove invalid {JB} attribute
Closes gh-24427
2020-01-24 09:14:07 -06:00
Juergen Hoeller
7c47e3ba2e
Upgrade to Netty 4.1.45, Jetty 9.4.26, Groovy 2.5.9, Woodstox 6.0.3, Caffeine 2.8.1, OpenPDF 1.3.12
2020-01-24 14:55:08 +01:00
Juergen Hoeller
60c7af3625
Mention HikariCP next to DBCP and C3P0 in connection pool notes
...
Closes gh-24405
2020-01-24 14:54:02 +01:00
Kalmesh Sambrani
d085577e0a
Solve ReflectPermission Issue in Sandbox Security Policy Model
2020-01-24 14:15:39 +01:00
Hyunjin Choi
a2af5a90dc
Simplify UrlFileNameViewController#getViewNameForUrlPath()
...
Closes gh-24419
2020-01-24 11:39:05 +01:00
Johnny Lim
5a0b768a3d
Fix typo in Javadoc
2020-01-23 15:52:46 +00:00
Rossen Stoyanchev
992e75303d
Improve support for generics in Jackson codecs
...
Closes gh-23791
2020-01-23 12:31:00 +00:00
Rossen Stoyanchev
77517d6cff
Merge path extension related deprecation changes
...
Closes gh-24179
2020-01-22 13:35:21 +00:00
Rossen Stoyanchev
c69703ffdb
Deprecate path extension strategies
...
This commit deprecates PathExtensionContentNegotiationStrategy and
ServletPathExtensionContentNegotiationStrategy and also updates code
that depends on them internally to remove that dependence.
See gh-24179
2020-01-22 13:35:09 +00:00
Rossen Stoyanchev
542e187831
Expose media type mappings in ContentNegotiationManager
...
ContentNegotiationManagerFactoryBean now ensures that
ContentNegotiationManager contains the MediaType mappings even if the
path extension and the parameter strategies are off.
There are also minor fixes to ensure the media type mappings in
ContentNegotiationManagerFactoryBean aren't polluted when mapping keys
are not lowercase, and likewise MappingMediaTypeFileExtensionResolver
filters out duplicates in the list of all file extensions.
See gh-24179
2020-01-22 13:35:09 +00:00
Rossen Stoyanchev
214ba63127
Deprecate config options for content negotiation by path extension
...
See gh-24179
2020-01-22 13:35:09 +00:00
Rossen Stoyanchev
7453c0d0cb
Deprecate config options to match by path extension
...
See gh-24179
2020-01-22 13:35:09 +00:00
Arjen Poutsma
54669c51c9
Use Jackson SequenceWriter for streaming
...
Before this commit, the AbstractJackson2Encoder instantiated a
ObjectWriter per value. This is not an issue for single values or
non-streaming scenarios (which effectively are the same, because in the
latter values are collected into a list until offered to Jackson).
However, this does create a problem for SMILE, because it allows for
shared references that do not match up when writing each value with a
new ObjectWriter, resulting in errors parsing the result.
This commit uses Jackson's SequenceWriter for streaming scenarios,
allowing Jackson to reuse the same context for writing multiple values,
fixing the issue described above.
Closes gh-24198
2020-01-21 14:22:00 +01:00
Rossen Stoyanchev
5e9d29d813
Ability to customize default Smile codecs
...
Closes gh-24382
2020-01-20 17:29:59 +00:00
Rossen Stoyanchev
a234b90abb
Explicit content-type for resources
...
BodyInserters.ofResource now respects the Content-Type, if specified on
the client request or server response.
Closes gh-24366
2020-01-20 17:09:47 +00:00
Rossen Stoyanchev
5d8c5b0d9b
Avoid NPE on comment SSE event
...
Closes gh-24389
2020-01-20 11:26:58 +00:00
Stephane Nicoll
c20a7b4636
Upgrade to Reactor Dysprosium-SR4
...
Closes gh-24355
2020-01-20 09:17:02 +01:00
Sam Brannen
b34404916a
Update copyright date
2020-01-17 18:15:16 +01:00
Сергей Цыпанов
3adc7c3059
Hoist concatenation of two constant Strings out of loops
...
Closes gh-24388
2020-01-17 16:59:39 +01:00
Brian Clozel
59bef22235
Avoid setting special Content-* response headers for Tomcat
...
As of gh-21783, Spring WebFlux uses a `TomcatHeadersAdapter`
implementation to directly address the native headers used by the
server.
In the case of Tomcat, "Content-Length" and "Content-Type" headers are
processed separately and should not be added to the native headers map.
This commit improves the `HandlerAdapter` implementation for Tomcat and
removes those headers, if previously set in the map. The adapter
already has a section that handles the Tomcat-specific calls for such
headers.
Fixes gh-24361
2020-01-17 15:01:58 +01:00
Sam Brannen
daa30a9f0b
Consistent use of AnnotationUtils.rethrowAnnotationConfigurationException()
...
Closes gh-24379
2020-01-16 18:19:11 +01:00
Sam Brannen
984f9de191
Fix Checkstyle violation
...
See gh-24375
2020-01-16 18:14:14 +01:00
Sam Brannen
2a2efbe611
Introduce @Disabled regression test for gh-24375
2020-01-16 17:16:57 +01:00
Rossen Stoyanchev
19180e04d2
Merge pull request #24367 from JacobASeverson/gh-24331
...
Closes gh-24367
2020-01-16 16:01:56 +00:00
Rossen Stoyanchev
b1d93bb307
Polishing contribution
...
See gh-24367
2020-01-16 16:01:31 +00:00
Jacob Severson
8e67b7b2cf
Expose proxyPing Reactor Netty WebSocket
...
See gh-24331
2020-01-16 16:01:31 +00:00
Rossen Stoyanchev
3d33cf3764
Updates to Validation section in reference
...
Closes gh-24338
2020-01-16 15:42:28 +00:00
Rossen Stoyanchev
ac8eaca475
HttpWebHandlerAdapter#formatRequest is protected
...
Closes gh-24352
2020-01-16 14:54:29 +00:00
Rossen Stoyanchev
3c0c0c0597
Fix issue with new line handling in StompDecoder
...
Closes gh-23713
2020-01-16 14:54:10 +00:00
Sam Brannen
16e49bf0c9
Simplify getCache() implementation in CaffeineCacheManager
...
Closes gh-24376
2020-01-16 15:07:14 +01:00
Andy Wilkinson
61d9787b98
Publish a build scan only if authenticated
...
Previously, anyone could publish a scan and publishing was performed
if the GRADLE_ENTERPRISE_URL environment variable was set.
ge.spring.io has now been locked down to prohibit anonymous build scan
publishing. This commit aligns with this change by only attempting to
publish a build scan when authenticated with the server.
Authentication is achieved via an access token that is made available
via an environment variable on CI and locally via a file in ~/.gradle.
One can obtain an access key by running the following command:
./gradlew provisionGradleEnterpriseAccessKey
Closes gh-24371
2020-01-16 11:26:36 +01:00
Gary Hale
e864409c5f
Update Artifactory plugin to 4.12.0
...
Closes gh-24250
2020-01-16 10:50:18 +01:00
Sam Brannen
3b983e2165
Include Objenesis NOTICE file contents in binary distributions
...
Closes gh-24326
2020-01-15 14:18:30 +01:00
Sam Brannen
734db23f4e
Fix Checkstyle violation
...
See gh-gh-24358
2020-01-15 14:09:11 +01:00
Sam Brannen
f527ca7515
Update copyright date
2020-01-15 14:04:50 +01:00
hyeonisism
89b8449999
Simplify getParsedSql() method in NamedParameterJdbcTemplate
...
Closes gh-24358
2020-01-15 14:01:38 +01:00
Sam Brannen
152254ab0a
Document supported characters for identifiers in SpEL expressions
...
Closes gh-24359
2020-01-15 13:53:22 +01:00
Sam Brannen
6c2cb8ecf5
Polish contribution
...
See gh-24351
2020-01-14 17:33:02 +01:00
hyeonisism
f1827cb1f9
Add tests for StringUtils split() method
...
Closes gh-24351
2020-01-14 17:20:38 +01:00
Spring Buildmaster
0f5103de45
Next Development Version
2020-01-14 08:00:45 +00:00
Rossen Stoyanchev
8740c2dc18
Warning against split URL handling in docs
...
Closes gh-24304
2020-01-13 21:33:11 +00:00
Stephane Nicoll
5debd866d4
Upgrade to Reactor Dysprosium SR3
...
Closes gh-24349
2020-01-13 20:22:47 +01:00
Sam Brannen
1c270d8d06
Fix Checkstyle violation
2020-01-13 18:21:36 +01:00
Rossen Stoyanchev
29fe65d23c
Upgrade to Dysprosium snapshots
...
See gh-24349
2020-01-13 16:49:42 +00:00
Sam Brannen
8a6086774f
Polishing regarding AJDT versions
2020-01-13 17:15:27 +01:00
Sam Brannen
33ffdd865d
Update copyright date
2020-01-13 16:29:23 +01:00
Qimiao Chen
c84dd55863
Fix typo in ReflectionUtilsTests
...
Closes gh-24344
2020-01-13 16:27:05 +01:00
Rossen Stoyanchev
cbc57460b7
Support for maxInMemorySize in SSE reader
...
Closes gh-24312
2020-01-13 14:57:14 +00:00
Rossen Stoyanchev
a741ae422b
Improve limit handling in StringDecoder
...
The case of one data buffer containing multiple lines can could cause
a buffer leak due to a suspected issue in concatMapIterable. This
commit adds workarounds for that until the underlying issue is
addressed.
Closes gh-24339
2020-01-13 14:57:14 +00:00
Sam Brannen
850cbf032b
Document Objenesis license in license.txt
...
Closes gh-24340
2020-01-13 14:42:04 +01:00
Sam Brannen
a566083a07
Update ASM and CBLIB versions in license.txt
2020-01-13 13:16:50 +01:00
Sam Brannen
798744838c
Revise exception handling in AbstractEmbeddedDatabaseConfigurer
...
See gh-24337
2020-01-13 12:51:31 +01:00
Sébastien Deleuze
3f1882c4eb
Support noarg callable references in Kotlin beans DSL
...
Closes gh-23395
2020-01-13 10:53:23 +01:00
Juergen Hoeller
0801a7d7e4
Upgrade to RxJava 2.2.17, OkHttp 3.14.6, Jetty Reactive HttpClient 1.1.1
2020-01-13 10:40:01 +01:00
Sébastien Deleuze
6747cc1353
Make WebTestClientExtensions.expectBody generics compliant
...
Closes gh-24142
2020-01-13 10:06:03 +01:00
Sébastien Deleuze
bc7d010485
Update CORS support
...
This commit updates CORS support in order to check Origin header
in CorsUtils#isPreFlightRequest which does not change how Spring
MVC or WebFlux process CORS request but is more correct in term
of behavior since it is a public API potentially used in another
contexts.
It also removes an unnecessary check in
AbstractHandlerMethodMapping#hasCorsConfigurationSource and processes
every preflight request with PreFlightHandler.
Closes gh-24327
2020-01-13 08:33:14 +01:00
Sam Brannen
8396e6bdd1
Link to ADJT in the Eclipse Marketplace
2020-01-11 13:11:17 +01:00
Sam Brannen
cb8db1e6df
Polish Javadoc
2020-01-10 16:05:33 +01:00
Brian Clozel
a31a4f8148
Copy strategiesConfigurers when cloning WebClient.Builder
...
This commit fixes the missing `strategiesConfigurers` copy when the
`WebClient.Builder` is cloned.
Fixes gh-24329
2020-01-10 15:59:59 +01:00
Stephane Nicoll
bdb9f9570e
Polish
2020-01-09 17:08:48 +01:00
Juergen Hoeller
f6ca21f6a4
Upgrade to SLF4J 1.7.30 and Checkstyle 8.28
2020-01-09 17:03:30 +01:00
Juergen Hoeller
4936a637fe
Polishing
2020-01-09 17:03:17 +01:00
Sam Brannen
e8ef93c508
Polish contribution
...
See gh-24321
2020-01-09 15:56:25 +01:00
lixiaolong11000
047eefd2e2
Improve exception message in AopContext.currentProxy()
...
Closes gh-24321
2020-01-09 15:56:09 +01:00
Juergen Hoeller
b0e4b7e29c
Re-calculate SimpleKey's hashCode field on deserialization
...
Closes gh-24320
2020-01-09 15:39:04 +01:00
Rossen Stoyanchev
08e9372ded
Restore response after beforeCommit action errors
...
See gh-24186
2020-01-09 11:10:44 +00:00
Rossen Stoyanchev
34d32402d3
Return 500 if producible attribute present
...
When a request is mapped through a producible condition on an
@RequestMapping, then a failure to find a converter/decoder should be
a 500 because the return type + media type pair were declared by the
controller and that should be possible to render.
Closes gh-23287
2020-01-09 11:10:44 +00:00
Andy Wilkinson
1ec15ba9c2
Always configure PDF backend as task will only run on cache miss
...
Previously, the Asciidoctor task was not cacheable and generating the
PDF documentation was very slow. To improve build times, the PDF
documentation was not generated for snapshot builds.
The upgrade to 2.4.0 of the Asciidoctor Gradle pluging means that the
Asciidoctor task is now cacheable. As such, its tasks will only run
when the documentation has changed. This should allow PDF
documentation to be published for every build without slowing things
down too much and the cost of generating the documentation will only
be incurred when there is a change to the documentation.
See gh-24216
2020-01-09 10:17:44 +01:00
Andy Wilkinson
2ac5744323
Upgrade to Asciidoctor Gradle Plugin 2.4
...
This commit updates the build to use the latest version of the
Asciidoctor Gradle Plugin. One significant new feature is that the
plugin's tasks are now cacheable.
Closes gh-24216
2020-01-09 10:17:27 +01:00
Juergen Hoeller
c39ed52f97
Add since tag to hasMethod(Class, Method)
...
See gh-24282
2020-01-08 19:05:03 +01:00
stsypanov
8e5cad2af3
Add fast path for ClassUtils.hasMethod()
2020-01-08 18:52:15 +01:00
Juergen Hoeller
c562c3a0b3
Upgrade to Netty 4.1.44, Jetty 9.4.25, Undertow 2.0.29, OkHttp 3.14.5, Jackson 2.10.2
2020-01-08 18:38:55 +01:00
Juergen Hoeller
259ffe9b3b
Thread-safe compiled expression evaluation in SpelExpression
...
Closes gh-24265
2020-01-08 18:37:07 +01:00
Rossen Stoyanchev
9d6e40fb1e
Merge pull request #24143 from yoshikawaa/patch-1
...
Closes gh-24143
2020-01-08 16:48:54 +00:00
Rossen Stoyanchev
d509d5ae6f
Polishing contribution
...
See gh-24143
2020-01-08 16:47:33 +00:00
Astushi Yoshikawa
53b39eb753
MvcUriComponentsBuilder prepends slash
...
See gh-24143
2020-01-08 16:47:33 +00:00
Rossen Stoyanchev
1dd5db42ab
Merge pull request #24292 from ofaizulin/rd-httpmsgconv-fix-isr-contentlength
...
Closes gh-24292
2020-01-08 16:19:42 +00:00
Rossen Stoyanchev
01827389ef
Polishing contribution
...
See gh-24292
2020-01-08 16:19:25 +00:00
Oleh Faizulin
e96b71acf3
contentLength support for Resource decoding
...
Expose the known content length, if known, in the InputStreamResource returned by ResourceHttpMessageConverter or
ResourceDecoder.
See gh-24292
2020-01-08 16:19:11 +00:00
Sam Brannen
e3e7d90415
Improve documentation for FullyQualifiedAnnotationBeanNameGenerator
...
See gh-24114
2020-01-08 16:47:39 +01:00
Sam Brannen
b4c91e7dac
Introduce BeanNameGenerator based on fully qualified class name
...
Prior to this commit, Spring offered two top-level implementations of
the BeanNameGenerator strategy: DefaultBeanNameGenerator and
AnnotationBeanNameGenerator. The latter is used as the default bean
name generator for beans picked up via component scanning. In a typical
application, this strategy works well; however, if multiple component
scanned beans have the same simple class name (i.e., identical names
ignoring the package), a BeanDefinitionStoreException is thrown.
To address such naming conflicts, users of Spring have had to implement
a custom BeanNameGenerator based on the fully qualified class name of
such components.
Similar conflicts can arise with components registered via
configuration class imports (i.e., via @Import), and
ConfigurationClassPostProcessor addresses this via an anonymous inner
class that extends AnnotationBeanNameGenerator but falls back to using
the fully qualified class name if an explicit bean name is not provided
via an annotation.
This commit extracts the implementation of
ConfigurationClassPostProcessor's internal BeanNameGenerator into a new
top-level FullyQualifiedAnnotationBeanNameGenerator class that can be
used to disambiguate between same-named components residing in
different packages that are picked up via component scanning. This bean
name generator can be configured via @ComponentScan's nameGenerator
attribute.
Closes gh-24114
2020-01-07 19:39:28 +01:00
Sam Brannen
e1fb4a1966
Polishing
2020-01-07 18:47:54 +01:00
Sam Brannen
ef6b1ba034
Update copyright date
2020-01-07 17:15:23 +01:00
Rossen Stoyanchev
9d963abb7d
Concrete MediaType check in StringHttpMessageConverter
...
Closes gh-23287
2020-01-07 15:02:39 +00:00
stsypanov
c480a99a77
Trim line from LineInfo only once
2020-01-07 14:44:09 +01:00
Sam Brannen
55e0ff11ca
Add note regarding ADJT development builds for Eclipse 4.10
2020-01-07 13:59:31 +01:00
Sam Brannen
12a78d1af2
Update copyright date
...
See gh-24305
2020-01-07 11:36:53 +01:00
GungnirLaevatain
4692f20aac
Remove code duplication in AnnotationDrivenBeanDefinitionParser
...
This commit merges the implementations of getCallableInterceptors()
and getDeferredResultInterceptors() in order to remove code duplication.
Closes gh-24305
2020-01-07 11:35:38 +01:00
Sam Brannen
141dae6437
Polish contribution
...
See gh-24293
2020-01-07 11:07:03 +01:00
lixiaolong11000
132805133d
Improve ExposeInvocationInterceptor exception message
...
Closes gh-24293
2020-01-07 11:03:11 +01:00
Brian Clozel
ffc1f960f9
Polish
...
See gh-24238
2020-01-07 09:05:49 +01:00
Rossen Stoyanchev
ea6d2ea1ce
Multi-value headers in ResponseStatusException
...
Closes gh-24261
2020-01-06 22:13:55 +00:00
Brian Clozel
f9c1565f4e
Remove Content-* response headers for error handling
...
Prior to this commit, when WebFlux handlers added `"Content-*"` response
headers and an error happened while handling the request, all those
headers would not be cleared from the response before error handling.
This commit clears those headers from the response in two places:
* when invoking the handler and adapting the response
* when writing the response body
Not removing those headers might break HTTP clients since they're given
wrong information about how to interpret the HTTP response body: the
error response body might be very different from the original one.
Fixes gh-24238
2020-01-06 16:55:08 +01:00
Sam Brannen
59ade91694
Use HTTPS in link
...
See gh-24268
2020-01-06 14:45:17 +01:00
Sam Brannen
c1d0060a6f
Recommend third-party alternatives in BeanUtils Javadoc
...
See gh-24268
2020-01-06 14:41:00 +01:00
Sam Brannen
3299793c8a
Polish [Simple]AliasRegistry[Tests]
2020-01-06 11:30:05 +01:00
Qimiao Chen
d0c2812dad
Optimize SimpleAliasRegistry hasAlias implementation
...
This commit reduces the number of loops and recursions in
the implementation of SimpleAliasRegistry#hasAlias().
Closes gh-24295
2020-01-06 11:28:24 +01:00
Sam Brannen
328e88d204
Document minimum Buildship and Eclipse requirements
2020-01-06 10:53:20 +01:00
Sam Brannen
22a888b53d
Polish test fixture publication skipping config
...
Thanks to @jjohannes for the tip.
See gh-23550
2020-01-03 14:56:13 +01:00
Sam Brannen
081b3d304d
Move JavaUtilLoggingConfigurer to spring-core test fixtures
...
See gh-23550
2020-01-03 14:34:29 +01:00
Rossen Stoyanchev
92a28392db
Merge pull request #24287 from KangZhiDong/master
...
Closes gh-24287
2020-01-03 11:22:00 +00:00
Rossen Stoyanchev
510ef1ab2e
Polishing contribution
...
See gh-24287
2020-01-03 11:21:07 +00:00
KangZhiDong
f585eb0b79
Fix Javadoc typos
...
See gh-24287
2020-01-03 11:21:07 +00:00
Rossen Stoyanchev
03ea92df99
Improve RestClientException Javadoc
...
Closes gh-24288
2020-01-03 11:12:01 +00:00
Rossen Stoyanchev
68f9f8116c
Fix typo in RSocket reference
...
See gh-24245
2020-01-03 08:11:14 +00:00
Sam Brannen
3aa2605fda
Replace TestSourcesPlugin with Gradle test fixture support
...
Prior to this series of commits, the Spring Framework build used a
custom TestSourcesPlugin to share test utilities and fixtures between
projects. This plugin served its purpose; however, it also had its
drawbacks:
- All test code was visible in all other (downstream) projects, and that
made it too easy to introduce unnecessary coupling. For example,
this made it more difficult to migrate to JUnit Jupiter.
This commit addresses such issues by migrating to Gradle's first-class
support for "Java test fixtures".
- Having test fixture code in a dedicated source folder makes it
readily apparent that the code is reused across the test suite.
- The build is now much cleaner since projects explicitly declare that
they rely on specific test fixtures of upstream projects.
- Incremental builds are now much faster on average since downstream
projects no longer have to be recompiled due to changes in tests in
upstream projects.
- Prior to these commits we effectively had around 20 test fixture
dependencies. With these commits we effectively now have only 7 test
fixture dependencies (i.e., projects that share test fixtures).
Closes gh-23550
2020-01-02 16:01:56 +01:00
Sam Brannen
d5f0bb23ae
Disable publication of test fixture artifacts
...
Thanks to @melix for providing the code snippet necessary to achieve
this with Gradle 5.6.x.
See gh-23550
2020-01-02 16:01:35 +01:00
Sam Brannen
c91dd02905
Delete obsolete TestSourcesPlugin
...
Since we have migrated to Gradle's built-in test fixture support, the
custom TestSourcesPlugin Gradle plugin is now obsolete.
See gh-23550
2020-01-02 16:01:35 +01:00
Sam Brannen
7b6d83a106
Use Gradle test fixture support for spring-web
...
See gh-23550
2020-01-02 16:01:35 +01:00
Sam Brannen
8a371c7669
Use Gradle test fixture support for spring-aop
...
See gh-23550
2020-01-02 16:01:35 +01:00
Sam Brannen
5581f3b77b
Use Gradle test fixture support for spring-tx
...
See gh-23550
2020-01-02 16:01:35 +01:00
Sam Brannen
57b771ba92
Move common FactoryMethods to spring-beans test fixtures
...
See gh-23550
2020-01-02 16:01:35 +01:00
Sam Brannen
94f8ef08e2
Move common TestPrincipal to spring-core test fixtures
...
See gh-23550
2020-01-02 16:01:35 +01:00
Sam Brannen
726b1bb1d0
Rename test fixture package in spring-context
...
See gh-23550
2020-01-02 16:01:35 +01:00
Sam Brannen
7cd4ddf5fc
Rename test fixture package in spring-beans
...
See gh-23550
2020-01-02 16:01:35 +01:00
Sam Brannen
4260c34b47
Rename test fixture package in spring-core
...
See gh-23550
2020-01-02 16:01:34 +01:00
Sam Brannen
0335db23c9
Use Gradle test fixture support for spring-context-support
...
See gh-23550
2020-01-02 16:01:34 +01:00
Sam Brannen
61d4ee594d
Use Gradle test fixture support for spring-beans and spring-context
...
See gh-23550
2020-01-02 16:01:34 +01:00
Sam Brannen
5718bf424b
Use Gradle test fixture support for spring-core
...
See gh-23550
2020-01-02 16:01:34 +01:00
Brian Clozel
75fd391fc7
Remove quality parameter from selected media type
...
Prior to this commit, WebFlux application would keep the quality
parameter from the "Accept" request header when selecting a media type
for the response. It would then echo it back to the client.
While strictly not wrong, this is unnecessary and can confuse HTTP
clients. This commit aligns WebFlux's behavior with Spring MVC.
Fixes gh-24239
2020-01-02 11:29:04 +01:00
Honnix
8082b338e2
Document that SpEL supports symbolic logical operators
...
Make it clear that symbolic logical operators are supported.
Closes gh-24276
2019-12-31 18:58:48 +01:00
Rossen Stoyanchev
956ffe6858
ContentDisposition refactoring
...
See gh-24220
2019-12-26 17:30:15 +00:00
Stephane Nicoll
3cf806a668
Merge pull request #24266 from PascalSchumacher
...
* pr/24266:
Add missing space in AopConfigException message
Closes gh-24266
2019-12-26 09:55:41 +01:00
Pascal Schumacher
e7d489667c
Add missing space in AopConfigException message
...
See gh-24266
2019-12-26 09:52:54 +01:00
Stephane Nicoll
9c17eb59a4
Merge pull request #24252 from ghale
...
* pr/24252:
Upgrade to Gradle build scan plugin 3.1.1
Closes gh-24252
2019-12-23 17:16:58 +01:00
Gary Hale
2d779857aa
Upgrade to Gradle build scan plugin 3.1.1
...
See gh-24252
2019-12-23 17:09:48 +01:00
Stephane Nicoll
9c2d146a51
Merge pull request #24251 from ghale
...
* pr/24251:
Upgrade to nohttp plugin 0.0.4.RELEASE
Closes gh-24251
2019-12-23 16:47:45 +01:00
Gary Hale
b6b7162d61
Upgrade to nohttp plugin 0.0.4.RELEASE
...
See gh-24251
2019-12-23 16:46:35 +01:00
Ferdinand Jacobs
0b5ad09394
Fix example in RSocket docs
...
Closes gh-24245
2019-12-22 16:48:58 +01:00
Sam Brannen
1b4fd1cba1
Polishing
2019-12-22 16:00:45 +01:00
Rossen Stoyanchev
261956fd08
Improve UriBuilder Javadoc on query params
...
Add a note on encoding for query parameters specifically mentioning the
"+" sign and a link to the reference docs.
Also remove duplicate Javadoc in UriComponentsBuilder which is already
inherited from UriBuilder.
2019-12-20 11:03:08 +00:00
Rossen Stoyanchev
a1b8b18282
Polishing logPrefix Javadoc in ClientRequest|Response
...
Closes gh-23791
2019-12-20 09:27:40 +00:00
Rossen Stoyanchev
7456fb9c65
Add failing test to be fixed
...
See gh-23791
2019-12-20 09:15:44 +00:00
Rossen Stoyanchev
ea4f1ca5d5
Update ContentDisposition to RFC 6266
...
Close gh-24231
2019-12-19 16:27:40 +00:00
Rossen Stoyanchev
15321a3163
Fix checkstyle violations
2019-12-19 13:06:53 +00:00
Rossen Stoyanchev
41f40c6c22
Escape quotes in filename
...
Closes gh-24220
2019-12-19 12:23:12 +00:00
Rossen Stoyanchev
44da775134
CorsInterceptor skips async dispatch
...
Closes gh-24223
2019-12-18 16:48:49 +00:00
Rossen Stoyanchev
0eacb443b0
Reuse InputStream in ResourceRegionHttpMessageConverter
...
The converter now tries to keep reading from the same InputStream which
should be possible with ordered and non-overlapping regions. When
necessary the InputStream is re-opened.
Closes gh-24214
2019-12-18 16:22:53 +00:00
Juergen Hoeller
7474ee7041
Polishing
2019-12-16 16:50:30 +01:00
Juergen Hoeller
0711e58a5f
Un-deprecate PathResource (for NIO Path resolution in createRelative)
...
Includes aligned createRelative signature and dedicated java.io.File test.
Closes gh-24211
2019-12-16 16:50:04 +01:00
Juergen Hoeller
f353bc0c25
ConcurrentReferenceHashMap cache for getInterfaceMethodIfPossible results
...
Closes gh-24206
2019-12-16 16:49:39 +01:00
Juergen Hoeller
5836680490
Upgrade to Log4J 2.13 and RxJava 2.2.16
2019-12-15 23:28:04 +01:00
Rossen Stoyanchev
5f9178034c
Merge pull request #2079
...
Closes gh-2079
2019-12-13 16:55:38 +00:00
Rossen Stoyanchev
542297b30d
Polishing of contribution
...
See gh-2079
2019-12-13 16:54:53 +00:00
Dzmitry Kabysh
f4509d6e3a
Allow any Accept and Content-Type raw values
...
See gh-2079
2019-12-13 16:20:55 +00:00
wonwoo
f8d6896e40
Replace context object with "it" argument
...
Closes gh-23482
2019-12-13 16:19:06 +00:00
Sam Brannen
6fdf5ef6ee
Polish contribution
...
See gh-24205
2019-12-13 17:14:26 +01:00
Сергей Цыпанов
d9cae339d6
Simplify AdvisedSupport.removeAdvisor()
...
Closes gh-24205
2019-12-13 17:12:18 +01:00
Sam Brannen
17edbec035
Polishing
2019-12-13 16:30:03 +01:00
Sam Brannen
47b18e5ea9
Polishing
2019-12-13 16:12:39 +01:00
lixiaolong11000
bee2b7cd73
Add missing test cases in XmlBeanFactoryTests
...
Closes gh-24189
2019-12-13 15:56:06 +01:00
Sam Brannen
49ddf798e0
Polish ClassUtils.resolvePrimitiveClassName()
...
See gh-24192
2019-12-13 15:47:05 +01:00
Arjen Poutsma
09b6730f3d
Expose logPrefix in ClientResponse
...
This commit exposes the logPrefix field in the ClientResponse interface.
Closes gh-24146
2019-12-13 10:59:53 +01:00
Gary Russell
63844c6d74
MappingJackson2MessageConverter: fix javadoc typo
...
`getJavaTypeForMessage()` - wrong parameter description.
2019-12-13 09:58:46 +01:00
Rossen Stoyanchev
1dd0a0f009
Fix since tags from prior commit
2019-12-12 22:03:38 +00:00
Rossen Stoyanchev
b23617637d
Fix cloning issue in CodecConfigurer for multipart writers
...
Closes gh-24194
2019-12-12 21:58:14 +00:00
Rossen Stoyanchev
dd9b6287b4
Expose ClientCodecConfigurer in WebClient.Builder
...
Using Consumer<ClientCodecConfigurer> instead of
Consumer<ExchangeStrategies> eliminates one level of nesting that is
also unnecessary since codecs are the only strategy at present.
Closes gh-24124
2019-12-12 21:58:14 +00:00
Rossen Stoyanchev
11e321b8e7
Add register methods to CodecConfigurer.CustomCodecs
...
The new register methods replace the now deprecated
encoder, decoder, reader, and writer methods, and also offer a choice
to opt into default properties such maxInMemorySize, if configured.
See gh-24124
2019-12-12 21:58:14 +00:00
Rossen Stoyanchev
9d65830133
CodecConfigurer implementation refactoring
...
See gh-24124
2019-12-12 21:57:45 +00:00
Juergen Hoeller
fa8f08391f
Consistent use of annotation-api dependency instead of tomcat-embed-core
2019-12-12 17:21:41 +01:00
Juergen Hoeller
b679c3b6ec
Upgrade to Tomcat 9.0.30
2019-12-12 16:44:21 +01:00
Juergen Hoeller
02b40223e5
Polishing
2019-12-12 16:43:00 +01:00
perceptron8
dafe57fc6e
Add BeanPropertyRowMapper.newInstance(mappedClass, conversionService)
...
Similar to SingleColumnRowMapper.newInstance(requiredType,
conversionService) which was added in #1678 .
2019-12-12 15:40:55 +01:00
Sam Brannen
d757f73902
Handle exceptions in annotation searches again
...
Prior to Spring Framework 5.2, most annotation search algorithms made
use of AnnotationUtils.handleIntrospectionFailure() to handle exceptions
thrown while attempting to introspect annotation metadata. With the
introduction of the new MergedAnnotation API in Spring Framework 5.2,
this exception handling was accidentally removed.
This commit introduces the use of handleIntrospectionFailure() within
the new MergedAnnotation internals in order to (hopefully) align with
the previous behavior.
Closes gh-24188
2019-12-12 11:29:06 +01:00
Juergen Hoeller
9af8dc0980
Polishing
2019-12-11 17:04:49 +01:00
Johnny Lim
8ac222467b
Short-circuit boolean logic in AbstractBeanDefinition.equals()
...
Closes gh-24185
2019-12-11 16:46:47 +01:00
Sam Brannen
6e21b19999
Make TYPE_HIERARCHY_AND_ENCLOSING_CLASSES annotation search strategy defensive
...
Prior to this commit, when searching for annotations using the
TYPE_HIERARCHY_AND_ENCLOSING_CLASSES strategy an exception could be
thrown while attempting to load the enclosing class (e.g., a
NoClassDefFoundError), thereby halting the entire annotation scanning
process.
This commit makes this search strategy defensive by logging exceptions
encountered while processing the enclosing class hierarchy instead of
allowing the exception to halt the entire annotation scanning process.
The exception handling is performed by
AnnotationUtils.handleIntrospectionFailure() which only allows an
AnnotationConfigurationException to propagate.
See gh-24136
2019-12-10 22:38:55 +01:00
Sam Brannen
16ed7e2a19
Only load enclosing class for TYPE_HIERARCHY_AND_ENCLOSING_CLASSES strategy
...
Prior to this commit, the enclosing class was always eagerly loaded
even if the annotation search strategy was not explicitly
TYPE_HIERARCHY_AND_ENCLOSING_CLASSES.
See gh-24136
2019-12-10 22:08:26 +01:00
Sam Brannen
76bc581528
Polishing
2019-12-10 22:06:22 +01:00
Rossen Stoyanchev
9b30d46ff4
JSON charset handling in StringHttpMessageConverter
...
This commit restores the interpretation of JSON as UTF-8 by default that
was removed in #bc205e0 and also ensures a charset is not appended
automatically to "application/json".
Closes gh-24123
2019-12-10 16:52:23 +00:00
Rossen Stoyanchev
70a0c93d69
Correct WebFlux docs on BindingResult with @RequestBody
...
Closes gh-22997
2019-12-10 16:01:33 +00:00
Rossen Stoyanchev
c8bce9686f
ContentDisposition trims charset in filename
...
Closes gh-24112
2019-12-10 15:38:28 +00:00
Rossen Stoyanchev
f180bf7652
Add "application/*+xml" to XML decoders
...
Closes gh-24164
2019-12-10 15:18:04 +00:00
Rossen Stoyanchev
1b172c1d20
Expose localAddress in WebFlux server
...
Closes gh-24174
2019-12-10 15:10:13 +00:00
Sam Brannen
2bd821c909
Improve exception for mixed explicit/implicit aliases with @AliasFor
...
Given the following improperly configured composed @RequestMapping
annotation:
@Retention(RetentionPolicy.RUNTIME)
@RequestMapping
@interface PostApi {
@AliasFor("value")
String[] path() default {};
@AliasFor(annotation = RequestMapping.class, attribute = "path")
String[] value() default {};
}
Prior to this commit, an attempt to process the above annotation
resulted in an exception similar to the following, which is not
especially helpful to discern the problem.
> Attribute 'value' in annotation [PostApi] must be declared as an
> @AliasFor 'path', not 'path'.
This commit improves the exception message for such scenarios,
resulting in an exception message similar to the following.
> Attribute 'value' in annotation [PostApi] must be declared as an
> @AliasFor attribute 'path' in annotation [PostApi], not attribute
> 'path' in annotation [RequestMapping].
Closes gh-24168
2019-12-10 14:36:11 +01:00
Sam Brannen
4466114cfa
Polishing
2019-12-10 14:26:48 +01:00
Stephane Nicoll
8d846500ef
Merge pull request #24172 from izeye
...
* pr/24172:
Use hasSize() where possible
Closes gh-24172
2019-12-10 07:59:17 +01:00
Johnny Lim
1e83e889aa
Use hasSize() where possible
...
See gh-24172
2019-12-10 07:58:53 +01:00
Juergen Hoeller
0a2046e81c
Upgrade to Hibernate ORM 5.4.10, Protobuf 3.11.1, Joda-Time 2.10.5, Commons Pool 2.7
2019-12-10 00:24:26 +01:00
Juergen Hoeller
2c03246f00
Polishing
2019-12-09 15:58:21 +01:00
Juergen Hoeller
2d2993dffb
Cleanup of "varaible" typos in ResolvableTypeTests
2019-12-09 14:03:56 +01:00
Juergen Hoeller
a4f75e9c6a
Polishing
2019-12-09 13:29:00 +01:00
Juergen Hoeller
119dd04ae5
Avoid ByteArrayOutputStream for source values without the need to be encoded
...
Closes gh-24152
2019-12-09 13:28:39 +01:00
stsypanov
ebbb562cb9
Hoist constant result of SerializableTypeWrapper.unwrap() out of loop
2019-12-09 13:14:10 +01:00
Sébastien Deleuze
0f41536820
Fix RSocketRequester Coroutines extensions
...
After gh-24073, some Coroutines extensions should be applied on
RetrieveSpec instead of RequestSpec.
Closes gh-24166
2019-12-09 11:50:06 +01:00
Stephane Nicoll
b1e59961fb
Merge pull request #24160 from PyvesB
...
* pr/24160:
Polish DataBufferUtils javadoc
Closes gh-24160
2019-12-08 14:02:32 +01:00
PyvesB
e15ccdb35d
Polish DataBufferUtils javadoc
...
See gh-24160
2019-12-08 14:01:55 +01:00
Sam Brannen
2108bdf876
Introduce regression test for prototype @ControllerAdvice beans
...
See gh-24157
2019-12-07 18:30:56 +01:00
Sam Brannen
fc42ca2866
Polish contribution
...
See gh-24157
2019-12-07 13:41:43 +01:00
yokotaso
d7d474f658
Do not cache prototype @ControllerAdvice beans
...
Spring Framework 5.2 introduced support for caching @ControllerAdvice
beans; however, this caching was also applied incorrectly to
non-singleton beans.
This commit addresses this regression by only caching singleton
@ControllerAdvice beans.
Closes gh-24157
2019-12-07 13:39:30 +01:00
Sam Brannen
55ae3c5e87
Polishing
2019-12-07 12:59:03 +01:00
Sam Brannen
de8a6c8c57
Polishing
2019-12-06 19:08:54 +01:00
Eric Helgeson
d4d940e6e3
Add missing backtick in WebSocket documentation
...
Closes gh-24155
2019-12-06 19:02:22 +01:00
stsypanov
484006ce90
Hoist Class.getName() from String concatenation to dodge an issue related to profile pollution
2019-12-06 17:36:07 +01:00
Phillip Webb
7c84695333
Support variable resolution of wildcard types
...
Update `ResolvableType` so that variable referenced can be resolved
against wildcard types. Prior to this commit, given a type:
Map<String, ? extends List<? extends CharSequence>>
Calling `type.getGeneric(1).asCollection().resolveGeneric()` would
return `null`. This was because the `List` variable `E` referenced a
wildcard type which `resolveVariable` did not support.
Closes gh-24145
2019-12-06 13:38:46 +01:00
Sam Brannen
a4fa6a7a31
Test status quo for @Inherited annotation support in AnnotationMetadata
2019-12-05 23:30:14 +01:00
Sam Brannen
3b9d1a00b0
Polishing
2019-12-05 22:37:00 +01:00
Juergen Hoeller
c2141e2e93
Add @since tags to firstElement methods
2019-12-05 16:36:55 +01:00
Vitalii Rastvorov
d503bc2804
Add firstElement to CollectionUtils
2019-12-05 16:26:25 +01:00
Johnny Lim
14ce84cebb
Fix status code in webflux.adoc
2019-12-05 12:25:04 +00:00
Rossen Stoyanchev
828fe39523
Consistently use releaseBody in DefaultWebClient
...
See gh-24125
2019-12-04 18:19:52 +00:00
Rossen Stoyanchev
3a48682226
Replace ReadCancellationException with takeWhile
...
Closes gh-24125
2019-12-04 18:19:52 +00:00
Rossen Stoyanchev
b866d4209c
Add UriUtils.encodeQueryParams
...
Closes gh-24043
2019-12-04 17:33:31 +00:00
Rossen Stoyanchev
797f618f2b
Remove mismatched marker in core-beans.adoc
...
Closes gh-24132
2019-12-04 16:14:14 +00:00
Sam Brannen
fb13f6f0bc
Add integration test for gh-24110
2019-12-03 16:48:30 +01:00
wanxiangming1994
6f15f32be3
Honor default values for implicit aliases in composed annotations
...
Spring Framework 5.2 introduced a regression for implicit aliases
declared via @AliasFor. Specifically, Spring's merged annotation
algorithms stopped honoring default values for implicit alias pairs if
the composed annotation was used without specifying the aliased
attributes.
This commit fixes this regression.
Closes gh-24110
2019-12-03 16:14:49 +01:00
Spring Buildmaster
1bff7ce141
Next Development Version
2019-12-03 08:59:24 +00:00
Brian Clozel
21053780ef
Polish
2019-12-02 23:13:44 +01:00
Brian Clozel
decbb9ccf9
Provide default codecs config callback to custom codecs
...
As a follow-up of gh-23961, this change provides a way for custom codecs
to align with the default codecs' behavior on common features like
buffer size limits and logging request details.
Closes gh-24118
Co-authored-by: Rossen Stoyanchev <rstoyanchev@pivotal.io >
2019-12-02 22:52:55 +01:00
Wang Xuesong
d1ab81587c
[*.*] is displayed as [bold .] and needs to be escaped
...
execution(* com.xyz.service.*.*(..)) -> execution(* com.xyz.service.\*.*(..))
Closes gh-24108
2019-12-02 19:14:18 +01:00
Rossen Stoyanchev
fcbc437825
Polishing (follow-up on acfeb7)
2019-12-02 17:14:13 +00:00
Brian Clozel
35b7f3bf34
Unpublish Gradle metadata
...
See gh-23503
2019-12-02 16:43:02 +01:00
Sam Brannen
279777b2f3
Polishing
2019-12-02 16:22:40 +01:00
Rossen Stoyanchev
50ac8ad8b7
Fix checkstyle violation
2019-12-02 14:25:00 +00:00
Rossen Stoyanchev
acfeb77d41
Polishing
...
See gh-23961
2019-12-02 14:12:59 +00:00
Brian Clozel
d4209392d2
Allow ExchangeStrategies customizations in WebClient
...
Prior to this commit, developers could configure their WebClient to use
their custom `ExchangeStrategies`, by providing it in the
`WebClient.Builder` chain.
Once created, an `ExchangeStrategies` instance is not mutable, which
makes it hard for further customizations by other components. In the
case of the reported issue, other components would override the default
configuration for the codecs maxInMemorySize.
This commit makes the `ExchangeStrategies` mutable and uses that fact to
further customize them with a new `WebClient.Builder#exchangeStrategies`
`Consumer` variant. This commit is also deprecating those mutating
variants in favor of a new `WebClient.Builder#exchangeStrategies` that
takes a `ExchangeStrategies#Builder` directly and avoids mutation issues
altogether.
Closes gh-23961
2019-12-02 14:12:59 +00:00
Juergen Hoeller
17e2a0c7ea
Upgrade to AspectJ 1.9.5 and Checkstyle 8.27
2019-12-02 12:59:02 +01:00
Brian Clozel
1560bbd81e
Revert "Allow ExchangeStrategies customizations in WebClient"
...
This reverts commit b3020bc484 .
2019-12-02 10:39:53 +01:00
Juergen Hoeller
1548a0c9a0
Upgrade to Mockito 3.2
2019-12-02 00:28:08 +01:00
Juergen Hoeller
32e7adfa32
Polishing
2019-12-01 02:00:40 +01:00
Juergen Hoeller
91b557eb4b
Polishing
2019-12-01 01:21:53 +01:00
Juergen Hoeller
567c7695dd
Polishing
2019-12-01 00:20:00 +01:00
Juergen Hoeller
2267080ff4
Upgrade to Protobuf 3.11 and Apache Johnzon 1.2.2
2019-12-01 00:14:16 +01:00
Brian Clozel
b3020bc484
Allow ExchangeStrategies customizations in WebClient
...
Prior to this commit, developers could configure their WebClient to use
their custom `ExchangeStrategies`, by providing it in the
`WebClient.Builder` chain.
Once created, an `ExchangeStrategies` instance is not mutable, which
makes it hard for further customizations by other components. In the
case of the reported issue, other components would override the default
configuration for the codecs maxInMemorySize.
This commit makes the `ExchangeStrategies` mutable and uses that fact to
further customize them with a new `WebClient.Builder#exchangeStrategies`
`Consumer` variant. This commit is also deprecating those mutating
variants in favor of a new `WebClient.Builder#exchangeStrategies` that
takes a `ExchangeStrategies#Builder` directly and avoids mutation issues
altogether.
Closes gh-23961
2019-11-29 22:26:52 +01:00
Sam Brannen
d7023fd02b
Delete unused JdbcTemplate fields in examples
...
Closes gh-24085
2019-11-29 19:01:42 +01:00
Sam Brannen
52a1fc4329
Polish BatchPreparedStatementSetter example in reference manual
...
Closes gh-24084
2019-11-29 18:50:42 +01:00
Sam Brannen
5648ef3276
Fix examples for <tx:method/> settings in reference manual
...
Closes gh-24080
2019-11-29 18:41:59 +01:00
Andy Wilkinson
7f61f3852c
Enable reading from the remote build cache for all
...
Previously, the remote build cache was only enabled if the
GRADLE_ENTERPRISE_URL environment variable was configured. This meant
that contributors would not benefit from the build time improvements
of the caching without some additional setup.
This commit updates the buildCache configuration so that reading from
the remote build cache at https://ge.spring.io is enabled for all.
Pushing to the cache continues to be disabled unless the required
credentials are provided. Build scan configuration has also been
updated in line with this change. While the server URL is now
hardcoded, publishing is still opt-in via an environment variable.
The exact mechanism by which someone can opt in will change in the
future once some server-side changes have been made. At this point,
only a change to publishAlwaysIf should be necessary.
Closes gh-24105
2019-11-29 17:58:09 +01:00
Sam Brannen
093323beeb
Introduce Checkstyle rule to prohibit class names ending with "Test"
2019-11-29 17:30:29 +01:00
Rossen Stoyanchev
c18d1ce7ca
Merge pull request #24074
...
Closes gh-24074
2019-11-29 15:55:14 +00:00
Rossen Stoyanchev
395c1e415c
Polishing contribution
...
See gh-24074
2019-11-29 15:54:58 +00:00
Frederik Boster
a15a726fef
Improve getMultipartContentType in mock request.
...
See gh-24074
2019-11-29 15:54:58 +00:00
Rossen Stoyanchev
47779df896
Merge pull request #24087
...
Closes gh-24087
2019-11-29 15:54:15 +00:00
Rossen Stoyanchev
25f3465f1f
Polishing contribution
...
See gh-24087
2019-11-29 15:53:37 +00:00
Parviz ROzikov
e858b21c60
#24022 - added protobuf MessageConverter
2019-11-29 14:20:05 +00:00
Sam Brannen
d9ebc3bbc4
Polish StringArrayPropertyEditor[Tests]
2019-11-29 14:55:18 +01:00
Sam Brannen
7cedffc707
Support @Inherited again in reflection-based AnnotationMetadata
...
Spring Framework 5.2 introduced a regression in reflection-based
AnnotationMetadata. Specifically, as of 5.2, StandardAnnotationMetadata
no longer found @Inherited annotations from superclasses.
This commit fixes this regression by switching to the INHERITED_ANNOTATIONS
SearchStrategy when creating the MergedAnnotations used within
StandardAnnotationMetadata,
Note, however, that the discrepancy between StandardAnnotationMetadata
and SimpleAnnotationMetadata (i.e., reflection-based vs. ASM-based)
regarding @Inherited support still remains as it was prior to Spring
Framework 5.2.
Closes gh-24077
2019-11-29 00:07:44 +01:00
Sam Brannen
85016aef30
Test status quo for @Inherited annotations in AnnotationMetadata
...
This commit introduces failing assertions that are currently disabled
via a boolean reproduceGh24077 flag.
Setting that flag to true demonstrates the regression for
StandardAnnotationMetadata and inconsistencies for SimpleAnnotationMetadata.
See gh-24077
2019-11-28 18:45:58 +01:00
Sam Brannen
d1f544209e
Test status quo for AnnotatedTypeMetadata.getAnnotationAttributes()
...
See gh-24077
2019-11-28 13:50:35 +01:00
Rossen Stoyanchev
b44daa8b71
Remove the few remaining usages of UriTemplate
...
Also update Javadoc of UriTemplate to point to UriComponentsBuilder and
UriBuilderFactory as more flexible options.
See gh-24094
2019-11-28 11:28:49 +00:00
Rossen Stoyanchev
df2ed75df0
MultipartBodyBuilder Javadoc update
...
Closes gh-24031
2019-11-28 10:40:28 +00:00
Brian Clozel
d8f7ed133f
Puslish Gradle metadata
...
Closes gh-23503
2019-11-28 10:48:13 +01:00
Sébastien Deleuze
6f3909f2f0
Upgrade to Kotlin 1.3.61
...
Closes gh-24006
2019-11-28 09:44:50 +01:00
Johnny Lim
4aa013c508
Remove duplicate checks in ResponseCookieTests
2019-11-28 07:15:15 +00:00
stsypanov
62ca7c4e8f
Hoist constant byte[] out of loop
2019-11-27 19:19:36 +01:00
Stephane Nicoll
52630b06f5
Upgrade to Reactor Dysprosium-SR2
...
Closes gh-24037
2019-11-27 11:52:43 +01:00
Stephane Nicoll
c394bdbbc3
Merge pull request #24089 from ryenus
...
* pr/24089:
Fix consecutive-word duplications in documentation
Closes gh-24089
2019-11-27 09:43:34 +01:00
ryenus
40331eaca3
Fix consecutive-word duplications in documentation
...
See gh-24089
2019-11-27 09:42:44 +01:00
Rossen Stoyanchev
26d800cc93
Fix empty payload handling in RSocketRequester
...
Closes gh-24088
2019-11-27 07:35:45 +00:00
Rossen Stoyanchev
5a552f1670
Update links between WebFlux and Web MVC
2019-11-26 21:50:01 +00:00
Rossen Stoyanchev
30d68f2de7
Reject user names with "%2F" in STOMP
...
Closes gh-23836
2019-11-26 16:21:48 +00:00
Rossen Stoyanchev
08669cc7c3
Updates to CONTRIBUTING.md
...
Closes gh-22892
2019-11-26 15:59:57 +00:00
jasdeepgill
db97dac86d
Improve readability of CONTRIBUTING.md
...
Closes gh-24068
2019-11-26 15:59:57 +00:00
Rossen Stoyanchev
f57f337104
Protected method to decorate WebSocketHandler
...
See gh-24075
2019-11-26 12:08:22 +00:00
Rossen Stoyanchev
526d89e1e6
Refine Throwable handling in spring-websocket
...
This commit lowers the level of Throwable handling in parts of
spring-websocket which now handle Exception instead and allow any Error
to propagate.
Closes gh-24075
2019-11-26 12:04:00 +00:00
Rossen Stoyanchev
70a3dbff24
WebSession creation does not block
...
Closes gh-24027
2019-11-26 10:48:39 +00:00
Arjen Poutsma
ddb38eefee
Expose method to determine form content type
...
This commit exposes the method that returns the media type used to write
forms. By default, it includes the charset in the content type, which
can cause issues with certain consumers. This commit changes the method
from a private to a protected method, so that users can override the
default behavior.
Closes: gh-22971
2019-11-26 10:50:08 +01:00
Arjen Poutsma
2d86f221ce
Remove println
2019-11-25 18:27:34 +01:00
Arjen Poutsma
5f3c7ca559
Fix NullPointerException in Jackson2SmileDecoder
...
Fix uncommon case in Jackson2SmileDecoder, where a null token,
incicating a document separator in streaming mode, is followed by
NOT_AVAILABLE.
Closes gh-24009
2019-11-25 16:23:27 +01:00
Arjen Poutsma
a79eaded5d
Javadoc
2019-11-25 16:23:27 +01:00
Rossen Stoyanchev
6ed1b5835b
Separate step for retrieve in RSocketRequester
...
Closes gh-24073
2019-11-25 11:47:41 +00:00
Christoph Dreis
b234c77b67
Add missing verify() in EncoderHttpMessageWriterTests
...
Closes gh-24062
2019-11-25 10:51:00 +00:00
Juergen Hoeller
88fd90c357
Upgrade to Tomcat 9.0.29, Jetty 9.4.24, RxJava 2.2.15
2019-11-24 19:58:19 +01:00
Sam Brannen
59e250c93c
Consistent use of SCOPE_PROTOTYPE and SCOPE_SINGLETON constants
...
Closes gh-19905
2019-11-24 13:49:43 +01:00
Rossen Stoyanchev
7bed4f36da
Add missing verify() in Jackson2TokenizerTests
...
Closes gh-24056
2019-11-22 16:38:43 +00:00
Rossen Stoyanchev
51b35e64cf
Extra isReady-onWritePossible after last write
...
Closes gh-24050
2019-11-22 15:57:21 +00:00
Sébastien Deleuze
6c7250b0ae
Make Kotlin DSL class constructors internal
...
Closes gh-24059
2019-11-22 16:10:42 +01:00
Sébastien Deleuze
dc0ebefc56
Add support for asyncDispatch to MockMvc Kotlin DSL
...
Closes gh-23758
2019-11-22 15:03:17 +01:00
Sébastien Deleuze
712eac2915
Refine Coroutines annotated controller support
...
This commit refines Coroutines annotated controller support
by considering Kotlin Unit as Java void and using the right
ReactiveAdapter to support all use cases, including suspending
functions that return Flow (usual when using APIs like WebClient).
It also fixes RSocket fire and forget handling and adds related tests
for that use case.
Closes gh-24057
Closes gh-23866
2019-11-22 14:13:17 +01:00
Rossen Stoyanchev
21b2fc1f01
Improve HttpHandlerConnection completion
...
Before this commit the connector waited for a completed response (via
ServerHttpResponse#setComplete or ServerHttpResponse#writeWith) or an
error signal in handling, but it didn't deal explicitly with the case
where both can occur.
This commit explicitly waits for the completion of handling (success
or error) before passing the response downstream. If an error occurs
after response completion, it is wrapped in a dedicated exception that
also provides access to the completed response.
Close gh-24051
2019-11-22 10:28:05 +00:00
Juergen Hoeller
b5529f3f2b
Restore short-circuiting in equals implementation
...
Closes gh-24048
2019-11-21 18:20:17 +01:00
stsypanov
1f3b595a03
Use String.isEmpty() instead of String.equals("")
2019-11-21 16:42:01 +01:00
Qimiao Chen
bb2e3ce6d1
Polish AbstractBeanDefinition
...
Closes gh-24048
2019-11-21 15:26:42 +01:00
Juergen Hoeller
336e0595c5
Upgrade to Jetty 9.4.23 and Woodstox 6.0.2
2019-11-21 13:22:30 +01:00
Rossen Stoyanchev
996f7290cf
Allow async metadata in RSocketRequester
...
This commit allows single-value async producers for the values of
metadata entries in both the SETUP and for requests. The same is also
enabled for data in the SETUP frame.
Close gh-23640
2019-11-20 19:41:16 +00:00
Juergen Hoeller
82f4e933e0
Upgrade to Hibernate ORM 5.4.9, Hibernate Validator 6.1, Undertow 2.0.28
2019-11-20 17:37:58 +01:00
Juergen Hoeller
a5f2d8c222
Mark SqlRowSet accessor methods as nullable (for alignment with JDBC)
...
Closes gh-24042
2019-11-20 17:37:40 +01:00
Arjen Poutsma
e8b81ffc16
Improve documentation of WebClient.Builder::filter
...
Closes gh-23342
2019-11-20 11:55:25 +01:00
Stephane Nicoll
6fdeb10ee0
Start building against Reactor Dysprosium-SR2 snapshots
...
See gh-24037
2019-11-20 10:56:44 +01:00
Rossen Stoyanchev
f4e0288357
Remove mentions of Tomcat async request timeout value
...
Close gh-24030
2019-11-19 17:08:43 +00:00
Sam Brannen
2728f10a07
Test instance behavior for request-scoped @ControllerAdvice beans
...
The test introduced in this commit is intended to serve as a regression
test for the status quo.
See gh-23985
2019-11-19 17:10:18 +01:00
Rossen Stoyanchev
f08cf0e864
Add RSocketFrameTypeMessageCondition constants
...
See gh-23999
2019-11-19 16:03:56 +00:00
Sam Brannen
cd619a2f09
Update @since tag
2019-11-19 16:07:12 +01:00
Sam Brannen
fd6efb9a65
Polishing
2019-11-19 15:53:20 +01:00
Juergen Hoeller
06b1f31cdd
SynthesizedMergedAnnotationInvocationHandler does not pre-load values
...
Closes gh-24029
2019-11-19 14:54:12 +01:00
Juergen Hoeller
4af6039359
Avoid substring allocation in StringUtils.replace
...
Closes gh-24023
2019-11-19 14:53:30 +01:00
Sam Brannen
b4e1d48322
Ignore scoped proxy targets for @ControllerAdvice beans
...
Prior to this commit, methods in a @ControllerAdvice bean were
registered and invoked twice if the advice was a scoped bean (e.g.,
request or session scoped). In other words, both the proxy bean and the
target bean were wrapped in ControllerAdviceBean instances.
This commit fixes this bug by modifying the findAnnotatedBeans() method
in ControllerAdviceBean so that it filters out targets of scoped
proxies.
Closes gh-24017
2019-11-19 14:20:25 +01:00
Sébastien Deleuze
4c17314d0e
Upgrade to Kotlin 1.3.60
...
Closes gh-24006
2019-11-19 10:50:05 +01:00
Arjen Poutsma
9f7dd9f352
Add test for usage of bodyToMono in WebClient.ResponseSpec::onStatus
...
See gh-23365
2019-11-19 10:22:54 +01:00
Sam Brannen
3a39b7fe82
Support scoped @ControllerAdvice beans again
...
Spring Framework 5.2 introduced support for implementing the Ordered
interface in a @ControllerAdvice bean. This support requires that
@ControllerAdvice beans be eagerly resolved from the BeanFactory in
order to invoke the getOrder() method defined in the Ordered interface.
Unfortunately doing so resulted in a regression in that an attempt to
eagerly resolve a scoped @ControllerAdvice bean throws a
BeanCreationException due to the lack of an active scope (e.g., request
or session scope).
This commit fixes this regression by avoiding eager resolution of scoped
@ControllerAdvice beans. As a direct consequence, the Ordered interface
is not supported for scoped @ControllerAdvice beans.
Closes gh-23985
2019-11-18 22:29:00 +01:00
Sam Brannen
f0b2f7186a
Polishing
2019-11-18 22:29:00 +01:00
Rossen Stoyanchev
842b424acd
Use method signature to refine RSocket @MessageMapping
...
Before this change an @MessageMapping could be matched to any RSocket
interaction type, which is arguably too flexible, makes it difficult to
reason what would happen in case of a significant mismatch of
cardinality, e.g. request for Fire-And-Forget (1-to-0) mapped to a
method that returns Flux, and could result in payloads being ignored,
or not seen unintentionally.
This commit checks @ConnectMapping method on startup and rejects them
if they return any values (sync or async). It also refines each
@MessageMapping to match only the RSocket interaction type it fits
based on the input and output cardinality of the handler method.
Subsequently if a request is not matched, we'll do a second search to
identify partial matches (by route only) and raise a helpful error that
explains which interaction type is actually supported.
The reference docs has been updated to explain the options.
Closes gh-23999
2019-11-18 17:27:41 +00:00
Sam Brannen
769a15cb82
Polishing
2019-11-18 13:01:26 +01:00
denisgalaybo
9526e39f88
Fix errors in reference manual
...
Closes gh-24008
2019-11-17 13:50:50 +01:00
Sam Brannen
d397baa559
Polish Javadoc for AutowiredAnnotationBeanPostProcessor
2019-11-15 12:43:55 +01:00
Juergen Hoeller
1607f1db0b
Fix Checkstyle nohttp violation
2019-11-15 10:50:28 +01:00
Juergen Hoeller
a43ae63f17
Upgrade to SLF4J 1.7.29, Jackson 2.10.1, WebJars Locator 0.43
2019-11-15 10:21:58 +01:00
Rossen Stoyanchev
9ec67bac82
Merge pull request #1885
...
Closes gh-1885
2019-11-14 17:38:15 +00:00
Rossen Stoyanchev
c33cb26a73
Polishing contribution
...
See gh-1885
2019-11-14 17:38:01 +00:00
Mark Hobson
46fe74d2f9
Preserve media type parameters when setting charset
...
Issue: SPR-17040
2019-11-14 17:38:01 +00:00
Rossen Stoyanchev
905e3c1f9f
Avoid indefinite wait in JettyWebSocketClient
...
Closes gh-23994
2019-11-14 17:37:10 +00:00
Juergen Hoeller
830f81210f
Revise getElementTypeDescriptor javadoc (no IllegalStateException)
...
Closes gh-23996
2019-11-14 18:31:32 +01:00
Sam Brannen
d38b07b450
Move JavaUtilLoggingConfigurer to web.reactive.fixtures package
2019-11-14 15:50:04 +01:00
Sébastien Deleuze
029e61f54a
Refine MethodParameter#isOptional Kotlin implementation
...
This commit adds support for Continuation parameter that is now
considered as an optional parameter since it is never provided by
the user.
It also simplifies and optimizes the implementation.
Closes gh-23991
2019-11-14 15:28:06 +01:00
Sam Brannen
7991066345
Fix classpath
2019-11-14 15:25:26 +01:00
Sam Brannen
89b3a9cef2
Introduce JavaUtilLoggingConfigurer to configure JUL for tests
2019-11-14 14:30:21 +01:00
Stephane Nicoll
1b7ef7fce5
Merge pull request #23995 from izeye
...
* pr/23995:
Polish CorsAbstractHandlerMappingTests
Closes gh-23995
2019-11-14 14:13:23 +01:00
Johnny Lim
56670ebec8
Polish CorsAbstractHandlerMappingTests
...
See gh-23995
2019-11-14 14:13:05 +01:00
Sam Brannen
8df3afd0b6
Polish contribution
...
See gh-23895
2019-11-14 13:26:38 +01:00
SchutzeHades
834ebc44f8
Fix inappropriate eager init.
2019-11-14 10:13:55 +01:00
Sam Brannen
8186b77b58
Polish contribution
...
See gh-23895
2019-11-14 09:59:42 +01:00
monosoul
a0e4ac39bf
Inverse condition to fix ISO-formatted Instant parsing
...
Prior to this commit, InstantFormatter was able to properly serialize
an Instant that is far in the future (or in the past), but it could not
properly deserialize it, because in such scenarios an ISO-formatted
Instant starts with a +/- sign.
This commit fixes this issue, while maintaining the previous contract,
and also introduces tests for InstantFormatter.
Closes gh-23895
2019-11-14 09:59:42 +01:00
Juergen Hoeller
3dc5e7b1d5
Avoid String concatenation for lookup in StaticMessageSource
...
Closes gh-22451
2019-11-13 23:41:26 +01:00
Sébastien Deleuze
6fa9871a70
Provide orNull extensions for WebFlux ServerRequest
...
Closes gh-23761
2019-11-13 17:59:51 +01:00
Juergen Hoeller
22211a01ce
Polishing
2019-11-13 17:23:23 +01:00
Juergen Hoeller
32532a88c1
Polishing
2019-11-13 16:17:08 +01:00
Juergen Hoeller
55011e7a0f
Note on injecting results from local @Bean methods (self references)
...
Closes gh-23934
2019-11-13 16:17:01 +01:00
Rossen Stoyanchev
2c1afca9c5
Reject null form data names
...
...or skip if there are no values either.
Closes gh-22372
2019-11-13 15:03:22 +00:00
Rossen Stoyanchev
f2b9264674
Remove Jetbrains annotations
2019-11-13 14:42:32 +00:00
Rossen Stoyanchev
e6a65804f5
Merge pull request #1956
...
Closes gh-1956
2019-11-13 14:24:23 +00:00
Rossen Stoyanchev
04aa3d05da
Refactor solution for respones error details
...
See gh-1956
2019-11-13 14:24:12 +00:00
jerzykrlk
91ec274b10
SPR-17130 http error details in the exception message
2019-11-13 14:24:12 +00:00
JohnGrib
8bb165e55c
Fix typo in EventSourceTransportHandler
...
Closes gh-23984
* https://github.com/spring-projects/spring-framework/blob/3a0f309e2c9fdbbf7fb2d348be861528177f8555/spring-web/src/main/java/org/springframework/http/codec/ServerSentEvent.java#L24
* https://github.com/spring-projects/spring-framework/blob/3a0f309e2c9fdbbf7fb2d348be861528177f8555/spring-web/src/main/java/org/springframework/http/codec/ClientCodecConfigurer.java#L88
* https://github.com/spring-projects/spring-framework/blob/ef14d76d3637abeb31edd8a22031c21f9445efef/spring-web/src/main/java/org/springframework/http/codec/ServerCodecConfigurer.java#L94
* https://github.com/spring-projects/spring-framework/blob/3a0f309e2c9fdbbf7fb2d348be861528177f8555/spring-websocket/src/main/java/org/springframework/web/socket/sockjs/transport/handler/EventSourceTransportHandler.java#L33
2019-11-13 14:23:58 +00:00
YuDongYing
4e5ae54417
Fix schemaZip Gradle task on MS Windows
...
Prior to this commit, the schemaZip Gradle task failed to find Spring
schema files on MS Windows due to path separators hard coded to forward
slashes that are not compatible with the Windows operating system.
Consequently, a full build failed on Windows since the distZip task was
not able to locate the zipped schema archive that the schemaZip task
failed to create.
This commit fixes this by updating the schemaZip task to search for
schema files using backslashes as well as forward slashes.
Closes gh-23933
2019-11-13 14:49:25 +01:00
Sébastien Deleuze
7646895fd4
Support Kotlin synthetic classes in MethodParameter and SpEL
...
Closes gh-23812
2019-11-13 14:22:53 +01:00
stsypanov
f2b3953d76
Use array.clone() instead of manual array creation
2019-11-13 13:53:42 +01:00
Juergen Hoeller
f61d728db9
Fallback Locale other than the system Locale through setDefaultLocale
...
Closes gh-23977
2019-11-13 13:48:08 +01:00
Rossen Stoyanchev
f4c847b723
MockHttpServletRequestBuilder sets content-length
...
Closes gh-23978
2019-11-12 17:33:14 +00:00
GungnirLaevatain
4bbf2d5785
polish
2019-11-12 17:40:28 +01:00
Rossen Stoyanchev
a0cdbf5153
Merge pull request #23980
...
Closes gh-23980
2019-11-12 16:14:46 +00:00
Rossen Stoyanchev
16c7a40c53
Minor refactoring
...
See gh-23296
2019-11-12 16:14:02 +00:00
Johannes Teklote
879b2df052
queryParam options for MockMVC requeusts
...
See gh-23296
2019-11-12 16:13:51 +00:00
Sam Brannen
a26d37b407
Polishing
2019-11-12 14:01:13 +01:00
Sam Brannen
a276c667d1
Polishing
2019-11-12 13:48:48 +01:00
Juergen Hoeller
9cc06454aa
Restore findAnnotation superclass traversal for java.lang annotations
...
Closes gh-23929
2019-11-12 11:51:44 +01:00
Rossen Stoyanchev
fac9ca891a
Fix copy-and-paste error in docs
2019-11-11 17:31:51 +00:00
Juergen Hoeller
c4ec6aea68
Fix Checkstyle violations
...
See gh-23784
2019-11-11 17:18:52 +01:00
Arjen Poutsma
a7a88371e7
Allow for decode method to return null in AbstractJackson2Decoder
...
Prior to this commit, the decoder did not allow for a null value
returned from the Jackson object reader.
Closes: gh-23935
2019-11-11 16:48:30 +01:00
Arjen Poutsma
789f6fc188
Add @Nullable annotation to decode method taking DataBuffer
...
Javadoc indicates the returned value can be null.
2019-11-11 16:48:30 +01:00
Rossen Stoyanchev
23ec6d243c
Merge pull request #2023
...
Closes gh-2023
2019-11-11 15:04:50 +00:00
Rossen Stoyanchev
347f16c8ac
Polishing
...
See gh-2023
2019-11-11 15:04:36 +00:00
Pat Turner
6db8306e46
XpathResultMatcher supports Hamcrest Matcher NodeList
...
Use when xpath result is XPathConstants.NODESET
2019-11-11 15:04:36 +00:00
Biju Kunjummen
5ee990e045
Use Function.identity
...
Closes gh-2024
2019-11-11 15:04:29 +00:00
Juergen Hoeller
990bfd8772
Support for new MySQL 8 error code 3572
...
Closes gh-23972
2019-11-11 15:55:26 +01:00
Juergen Hoeller
6d47e1e0a1
Fix getHeaderPredicate visibility to be declared as protected
...
Closes gh-23976
2019-11-11 15:55:06 +01:00
Steven Schlansker
fc55e66d50
ApplicationListenerMethodAdapter: gracefully handle beans which are actually NullBean
...
Currently, if you have an optional event listener (via a @Bean method returning `null`)
this causes the event multicaster to explode violently. Now, we just safely skip it.
2019-11-11 15:43:29 +01:00
GungnirLaevatain
d494621ee3
avoid store all bean name
2019-11-11 15:43:05 +01:00
stsypanov
92efe95069
Simplify ConstructorResolver: do not sort intermediate array
2019-11-11 15:42:35 +01:00
Rossen Stoyanchev
51b43496f4
Update docs for ASYNC dispatch config
...
Closes gh-23958
2019-11-11 14:31:53 +00:00
Sam Brannen
d03ab79531
Polish contribution
...
See gh-23970
2019-11-11 15:16:07 +01:00
Andy Wilkinson
f7bc8c8268
Tidy up classpath pollution caused by resource creation in the tests
...
Previously, spring-webmvc and spring-webflux both contained tests
that would create gzipped files, write them to the filesystem
alongside the project's compiled test classes, and configure them to
be deleted on JVM exit. The output location placed the files on the
classpath, polluting it for every subsequent test that used the same
ClassLoader. The test-sources plugin combined with Gradle's use of
worker JVMs, broadens the scope of this pollution to other, downstream
projects in the same build. For example, the tests for
spring-websocket will have a different classpath depending on whether
or not the tests for spring-webmvc have already been run on the same
worker as part of the current build.
This commit updates the spring-webmvc and spring-webflux modules to
introduce a new JUnit Jupiter extension, GzipSupport. This extension
allows gzipped files to be created via an injectable GzippedFiles
class and automatically deletes each created file in an after-each
callback. This ensures that a gzipped file only exists on the
classpath for the duration of the test that needs it, avoiding the
pollution of the classpath of any subsequent tests.
Closes gh-23970
2019-11-11 15:11:10 +01:00
Andy Wilkinson
b5fb28284e
Upgrade to Shadow Plugin 5.2.0
...
Closes gh-23971
2019-11-11 14:56:40 +01:00
Rossen Stoyanchev
ffe69a51e1
Javadoc update for content negotiation
...
Closes gh-23409
2019-11-11 12:04:28 +00:00
Rossen Stoyanchev
1403603b05
Doc update for ForwardedHeaderFilter
...
Closes gh-23954
2019-11-11 11:44:44 +00:00
Sam Brannen
64dfa462a6
Fix Javadoc for SmartLifecycle.DEFAULT_PHASE regarding ordering
...
Closes gh-23956
2019-11-09 18:03:07 +01:00
Sam Brannen
29185505b1
Polishing
2019-11-09 13:51:28 +01:00
Sam Brannen
cb9d27b9b8
Polish contribution and fix build
...
See gh-1954
2019-11-09 12:45:02 +01:00
Rob Tompkins
cfb7777a07
Exception response for MockRestServiceServer
...
Closes gh-1954
2019-11-08 18:09:49 +00:00
Muhammad Hewedy
f638bfc6a9
Fix status code in webmvc.adoc
...
Closes gh-22396
2019-11-08 17:50:48 +00:00
Rossen Stoyanchev
b98d8ef06f
Merge pull request #22715
...
Closes gh-22715
2019-11-08 17:48:20 +00:00
Rossen Stoyanchev
32f82c0ed0
Polishing
2019-11-08 17:47:59 +00:00
Ilja
08f1cb454a
Allow sending headers with the disconnect frame
2019-11-08 17:41:39 +00:00
denisgalaybo
b0b6423714
Fixed error in webflux.adoc
...
Closes gh-23957
2019-11-08 17:19:53 +00:00
Rossen Stoyanchev
fd453a0753
Merge branch 'pr/23417'
...
Closes gh-23417
2019-11-08 15:04:15 +00:00
Rossen Stoyanchev
b2b02ad7a1
Polishing
2019-11-08 15:03:53 +00:00
Ilya Lukyanovich
801cca8cf8
Preserve ErrorMessage#getOriginalMessage()
...
See gh-23417
2019-11-08 15:03:53 +00:00
Tomo Suzuki
21d390a018
Replacing netty-all with specific dependencies
2019-11-08 13:00:37 +00:00
Qimiao Chen
9b8da04e64
Delete unnecessary variable assignment
...
Closes gh-23955
2019-11-08 13:39:02 +01:00
Rossen Stoyanchev
a6dd63f9ca
Merge pull request #23938
2019-11-08 09:18:06 +00:00
Rossen Stoyanchev
0e1a237139
Polishing
2019-11-08 09:17:25 +00:00
Johnny Lim
91f5f42d13
Add tests for PrincipalMethodArgumentResolver
2019-11-08 08:48:56 +00:00
Rossen Stoyanchev
c7b9988033
Merge pull request #23855
2019-11-08 08:45:03 +00:00
Rossen Stoyanchev
1261e64465
Minor refactoring
...
Apply default Accept header for HttpUrlConnection only.
See gh-23855
2019-11-08 08:44:04 +00:00
Lorenzo Torracchi
afae8c3045
Avoid default "Accept" from HttpUrlConnection
...
Closes gh-23740
2019-11-08 08:43:25 +00:00
Juergen Hoeller
d394c7a5c0
Upgrade to RxJava 2.2.14, OkHttp 3.14.4, JRuby 9.2.9, Rhino 1.7.11, Awaitility 3.1.6
2019-11-07 22:08:52 +01:00
Juergen Hoeller
6a48bb7b4d
Polishing
2019-11-07 22:08:29 +01:00
stsypanov
f5ae3c77c6
Use Method::getParameterCount where possible
2019-11-07 18:00:15 +01:00
Arjen Poutsma
55f3f128c9
Polishing
2019-11-07 14:29:47 +01:00
Arjen Poutsma
bf36f49dc5
Corrupt multipart should not hang SynchronossPartHttpMessageReader
...
This commit notifies the Synchronoss listener that the buffer stream
has ended.
Closes gh-23768
2019-11-07 09:10:07 +01:00
Rossen Stoyanchev
5d2fc2fc32
HttpHandlerConnector uses non-blocking thread
...
Closes gh-23936
2019-11-06 21:58:02 +00:00
Rossen Stoyanchev
627a9be654
Update WebMvcConfigurer#addInterceptors Javadoc
...
Closes gh-23908
2019-11-06 21:40:53 +00:00
Rossen Stoyanchev
203977972b
Fix issue with path matching options
...
Closes gh-23907
2019-11-06 17:54:39 +00:00
Rossen Stoyanchev
3a241b546f
Relax domain name checks in ResponseCookie
...
Closes gh-23924
2019-11-06 17:54:39 +00:00
Sam Brannen
29599a93a4
Re-enable support for invalid Expires attributes in MockCookie
...
Changes introduced in commit 9b2087618b
caused a regression for Cookie support in MockHttpServletResponse.
Specifically, an Expires attribute that cannot be parsed using
`ZonedDateTime.parse()` now results in an exception; whereas,
previously an entry such as `Expires=0` was allowed.
This commit fixes this issue in MockCookie by catching and ignoring any
DateTimeException thrown while attempting to parse an Expires attribute.
Closes gh-23911
2019-11-06 18:28:28 +01:00
Rossen Stoyanchev
9960ed55aa
Fix condition in ServletInvocableHandlerMethod
...
Closes gh-23775
2019-11-06 15:39:37 +00:00
Sam Brannen
29b31cad48
Align implementations of StringToUUIDConverter and UUIDEditor
...
Closes gh-23940
2019-11-06 14:21:52 +01:00
Sam Brannen
92228f0fc0
Test status quo for @RequestHeader UUID conversion support
...
See gh-23939
2019-11-06 13:49:44 +01:00
Sam Brannen
1a13700f8b
Polish contribution
...
See gh-23923
2019-11-06 12:57:01 +01:00
stsypanov
9da15ee23a
Improve usage of String.substring()
...
Closes gh-23923
2019-11-06 12:57:01 +01:00
Sam Brannen
f9c1f136c3
Polishing
2019-11-05 15:27:46 +01:00
Sam Brannen
fc1dcddb75
Fix grammar
2019-11-05 15:20:18 +01:00
Arjen Poutsma
6e3deb86f1
Javadoc
...
Describe source of parameters for ServerRequest (i.e. query string or
form data)
2019-11-05 14:30:31 +01:00
Sam Brannen
d6002092c4
Clean up build warnings for ApplicationContextExpressionTests
2019-11-04 15:44:53 +01:00
Sam Brannen
01fb35bd2d
Remove TestGroup.CI enum constant
...
Prior to this commit, the TestGroup.CI enum constant was only used in a
single test method in spring-core. In order to enable that test, the
`testGroups` JVM system property was configured for the
Publication-master CI build plan; however, the `testGroups` system
property is not set when executing local builds. Consequently, there
has been a Gradle cache miss for every `test` task when building
something locally that's already been built on the CI server.
This commit addresses this issue by removing the `TestGroup.CI` enum
constant. The `-PtestGroups=ci` command line configuration for the
Publication-master CI build plan has also been removed on the CI server.
Closes gh-23918
2019-11-04 15:44:53 +01:00
wonwoo
8855056395
Polish
2019-11-04 10:10:49 +00:00
Stephane Nicoll
87d4ad39da
Merge pull request #23729 from facewindu
...
* pr/23729:
Fix spring-core jar task 'up-to-date'-ness
Closes gh-23729
2019-11-04 10:44:53 +01:00
François Guillot
2411b657ae
Fix spring-core jar task 'up-to-date'-ness
...
See gh-23729
2019-11-04 10:29:58 +01:00
Sam Brannen
f746e9df82
Upgrade to Gradle 5.6.4
2019-11-03 15:04:58 +01:00
Spring Buildmaster
c28cc0bc74
Next Development Version
2019-11-02 08:19:35 +00:00
방성범 (Bang Seongbeom)
89fc0f2713
Fix typo in docs
...
Closes gh-23788
2019-11-01 11:57:03 +00:00
AlexeyAnufriev
2d208de145
Clear connection pool for OkHttpClient
...
Closes gh-23628
2019-11-01 11:44:16 +00:00
Arjen Poutsma
3858a69c42
Path RequestPredicate should honor servlet path
...
Closes gh-23841
2019-10-31 16:06:42 +01:00
Sam Brannen
95af079906
Document unidirectional @AliasFor attribute mapping support
...
See gh-23834
2019-10-31 15:27:27 +01:00
Rossen Stoyanchev
005d2018d4
Refine changes for PR
...
Closes gh-23882
2019-10-31 14:14:44 +00:00
Dekel Pilli
64f2beb9bf
Fixing NPE in AbstractNamedValueMethodArgumentResolver
...
See gh-23882
2019-10-31 14:13:44 +00:00
Rossen Stoyanchev
fd9678833f
Use int for maxParts instead of long
2019-10-31 14:13:44 +00:00
Rossen Stoyanchev
3691c187ef
Preserve order of onStatus handlers
...
Closes gh-23880
2019-10-31 14:13:44 +00:00
Sam Brannen
74b7b550f6
Make MBeanServer tests more robust
...
This commit refactors several tests to use SocketUtils to find an
available port, compose a custom JMX service URL using that port, and
start an MBeanServer for the particular test using that port.
This commit also makes other changes to MBeanServer related tests in an
effort to make them more robust when executed concurrently.
Closes gh-23699
2019-10-31 14:34:57 +01:00
Sam Brannen
57b4b74e7d
Polish Javadoc for JMX factory beans
2019-10-31 13:55:13 +01:00
Brian Clozel
3b724c72b6
Polish
...
See gh-23884
2019-10-30 19:57:17 +01:00
Sam Brannen
9f00eb68e9
Clean up warnings
2019-10-30 19:14:58 +01:00
Christoph Dreis
3c17178b16
Fix Mockito deprecations
2019-10-30 18:30:05 +01:00
Brian Clozel
4beb25b318
Reorder date formatting converter in registrar
...
Prior to this commit, the `DateFormatterRegistrar` would register the
annotation-based formatter before the pattern-based formatter. This
would create an issue when an application tries to convert a `String` to
an annotated `@DateTimeFormat Date`: since the converters are considered
in reversed order of registration in
`GenericConversionServicei#ConvertersForPair`, the pattern-based variant
would always be considered before the annotation-based variant,
overriding the developer's opinion.
This commit aligns the `DateFormatterRegistrar` with the
`DateTimeFormatterRegistrar` and registers the annotation-based variant
last.
Closes gh-23893
2019-10-30 17:15:59 +01:00
Juergen Hoeller
43a86565ca
Consider target transaction manager for reactive transaction decision
...
Closes gh-23832
2019-10-30 16:23:37 +01:00
Sam Brannen
cef4478b7b
Treat InvalidPathException like an IOException in MockServletContext
...
Prior to this commit, if MockServletContext was configured with a
FileSystemResourceLoader, invocations of the following methods on a
Microsoft Windows operating system resulted in an InvalidPathException
if the supplied path contained a colon (such as "C:\\temp"). This is
inconsistent with the behavior on non-Windows operating systems. In
addition, for comparable errors resulting in an IOException, those
methods (except getRealPath()) return null instead of throwing the
exception.
- getResourcePaths()
- getResource()
- getResourceAsStream()
- getRealPath()
This commit makes handling of InvalidPathException and IOException
consistent for these methods: both exceptions now result in null be
returned by these methods.
Closes gh-23717
2019-10-30 15:59:44 +01:00
Stephane Nicoll
8d88e29173
Add qualified injection points for MVC and WebFlux infrastructure
...
Previously, the infrastructure provided by WebMvcConfigurationSupport
and WebFluxConfigurationSupport can lead to unexpected results due to
the lack of qualifier for certain dependencies. Those configuration
classes refer to very specific beans, yet their injection points do not
define such qualifiers. As a result, if a candidate exists for the
requested type, the context will inject the existing bean and will
ignore a most specific one as such constraint it not defined. This can
be easily reproduced by having a primary Validator whereas a dedicated
"mvcValidator" is expected. Note that a parameter name is in no way a
constraint as the name is only used as a fallback when a single
candidate cannot be determined.
This commit provides explicit @Qualifier metadata for such injection
points, renaming the parameter name in the process to clarify that it
isn't relevant for the proper bean to be resolved by the context.
Closes gh-23887
2019-10-30 15:07:23 +01:00
Juergen Hoeller
19ff7d84ab
Polishing
2019-10-30 14:31:46 +01:00
Juergen Hoeller
19107649d2
Revise concurrent JAXBContext creation towards computeIfAbsent
...
Closes gh-23879
2019-10-30 14:31:34 +01:00
Juergen Hoeller
42e7ade110
Tolerate unidirectional alias declaration for annotation attribute pair
...
Closes gh-23834
2019-10-30 14:31:09 +01:00
Juergen Hoeller
dba7bf7ec1
Avoid unnecessary setAccessible call in AttributeMethods
...
Closes gh-23829
2019-10-30 14:30:26 +01:00
Rossen Stoyanchev
422c26832b
Minor follow-up to previous commit
...
See gh-23741
2019-10-30 12:38:26 +00:00
Rossen Stoyanchev
34cfbe5d26
ResponseStatusException associated headers
...
A ResponseStatus exception now exposes extra method to return headers
for the response. This is used in ResponseStatusExceptionHandler to
apply the headers to the response.
Closes gh-23741
2019-10-30 12:10:45 +00:00
Rossen Stoyanchev
0e08e19070
Merge pull request #23793 from alexandrumm/ws-stomp-client-add-log
2019-10-30 07:05:18 +00:00
Rossen Stoyanchev
3895d21b7d
Fix failing test after previous commit
...
See gh-23793
2019-10-30 07:03:51 +00:00
Rossen Stoyanchev
03ac8e6b42
Logging decorator for WebSocketStompClient handler
...
Closes gh-23793
2019-10-30 06:55:04 +00:00
Juergen Hoeller
248ad0fa79
Expose primary flag on BeanDefinitionBuilder
...
Closes gh-23794
2019-10-30 01:04:41 +01:00
Juergen Hoeller
dc59e50561
Avoid unnecessary use of ResolvableType within MethodParameter
...
Closes gh-23792
2019-10-30 01:04:26 +01:00
Juergen Hoeller
d51ab24a1b
Latest dependency updates (Tomcat 9.0.27, Undertow 2.0.27, RxJava 2.2.13, Gson 2.8.6, Apache Johnzon 1.2.1, Hibernate ORM 5.4.8, EclipseLink 2.7.5, H2 1.4.200, POI 4.1.1, Quartz 2.3.2, WebJars Locator 0.42, HtmlUnit 2.36, Checkstyle 8.26, Mockito 3.1, Objenesis 3.1)
2019-10-30 00:26:45 +01:00
Juergen Hoeller
046380988b
Nullability refinements
2019-10-30 00:26:11 +01:00
Juergen Hoeller
773b2f06a1
Avoid Connection.isReadOnly() call in resetConnectionAfterTransaction
...
Closes gh-23747
2019-10-30 00:25:17 +01:00
Brian Clozel
7d02ba0694
Add missing CORS headers defined in SockJS CORS config
...
Prior to this commit and following changes done in d27b5d0 , the CORS
response headers would not be added for SockJS-related requests, even
though a CORS configuration had been applied to SockJS/WebSocket.
This was due to a missing case in our implementation: calling
`AbstractHandlerMapping#getHandlerInternal` can return a Handler
directly, but also a `HandlerExecutionChain` in some cases, as explained
in the Javadoc.
This commit ensures that, when checking for existing CORS configuration,
the `AbstractHandlerMapping` class also considers the
`HandlerExecutionChain` case and unwraps it to get the CORS
configuration from the actual Handler.
Fixes gh-23843
2019-10-29 15:01:18 +01:00
Rossen Stoyanchev
ef14d76d36
Merge limits on input in codecs
2019-10-29 12:34:04 +00:00
Rossen Stoyanchev
5abf24e7d7
Expose maxInMemorySize via CodecConfigurer
...
Centralized maxInMemorySize exposed via CodecConfigurer along with
ability to plug in an instance of MultipartHttpMessageWrite.
Closes gh-23884
2019-10-29 12:33:16 +00:00
Rossen Stoyanchev
00ead7a756
Refine multipart parsing limits
...
See gh-23884
2019-10-29 12:33:16 +00:00
Brian Clozel
ea6f51e9e3
Configurable limits with Synchronoss
...
See gh-23884
2019-10-29 12:33:16 +00:00
Brian Clozel
69bcdfc17f
Polishing
2019-10-29 12:33:16 +00:00
Rossen Stoyanchev
89d053d7f4
Limits on input stream in codecs
...
- Add maxInMemorySize property to Decoder and HttpMessageReader
implementations that aggregate input to trigger
DataBufferLimitException when reached.
- For codecs that call DataBufferUtils#join, there is now an overloaded
variant with a maxInMemorySize extra argument. Internally, a custom
LimitedDataBufferList is used to count and enforce the limit.
- Jackson2Tokenizer and XmlEventDecoder support those limits per
streamed JSON object.
See gh-23884
2019-10-29 12:33:16 +00:00
Sam Brannen
ce0b012f43
Polish contribution
...
See gh-23769
2019-10-29 13:27:39 +01:00
Vedran Pavic
9b2087618b
Preserve expires attribute in MockCookie
...
At present, MockCookie doesn't preserve expires attribute. This has a
consequence that a cookie value set using
MockHttpServletResponse#addHeader containing an expires attribute will
not match the cookie value obtained from
MockHttpServletResponse#getHeader, since the expires attribute will get
calculated based on current time.
This commit enhances MockCookie to preserve the expires attribute.
Closes gh-23769
2019-10-29 12:56:24 +01:00
Sam Brannen
2482209437
Polish Javadoc @param order
2019-10-29 12:49:05 +01:00
Andy Wilkinson
1a54b83ae1
Add opt-in support for remote build cache and pushing to it from CI
...
This commit provides opt-in enablement of Gradle's remote build
cache. When the GRADLE_ENTERPRISE_URL environment variable is set, its
build cache node will be used as a source of cached output. If both
GRADLE_ENTERPRISE_CACHE_USERNAME and GRADLE_ENTERPRISE_CACHE_PASSWORD
are also set, task output produced by the build will be pushed to the
build cache node for use by subsequent builds.
Closes gh-23883
2019-10-29 12:46:33 +01:00
Stephane Nicoll
0cea49fdc0
Upgrade to Reactor Dysprosium-SR1
...
Closes gh-23871
2019-10-28 14:31:38 +01:00
Stephane Nicoll
dd140c6ff9
Merge branch '5.1.x'
2019-10-28 14:31:08 +01:00
Stephane Nicoll
cf1b7620c7
Upgrade to Reactor Californium-SR13
...
Closes gh-23870
2019-10-28 14:27:21 +01:00
Sam Brannen
46329d0b97
Polish Javadoc for HeaderAssertions and StatusAssertions
...
See gh-23878
2019-10-28 13:33:30 +01:00
Sam Brannen
d159ec89a3
Upgrade to AssertJ 3.14.0
2019-10-27 21:22:26 +01:00
Sebastien Deleuze
9f242fac66
Add RSocketRequester retrieveAndAwaitOrNull extension
...
Closes gh-23874
2019-10-27 20:11:08 +01:00
Mark Paluch
0d8aa854e8
Add tests for cancellation of transactional streams
...
See gh-23864
Closes gh-23873
2019-10-25 17:16:33 +02:00
Sam Brannen
5bd1af2a7f
Away with the "manger"; time to fix that typo
2019-10-25 17:04:21 +02:00
Sam Brannen
fd95646a04
Polish contribution
...
See gh-23869
2019-10-25 15:26:20 +02:00
Johnny Lim
46a31bc656
Extract build cache settings to a dedicated file
...
Closes gh-23869
2019-10-25 15:08:11 +02:00
Andreas Killaitis
f838590300
Commit on cancelled subscription in TransactionalOperator::transactional
...
Prior to this commit, TransactionalOperator::transactional did not close
the transaction when cancelled.
Closes gh-23864
2019-10-25 14:48:46 +02:00
Andy Wilkinson
cba91ab28e
Stop Created-By manifest header from causing a test task cache miss
...
Previously, when a project's jar was an input into a test task, a
cache hit required the current build to be using the same JDK as the
one that created the cache entry. This was due to the Created-By
entry in the jar's manifest which will vary if JDKs with different
values for the java.version and java.specification.vendor version are
used.
This commit configures normalization of the runtime classpath to ignore
META-INF/MANIFEST.MF, thereby allowing a cache hit when the tests were
previously run on a different JDK than the one being used now. Typically
this is a different update release being used on a CI agent and a
developer's machine. This change will therefore improve the likelihood
of a cache hit once remote caching has been enabled.
Closes gh-23872
2019-10-25 13:52:48 +02:00
Stephane Nicoll
a51334f079
Upgrade to Netty 4.1.43.Final
2019-10-25 09:24:15 +02:00
Stephane Nicoll
fecb681339
Start building against Reactor Dysprosium-SR1 snapshots
...
See gh-23871
2019-10-25 09:23:13 +02:00
Stephane Nicoll
22192fcaab
Merge branch '5.1.x'
2019-10-25 09:09:10 +02:00
Stephane Nicoll
7ca96c02bd
Upgrade to Netty 4.1.43.Final
2019-10-25 09:07:40 +02:00
Stephane Nicoll
3a377f86b2
Start building against Californium-SR13 snapshots
...
See gh-23870
2019-10-25 09:00:22 +02:00
Phillip Webb
013ec6abdb
Support customer repeatable containers in type map
...
Update `AnnotationTypeMappings` so that a custom `RepeatableContainers`
instances can be used. Prior to this commit, only standard repeatables
were used when reading the annotations. This works in most situations,
but causes regressions for some `AnnotationUtils` methods.
Fixed gh-23856
2019-10-24 13:20:11 -07:00
Rossen Stoyanchev
7854f49643
Polishing in HttpWebHandlerAdapter
...
Closes gh-23780
2019-10-24 20:57:25 +01:00
Tomasz Letachowicz
53dcb00074
Typos in WebSocket section
...
Closes gh-23777
2019-10-24 20:52:54 +01:00
Rossen Stoyanchev
562c0871e9
Charset argument in RestClientResponseException
...
See gh-23803
2019-10-24 20:51:16 +01:00
Rossen Stoyanchev
7f8966774e
Upgrade Jetty to 9.4.21
...
Make use of the new getAvailableExtensionNames() method.
Closes gh-23799
2019-10-24 20:46:59 +01:00
Sam Brannen
f8b875d2d8
Introduce failing @Disabled test for gh-23856
2019-10-24 16:15:59 +02:00
Sam Brannen
5b6337b6a9
Clean up warning in spring-test
2019-10-24 13:55:26 +02:00
Sam Brannen
13cdb70f64
Reinstate protected XpathRequestMatchers constructor
...
This commit makes the XpathRequestMatchers constructor protected again
in case users have extended this class.
2019-10-24 13:49:35 +02:00
Sam Brannen
f3cad9f685
Polish XpathRequestMatchers Javadoc and implementation
2019-10-24 13:37:56 +02:00
Sam Brannen
db4d51ba32
Remove unused type parameter declarations in XpathRequestMatchers
...
Prior to this commit, several of the methods in XpathRequestMatchers
declared unused type parameters (e.g., <T>). This was obviously the
result of copying an existing method that actually needs the type
parameter for proper casting.
For example, the following ...
public <T> RequestMatcher exists() {
// ...
}
... should actually be declared without <T>, since T is not used in the
implementation or in the return type:
public RequestMatcher exists() {
// ...
}
This commit removes all unused type parameter declarations in
XpathRequestMatchers.
Side Effects:
Now that we have removed the unused type parameter declarations, users
will see the following side effects if they had previously declared a
type argument when invoking such methods.
- Java: an "Unused type arguments for the non generic method ..."
warning will be generated by the compiler, but the code will continue
to work unmodified.
- Kotlin: a "Type inference failed: Not enough information to infer
parameter T in fun ..." compiler error will be raised, causing the
code to no longer compile (see
https://youtrack.jetbrains.com/issue/KT-5464 ). Removal of the type
argument declaration will allow the code to work correctly again.
Closes gh-23860
2019-10-24 13:12:02 +02:00
Sam Brannen
693101ded8
Remove unused type parameter declarations in MockMvc result matchers
...
Prior to this commit, several of the ResultMatcher methods used in
MockMvc declared unused type parameters (e.g., <T>). This was obviously
the result of copying an existing method that actually needs the type
parameter for proper casting.
For example, the following in RequestResultMatchers ...
public <T> ResultMatcher attribute(String name, Object expectedValue) {
// ...
}
... should actually be declared without <T>, since T is not used in the
implementation or in the return type:
public ResultMatcher attribute(String name, Object expectedValue) {
// ...
}
This commit removes all unused type parameter declarations in MockMvc
result matchers.
Side Effects:
Now that we have removed the unused type parameter declarations, users
will see the following side effects if they had previously declared a
type argument when invoking such methods.
- Java: an "Unused type arguments for the non generic method ..."
warning will be generated by the compiler, but the code will continue
to work unmodified.
- Kotlin: a "Type inference failed: Not enough information to infer
parameter T in fun ..." compiler error will be raised, causing the
code to no longer compile (see
https://youtrack.jetbrains.com/issue/KT-5464 ). Removal of the type
argument declaration will allow the code to work correctly again.
Closes gh-23858
2019-10-24 10:41:37 +02:00
Rossen Stoyanchev
5c0212e678
Merge pull request #23780 from izeye/polish-20191011
2019-10-23 17:32:42 +01:00
Rossen Stoyanchev
780eef8d36
Update comment in HttpWebHandlerAdapter
...
See gh-23780
2019-10-23 17:31:59 +01:00
Johnny Lim
33bf09d513
Polish HttpWebHandlerAdapter.handleUnresolvedError()
2019-10-23 16:57:20 +01:00
Tomasz Letachowicz
9bbf22a1c9
Typos in WebSocket section
...
Closes gh-23777
2019-10-23 16:55:00 +01:00
Rossen Stoyanchev
b343e733df
Upgrade Jetty to 9.4.21
...
Make use of the new getAvailableExtensionNames() method.
Closes gh-23565
2019-10-23 16:51:04 +01:00
Rossen Stoyanchev
88ec452dee
Merge pull request #23764 from ask4gilles/23738
2019-10-23 16:50:42 +01:00
Rossen Stoyanchev
2733511ea2
Charset argument in RestClientResponseException
...
See gh-23764
2019-10-23 16:49:32 +01:00
Rossen Stoyanchev
4932196b87
RestClientResponseException defaults to UTF-8
...
Closes gh-23764
2019-10-23 16:26:57 +01:00
Rossen Stoyanchev
1b43b09e55
Merge pull request #23612 from KateVasovski/add-principal-method-argument-resolver
2019-10-23 14:58:48 +01:00
Rossen Stoyanchev
739d2881fa
Polishing
2019-10-23 14:55:55 +01:00
KateVasovski
f77d23de94
@MessgeMapping support for Optional<Principal>
2019-10-23 14:51:07 +01:00
Sam Brannen
6c4ac8f9c9
Remove unused type parameter declaration in RequestResultMatchers
...
The new sessionAttributeDoesNotExist() method introduced in commit
e73344fc71 declares an unused type
parameter <T>.
This commit removes that unused type parameter from the method
signature.
See gh-23756
2019-10-23 14:27:00 +02:00
Sam Brannen
eabf357640
Polish MockMvc result matchers and tests
2019-10-23 14:03:50 +02:00
Sam Brannen
82f64f6a8d
Polish contribution
...
See gh-23756
2019-10-23 12:34:51 +02:00
Drummond Dawson
e73344fc71
Introduce sessionAttributeDoesNotExist in RequestResultMatchers
...
Analogous to the attributeDoesNotExist() method in ModelResultMatchers,
this commit introduces a new sessionAttributeDoesNotExist() method in
RequestResultMatchers which asserts that the given attributes are null
in the HttpSession.
Closes gh-23756
2019-10-23 12:28:08 +02:00
Stephane Nicoll
e6f92ae2af
Merge pull request #23848 from pdeneve
...
* pr/23848:
Update Spring Boot references in testing documentation
Closes gh-23848
2019-10-23 09:54:08 +02:00
Philippe De Neve
ca77342407
Update Spring Boot references in testing documentation
...
See gh-23848
2019-10-23 09:53:41 +02:00
Sam Brannen
112bbe859c
Fix grammar in Javadoc
2019-10-22 18:07:41 +02:00
Sam Brannen
71400ea604
Polish MergedAnnotation internals
2019-10-22 13:58:13 +02:00
Sam Brannen
2146bc816a
Fix Checkstyle violations
...
See gh-23767
2019-10-22 12:40:38 +02:00
Phillip Webb
ad543dbee3
Use mapped annotation values when resolving mirrors
...
Update `TypeMappedAnnotation` mirror resolution logic so that mapped
annotation values are also considered. Prior to this commit, mirrors
in more complex meta-annotation scenarios would not resolve correctly.
Specifically, given the following:
@interface TestAliased {
@AliasFor(attribute = "qualifier")
String value() default "";
@AliasFor(attribute = "value")
String qualifier() default "";
}
@TestAliased
@interface TestMetaAliased {
@AliasFor(annotation = Aliased.class, attribute = "value")
String value() default "";
}
@TestMetaAliased("test")
@interface TestComposed {
}
A merged `@TestAliased` annotation obtained from a `@TestComposed`
root annotation would return a `value` and `qualifier` of "".
This was because the "value" and "qualifier" mirrors needed to be
resolved against the `@TestMetaAliased` meta-annotation. They cannot be
resolved against the declared `@TestComposed` annotation because it
does not have any attributes. Our previous tests only covered a single
depth scenario where `@TestMetaAliased` was used directly on the
annotated element.
Closes gh-23767
Co-authored-by: Sam Brannen <sbrannen@pivotal.io >
2019-10-21 21:57:30 -07:00
Sam Brannen
b1a938fa24
Polishing
2019-10-21 13:51:37 -07:00
Sam Brannen
243f2890ee
Upgrade to Gradle 5.6.3
2019-10-18 11:59:30 +02:00
Sam Brannen
c087697fde
Ensure line endings for binary files are not modified in Git
...
This commit is necessary in order to upgrade the Gradle wrapper, since
the recent attempt to do so ended up in a corrupted JAR file for the
Gradle wrapper.
2019-10-18 11:56:18 +02:00
Sam Brannen
9e066e5272
Revert "Upgrade to Gradle 5.6.3"
...
This reverts commit 8e72722d7f .
2019-10-18 10:38:40 +02:00
Sam Brannen
8e72722d7f
Upgrade to Gradle 5.6.3
2019-10-18 09:52:13 +02:00
Brian Clozel
a65c6f6884
Fix APPLICATION_PROBLEM_JSON_UTF8 media type value
...
This commit adds the missing "+json" suffix to the "application/problem"
media type for its deprecated UTF-8 variant.
Fixes gh-23825
2019-10-17 09:36:05 +02:00
Minho Hwang
d1aee0e869
Fix typo in RSocket reference documentation
...
This commit fixes a typo in a Java code snippet of
the RSocket reference documentation.
Closes gh-23762
2019-10-06 16:34:27 +02:00
Sam Brannen
3f9359aa83
Polish docs.gradle
2019-10-05 17:44:40 +02:00
Sam Brannen
972337e8f9
Introduce common .gitattributes file
...
Closes gh-23376
2019-10-02 15:22:39 +02:00
Sam Brannen
6fd50d7d17
Register EventPublishingTEL in JUnit 4 & TestNG base classes
...
Spring Framework 5.2 introduced an EventPublishingTestExecutionListener
in the Spring TestContext Framework. This listener is automatically
registered via the spring.factories mechanism; however, this listener is
not registered in the abstract JUnit 4 and TestNG base classes.
This commit addresses this oversight by explicitly registering the
EventPublishingTestExecutionListener in the following classes.
- AbstractJUnit4SpringContextTests
- AbstractTransactionalJUnit4SpringContextTests
- AbstractTestNGSpringContextTests
- AbstractTransactionalTestNGSpringContextTests
Closes gh-23748
2019-10-02 15:04:03 +02:00
Sam Brannen
fc74c43718
Polishing
2019-10-02 14:49:23 +02:00
Sam Brannen
3a59b01be8
Polish Javadoc for abstract JUnit 4 and TestNG base classes
2019-10-02 14:26:50 +02:00
Sam Brannen
f16e29892e
Add note regarding proxyTargetClass for Java config and web controllers
...
See gh-23744
2019-10-02 13:11:06 +02:00
Martin Macko
96930924b2
Fixes broken links to dev.java.net
...
Closes gh-23746
2019-10-02 12:48:34 +02:00
Brian Clozel
a4257f84e7
Fix base directory in distribution zip
...
Fixes gh-23745
2019-10-02 10:00:33 +02:00
Drummond Dawson
b7f819c9e1
Fix URI typo in Java code snippet of web-uris.adoc
...
Closes gh-23739
2019-10-01 15:10:44 +02:00
Sam Brannen
d9bb9b55ee
Fix Checkstyle violation
...
See gh-23706
2019-09-30 18:31:13 +02:00
Sam Brannen
60cd73e97c
Update documentation for importing projects into Eclipse
...
Closes gh-23706
2019-09-30 18:21:29 +02:00
Andy Wilkinson
3b0b173353
Enable local build cache for buildSrc and main project
2019-09-30 15:04:14 +02:00
Spring Buildmaster
fef09e3522
Next Development Version
2019-09-30 08:57:48 +00:00
Brian Clozel
e435f642bc
Temporarily disable Gradle metadata publication
...
See gh-23503
2019-09-30 10:23:30 +02:00
Brian Clozel
a446f572a6
Fix missing project information in generated POMS
...
This commit ensures that the project name and description are published
with the generated POMs.
2019-09-30 10:22:44 +02:00
Stephane Nicoll
545a4faa2d
Revert "Next Development Version"
...
This reverts commit f3ba263fcc .
2019-09-30 10:14:57 +02:00
Spring Buildmaster
f3ba263fcc
Next Development Version
2019-09-30 07:20:43 +00:00
Brian Clozel
77bc1b05a6
Use RSocket BOM
...
See gh-23698
2019-09-30 08:50:03 +02:00
Stephane Nicoll
29f0d1b25e
Remove TODO in AnnotationUtils
...
Closes gh-23727
2019-09-30 07:57:12 +02:00
Stephane Nicoll
f9424c889b
Upgrade to RSocket 1.0.0-RC5
...
Closes gh-23698
2019-09-30 07:57:12 +02:00
Sebastien Deleuze
b24ac74106
Restore TransactionOperations Kotlin API compatibilty
...
This commit renames the Runnable variant to executeWithoutResult
and uses a Consumer<TransactionStatus> parameter for better
consistency with TransactionCallbackWithoutResult.
Closes gh-23724
2019-09-29 19:31:12 +02:00
康智冬
1e0bdc0337
Fix typo in DispatcherServlet Javadoc
...
Closes gh-23726
2019-09-29 16:22:48 +02:00
Stephane Nicoll
d7711e6365
Merge branch '5.1.x'
2019-09-28 14:36:03 +02:00
Spring Buildmaster
9689a59ab1
Next Development Version
2019-09-28 11:27:33 +00:00
Sebastien Deleuze
ae2218741e
Upgrade to Jackson 2.10.0
...
Closes gh-23662
2019-09-27 22:38:27 +02:00
Sebastien Deleuze
6080449d03
Polishing
2019-09-27 18:17:23 +02:00
Sam Brannen
06563d8b4b
Add headerDoesNotExist() to MockRestRequestMatchers
...
Prior to this commit, one could not test for the absence of a specific
HTTP header in a request.
This commit adds a headerDoesNotExist() method in MockRestRequestMatchers.
Closes gh-23721
2019-09-27 17:38:11 +02:00
Sam Brannen
4dc966b04b
Include @Inject TCK tests in the build again
...
Commit 979508a7f3 removed the JUnit 4
dependency from all modules except spring-test. Unfortunately, the
@Inject TCK tests (SpringAtInjectTckTests) are still based on JUnit 3.
Thus, that commit accidentally excluded those tests from the build.
This commit includes SpringAtInjectTckTests in the build again by
introducing a test runtime dependency on the JUnit Vintage TestEngine
in spring-context.
See gh-23451
2019-09-27 13:57:31 +02:00
Juergen Hoeller
2861fc65bd
Polishing
2019-09-27 10:17:56 +02:00
Sam Brannen
6a207d0012
Polish AnnotationConfigApplicationContextTests
2019-09-26 16:45:49 +02:00
Johnny Lim
2a4dbcc623
Fix an assertion in AnnotationConfigApplicationContextTests
...
Closes gh-23719
2019-09-26 16:34:27 +02:00
Sam Brannen
2526553ecd
Document terms and units in DataSize and DataUnit
...
Prior to this commit, it was not readily apparent what terms and units
such as kilobyte/KB and megabyte/MB represented numerically in DataSize
and DataUnit.
This commit clarifies that such terms and units are based on binary
prefixes for data (i.e., powers of 2 instead of powers of 10).
Closes gh-23697
2019-09-26 16:05:12 +02:00
Sam Brannen
6186239287
Remove obsolete references to specific release versions in testing docs
2019-09-26 15:02:30 +02:00
Brian Clozel
fbe05f0369
Upgrade to Spring Doc Resources 0.1.3
...
Closes gh-23679
2019-09-26 14:27:07 +02:00
Sam Brannen
26ee9c68eb
Document [Priority]Ordered support for Bean[Factory]PostProcessor
...
Prior to this commit, it was not clear from the Javadoc for
BeanPostProcess and BeanFactoryPostProcessor that such components can
be ordered by implementing Ordered or PriorityOrdered.
This commit improves the documentation for BPP and BFPP to make this
support explicit.
Closes gh-23636
2019-09-26 14:24:33 +02:00
Sam Brannen
77b896ca28
Polishing
2019-09-26 11:58:45 +02:00
Sam Brannen
f05b4625de
Merge branch '5.1.x'
2019-09-26 10:55:55 +02:00
Sam Brannen
7d126d3288
Improve documentation regarding "annotated classes"
...
See gh-23638
2019-09-26 10:26:36 +02:00
Rossen Stoyanchev
e93ac7ac75
Merge branch '5.1.x'
2019-09-26 09:07:29 +01:00
Rossen Stoyanchev
e9dc5160b9
Use correct log level
...
See gh-23534
2019-09-26 07:00:27 +01:00
Juergen Hoeller
47a24ac378
Upgrade to Aalto 1.2.2, Protobuf 3.10, Apache Johnzon 1.2, SnakeYAML 1.25, OpenPDF 1.3.11, FreeMarker 2.3.29
2019-09-25 23:49:15 +02:00
Juergen Hoeller
d00690f43f
Merge branch '5.1.x'
...
# Conflicts:
# build.gradle
# spring-context/spring-context.gradle
# spring-test/spring-test.gradle
# spring-web/spring-web.gradle
# spring-webflux/spring-webflux.gradle
# spring-webmvc/spring-webmvc.gradle
2019-09-25 23:13:49 +02:00
Juergen Hoeller
3616e96792
Upgrade to SLF4J 1.7.28, Groovy 2.5.8, RxJava 2.2.12, Joda-Time 2.10.4, Rome 1.12.2, OkHttp 3.14.3, Apache HttpClient 4.5.10, Apache Johnzon 1.1.13
2019-09-25 22:27:41 +02:00
Juergen Hoeller
357beb24bc
Polishing
2019-09-25 22:15:07 +02:00
Sebastien Deleuze
091c512f0d
Upgrade to Coroutines 1.3.2
...
Closes gh-23663
2019-09-25 21:51:04 +02:00
Sebastien Deleuze
c10dcec9ed
Polishing
2019-09-25 21:48:47 +02:00
Rossen Stoyanchev
2995b6f224
Merge branch '5.1.x'
2019-09-25 17:28:24 +01:00
Rossen Stoyanchev
17c423f5af
Support for sameSite attribute in WebFlux
...
Bypass server cookie and write Set-Cookie header directly for Reactor
Netty, and Servlet API which do not provide options.
For Undertow use the sameSite attribute.
Closes gh-23693
2019-09-25 17:16:48 +01:00
Sam Brannen
a541aa13a5
Link build status badge to build overview page
2019-09-25 17:21:21 +02:00
Sam Brannen
8b73d76204
Link from build status badge to CI build plan
2019-09-25 17:15:55 +02:00
Sam Brannen
667636de66
Add Bamboo build status badge
2019-09-25 17:12:56 +02:00
Sebastien Deleuze
f79cebd53d
Add Kotlin samples to RSocket documentation
...
See gh-23147
2019-09-25 17:04:40 +02:00
Sebastien Deleuze
a4b278a269
Polishing
2019-09-25 17:02:05 +02:00
Sebastien Deleuze
5866693ece
Add MetadataExtractorRegistry.metadataToExtract Kotlin extensions
...
Closes gh-23705
2019-09-25 17:02:05 +02:00
Andy Wilkinson
00bad3dce0
Allow genJaxb's output to be cached when checkout locations differ
...
Previously, the genJaxb task's input files were compared using
absolute paths. This would result in a cache miss for two builds
with identical files contents and different root directories.
This commit updates the path sensitivity of the input to be relative
to the build's root directory, thereby allowing caching to work
irrespective of the source checkout location.
Closes gh-23704
2019-09-25 16:44:01 +02:00
Andy Wilkinson
69a0730b01
Upgrade to io.freefair.aspectj 4.1.1
...
Closes gh-23703
2019-09-25 16:09:51 +02:00
Andy Wilkinson
02decfd864
Improve exclusions of checkstyleNoHttp task
...
This commit adds the following exclusions to the source of the
checkstyleNoHttp tasks for each project in the build and for buildSrc:
- bin/ directory (created by Eclipse Buildship)
- .settings directory (created by Eclipse)
- .classpath file (created by Eclipse)
- .project file (created by Eclipse)
An exclusion for the build/ directory is also configured as the
NoHttp plugin does not exclude it by default for buildSrc.
Closes gh-23702
2019-09-25 15:29:19 +02:00
Juergen Hoeller
1aa0ea0281
Fix nullability declarations on internal ParserStrategyUtils methods
2019-09-25 13:51:20 +02:00
Andy Wilkinson
853d4c38ae
Run webflux's tests in parallel to shorten long tail of builds ( #23701 )
...
When built in an environment where many Gradle build workers are
available, :spring-webflux:test is regularly the only task running at
the end of the build. Therefore, the build's overall execution time
can be reduced by running its tests in parallel, spreading the tests'
execution across the available workers. The configured number of forks
is a maximum with Gradle reducing this as necessary for environments
with low numbers of cores where multiple workers will not improve
build performance.
Closes gh-23701
2019-09-25 13:44:14 +02:00
Juergen Hoeller
bf55252366
Upgrade to Hibernate ORM 5.4.5
2019-09-25 13:08:07 +02:00
Juergen Hoeller
07df1ce7d2
Update genericBeanDefinitionEquality test to AssertJ usage on master
...
See gh-23593
2019-09-25 13:07:27 +02:00
Juergen Hoeller
bd70f10d2b
Merge branch '5.1.x'
...
# Conflicts:
# build.gradle
# spring-aop/src/main/java/org/springframework/aop/framework/CglibAopProxy.java
# spring-aspects/spring-aspects.gradle
# spring-beans/src/main/java/org/springframework/beans/factory/annotation/AutowiredAnnotationBeanPostProcessor.java
# spring-beans/src/main/java/org/springframework/beans/factory/support/GenericBeanDefinition.java
# spring-beans/src/test/java/org/springframework/beans/factory/DefaultListableBeanFactoryTests.java
# spring-orm/spring-orm.gradle
# spring-test/spring-test.gradle
2019-09-25 12:43:24 +02:00
Brian Clozel
9034391b6c
Temporarily add milestone repository for RSocket
...
RSocket is still in its RC phase, but those artifacts are published on
maven central. This dependency is currently still depending on a
milestone dependency for Reactor adn this is causing issues with our
build.
This commits adds back the milestone repository until the RSocket POMs
and BOMs are fixed. Once fixed, the Framework build should use the
RSocket BOM for managing RSocket dependencies.
See gh-23698
2019-09-25 12:20:07 +02:00
Juergen Hoeller
b1ed0511f7
Upgrade to Tomcat 9.0.26, Undertow 2.0.26, Hibernate ORM 5.3.12
...
Includes Netty 4.1.39 (aligned with Reactor) and Checkstyle 8.24.
2019-09-25 12:15:02 +02:00
Juergen Hoeller
bb6f9bb6d4
Polishing
2019-09-25 12:14:48 +02:00
Juergen Hoeller
0519a2ff3c
Exclude jdk package in ShadowingClassLoader (JDK 11 compatibility)
...
Closes gh-23641
2019-09-25 12:11:33 +02:00
Juergen Hoeller
6a08bfdff7
Avoid unnecessary synchronization for non-existent missing caches
...
Closes gh-23635
2019-09-25 12:10:23 +02:00
Juergen Hoeller
da44a247cb
Efficient concurrency in MethodOverrides through CopyOnWriteArraySet
...
Also restores immediate MethodOverrides instance in AbstractBeanDefinition, avoiding potential lazy-init race condition.
Closes gh-23448
2019-09-25 12:09:16 +02:00
Juergen Hoeller
20fc7e178a
Consistent equality check for parent name and indexed arguments
...
Closes gh-23593
2019-09-25 12:07:29 +02:00
Stephane Nicoll
27481e4211
Upgrade to Reactor Dysprosium-RELEASE
...
Closes gh-23695
2019-09-25 08:50:06 +02:00
Stephane Nicoll
4a588a359d
Merge branch '5.1.x'
2019-09-25 08:49:38 +02:00
Stephane Nicoll
31c881468c
Upgrade to Reactor Californium-SR12
...
Closes gh-23694
2019-09-25 08:46:15 +02:00
Sam Brannen
b9013ada9f
Abort MBeanServer tests if BindException encountered
...
This commit builds on the previous commit but covers exceptions thrown
by @BeforeEach and @AfterEach methods as well as @Test methods.
2019-09-24 19:20:39 +02:00
Sam Brannen
435cc67026
Abort MBeanServer tests if BindException encountered
2019-09-24 18:57:30 +02:00
Andy Wilkinson
d0adadf3ca
Capture maxParallelForks of Test tasks in build scans
...
The parallel forks configuration of Test tasks can have a big impact
on their execution time. This commit updates the build can
configuration to capture each Test task's maxParallelForks
configuration as custom values in the build scan. This will make this
data available when comparing scans which will be useful as we
experiment with different parallel fork settings to reduce the
build's overall execution time.
Closes gh-23691
2019-09-24 18:25:24 +02:00
Andy Wilkinson
2570379824
Obfuscate IP addresses in build scans
...
Closes gh-23690
2019-09-24 18:18:52 +02:00
Sam Brannen
e6678f40e8
Make DataSize constants final
2019-09-24 15:32:26 +02:00
Rossen Stoyanchev
30e1257dda
Merge branch '5.1.x'
2019-09-24 13:39:42 +01:00
Sam Brannen
402046f3c7
Polish data buffer allocation tests
2019-09-24 14:24:36 +02:00
Rossen Stoyanchev
955000699a
Add getRawStatusCode() to ExchangeResult
...
Closes gh-23630
2019-09-24 12:58:52 +01:00
Sam Brannen
48c8d3a551
Polishing
2019-09-24 13:57:14 +02:00
Sam Brannen
38052e77b7
Fix bug in WebClientDataBufferAllocatingTests
...
Prior to this commit, the parameterized DataBufferFactory was never
actually used when setting up the WebClient for each test. This was due
to an oversight when migrating from JUnit 4 to JUnit Jupiter.
See: https://github.com/reactor/reactor-netty/issues/860
This commit fixes this by converting the existing @BeforeEach method to
a local setup method that is invoked from each
@ParameterizedDataBufferAllocatingTest method.
In addition, in order to avoid the 2 second "quiet period" that is
incurred when destroying the ReactorResourceFactory, this commit moves
the setup and destruction of the ReactorResourceFactory to new
@BeforeAll and @AfterAll methods.
The test instance lifecycle has also been switched to PER_CLASS to avoid
static state in the test class.
2019-09-24 13:45:50 +02:00
Rossen Stoyanchev
99d9dacc4f
Log sendBufferSizeLimit exceeded at warn
...
Closes gh-23534
2019-09-24 12:09:41 +01:00
Sam Brannen
bba3553dfb
Polish SpringVersion
2019-09-24 12:43:10 +02:00
Johnny Lim
d6d3a9e232
Polish ImportOrderCheck Checkstyle rule
...
Closes gh-23685
2019-09-24 12:36:51 +02:00
Rossen Stoyanchev
2794264480
Fix JettyRequestUpgradeStrategy initialization bug
...
Closes gh-23313
2019-09-24 11:34:46 +01:00
Rossen Stoyanchev
4edc7196fb
Refine disconnected client handling in WebFlux
...
If an error looks like a "disconnected client" but the response is not
yet committed then it can't be an I/O error from writing to the server
response. It is most likely as a result of a remote call as part of
request handling.
Not setting the response to 500 in this case results in a 200 response
status despite the error. Even if it was an I/O error from the server
response, setting the status won't impact a failed response.
Closes gh-23319
2019-09-24 11:09:42 +01:00
Sebastien Deleuze
840249778a
Polish Kotlin reference documentation for WebMvc.fn
...
See gh-23657
2019-09-24 10:14:16 +02:00
Sebastien Deleuze
97026f1ec3
Fix ServerRequestExtensionsTests on Java 13
...
Closes gh-23677
2019-09-24 09:47:57 +02:00
Rossen Stoyanchev
2888b032a1
Polish rsocket.adoc
2019-09-24 06:08:06 +01:00
Rossen Stoyanchev
93371cc2ac
Polish
2019-09-23 16:35:08 +01:00
Brian Clozel
72be38cf2c
Fix API Diff Gradle task
...
Prior to this change, the Gradle API Diff task was failing due to a
missing class (a Guava class) during processing. This might be a
dependency that was previously brought by some other dependency.
This commit adds that dependency as a workaround, and improves the
Gradle API Diff task to only select relevant projects when running the
task (projects using the Java Plugin and the Maven Publish Plugin).
2019-09-23 17:13:49 +02:00
Brian Clozel
716f928e79
Upgrade to Spring Doc Resources 0.1.3.BUILD-SNAPSHOT
...
See gh-23679
2019-09-23 16:53:39 +02:00
Arjen Poutsma
9ffecc5059
Polish reference documentation for WebMvc.fn
2019-09-23 16:08:50 +02:00
Arjen Poutsma
652bbdad2a
Add reference documentation for WebMvc.fn
...
This commit introduces reference documentation for WebMvc.fn, the
functional web framework.
Closes gh-23657
2019-09-23 15:27:49 +02:00
Rossen Stoyanchev
e2baf7277b
Use metadata slice
...
Take a slice of the metadata if not using composite metadata to allow
reading it multiple times. For composite metadata this is not an isuse
as it is ensured by the underlying RSocket Java API.
2019-09-23 13:32:28 +01:00
Rossen Stoyanchev
0ae7154518
Fix checkstyle violation
2019-09-23 13:09:06 +01:00
Rossen Stoyanchev
88bb2aabbf
RSocket reference documentation
...
Closes: gh-23147
2019-09-23 12:18:03 +01:00
Sam Brannen
2572cd0503
Make PathPatternParserTests compatible with JDK 13
...
Closes gh-23669
2019-09-21 17:33:28 +02:00
Sam Brannen
4acd180fa3
Document that setting static final fields is unsupported
...
This commit updates the documentation for ReflectionUtils and
ReflectionTestUtils to point out that setting static final fields is
not supported.
2019-09-21 15:42:09 +02:00
Sam Brannen
fccdb8cf60
Polish ReflectionUtils
...
This commit removes dead code in ReflectionUtils and improves the
exception message for field access errors.
2019-09-21 15:29:03 +02:00
Juergen Hoeller
4882dfcc0d
Consistent relative path treatment (no accidental URL fragment symbol)
...
Closes gh-23532
2019-09-20 21:55:27 +02:00
Juergen Hoeller
957924ace2
Avoid early log provider initialization (and LogAccessor dependency)
...
Closes gh-23655
2019-09-20 21:54:53 +02:00
Juergen Hoeller
e68132686d
Restore lenient target type handling for FactoryBean definitions
...
Closes gh-23561
2019-09-20 21:54:32 +02:00
Juergen Hoeller
a48c13ae73
Avoid deprecated usingWhen method in Reactor 3.3
...
Closes gh-23562
2019-09-20 21:54:18 +02:00
Mark Paluch
393a81d4a9
Omit cancellation of transactional Monos in TransactionOperator
...
TransactionOperator.as(Mono) now no longer short-cuts via a Flux.next() but provides an implementation via Mono.usingWhen(…).
The short-cut previously issued a cancellation signal to the transactional Mono causing the transaction cleanup to happen without a handle for synchronization.
Using Mono.usingWhen(…) initiates transaction cleanup when the Mono completes eliminating the need for cancellation of the transactional Publisher.
This change does not fully fix gh-23304 but it softens its impact because TransactionalOperator.transactional(Mono) avoids cancellation.
2019-09-20 20:48:39 +02:00
Sam Brannen
f0e160fc67
Execute WebClientDataBufferAllocatingTests during all builds
...
This commit reverts b2704e1db6 and
configures the ReactorResourceFactory not to use global resources,
thereby allowing all tests in WebClientDataBufferAllocatingTests to
execute within approximately 2 seconds again on Mac OS.
2019-09-20 14:09:00 +02:00
Sam Brannen
3603e0c448
Set Spring-specific name for shutdown hook thread
...
Prior to this commit, the name of the Thread registered via
ConfigurableApplicationContext#registerShutdownHook() was the generic,
default thread name ("Thread-#"). That made it difficult to discern
which executing thread was the Spring ApplicationContext shutdown hook.
This commit improves diagnostics by setting the thread name of the
ApplicationContext shutdown hook to "SpringContextShutdownHook".
Closes gh-23670
2019-09-20 13:16:59 +02:00
Sam Brannen
734ceed301
Polish contribution
...
See gh-23658
2019-09-19 22:02:19 +02:00
i321222
fde7b1e545
Avoid ArrayIndexOutOfBoundsException in SpEL's Indexer
...
When index == arrayLength, the array index is also out of bounds.
For this scenario, a SpelEvaluationException should be thrown instead
of ArrayIndexOutOfBoundsException.
Closes gh-23658
2019-09-19 22:01:10 +02:00
Sam Brannen
b2704e1db6
Execute WebClientDataBufferAllocatingTests only during PERFORMANCE build
2019-09-19 18:35:35 +02:00
Sam Brannen
c256af4ef7
Polishing
2019-09-19 16:31:07 +02:00
Sam Brannen
d611c7484f
Fix Checkstyle violation
2019-09-19 16:21:44 +02:00
Sam Brannen
9811e21432
Merge branch '5.1.x'
2019-09-19 15:57:33 +02:00
Sam Brannen
8f6846827d
Ensure ClassFilter and MethodMatcher implementations are cacheable
...
While resolving the regression raised in gh-23571, it came to our
attention that not all of our ClassFilter and MethodMatcher
implementations were properly cacheable with CGLIB generated proxies
due to missing (or improper) equals() and hashCode() implementations.
Although such deficiencies may not manifest themselves as bugs in Core
Spring's default arrangements, these might cause issues in custom
arrangements in user applications.
This commit addresses this by ensuring that ClassFilter and
MethodMatcher implementations properly implement equals() and
hashCode(). In addition, missing toString() implementations have been
added to improve diagnostics for logging and debugging.
Closes gh-23659
2019-09-19 15:35:17 +02:00
Brian Clozel
809009e6c4
Rename RSocketStrategies.Builder.metadataExtractors
...
This commit renames the `metadataExtractors` method to something that is
closer to the actual intent: addming new metadata extractors against the
registry given as a parameter of the `Consumer`.
The method is renamed to `metadataExtractorRegistry`.
2019-09-19 14:54:36 +02:00
Stephane Nicoll
e06d2a9c57
Stop using libs-release
...
This commit makes sure we narrow down dependencies of the Spring
Framework to only Maven central. Optional dependencies that are not
available on Maven Central are now served from a more specific
repository (`libs-spring-framework-build`).
Closes gh-23124
2019-09-19 13:27:49 +02:00
Sebastien Deleuze
02d70424ad
Mention Kotlin code samples in the Kotlin refdoc
2019-09-19 10:44:50 +02:00
Brian Clozel
74897bc52a
Use Reactor's new Schedulers.boundedElastic()
...
Prior to this commit, Spring Framework would use `Schedulers.elastic()`
in places where we needed to process blocking tasks in a reactive
environment.
With reactor/reactor-core#1804 , a new `Schedulers.boundedElastic()`
scheduler is available and achieves the same goal with added security;
it guarantees that resources are bounded.
This commit uses that new scheduler in the standard websocket client,
since the underlying API is blocking for the connection phase and we
need to schedule that off a web server thread.
Closes gh-23661
See gh-23665
2019-09-18 21:39:45 +02:00
Sebastien Deleuze
90b5e6ab48
Polishing
...
See gh-23649
2019-09-18 19:29:15 +02:00
Sebastien Deleuze
5adc3d6666
Fix RSocketRequester API for requests without payload
...
This commit makes it possible to send requests without
requiring to call data(Mono.empty()). It introduces a
dedicated MetadataSpec interface and merge ResponseSpec
into RequestSpec for more flexibility.
Closes gh-23649
2019-09-18 16:00:16 +02:00
Brian Clozel
ab58e29397
Remove scope information from published BOM
...
It seems that publishing a Gradle platform as a Maven POM writes all
dependencies with their scope information by default.
We don't want that when publishing the Spring Framework BOM, as it
forces the scope on projects depending on the BOM, unless they've
specified the scope when they added the dependency to their build.
Typically, developers could get spring-test as a compile dependency
without this change.
This commit removes the scope information from the published BOM.
Fixes gh-23660
2019-09-18 15:27:59 +02:00
Sam Brannen
e1e072b75c
Fix memory leak regression involving @Async methods
...
Spring Framework 5.2 M1 introduced a memory leak for applications using
@Async methods. Specifically, in a large test suite with multiple
ApplicationContexts that were closed (e.g., via @DirtiesContext,
@MockBean, or context cache eviction), the JVM process could run out of
memory.
Underlying cause: Due to a missing equals() implementation in Spring's
new AnnotationCandidateClassFilter, CGLIB's static cache of generated
classes indirectly retained references to BeanFactory instances for the
closed ApplicationContexts for the duration of the test suite.
This commit fixes this regression by introducing a proper equals()
implementation in AnnotationCandidateClassFilter. This commit also
introduces corresponding hashCode() and toString() implementations.
Closes gh-23571
2019-09-18 14:28:54 +02:00
Sam Brannen
2e7d344930
Polish ClassFiltersTests
2019-09-18 10:25:54 +02:00
Sam Brannen
a51dc84cb1
Fix Checkstyle violation
2019-09-17 13:29:22 +02:00
Sam Brannen
9517372e5f
Re-enable DLBFTests.prototypeCreationWithConstructorArgumentsIsFastEnough()
2019-09-17 13:24:53 +02:00
Sam Brannen
a93f3ddfe4
Polish DefaultListableBeanFactoryTests
2019-09-17 13:17:22 +02:00
Sam Brannen
c8e47f578f
Merge branch '5.1.x'
2019-09-17 13:13:02 +02:00
Sam Brannen
b2aad1c3b1
Ensure bean definitions can be removed concurrently
...
Prior to this commit, concurrent invocations of
DefaultListableBeanFactory.removeBeanDefinition() could result in a
NullPointerException.
This commit fixes this by adding an appropriate not-null check in
resetBeanDefinition().
Closes gh-23542
2019-09-17 13:09:08 +02:00
Sebastien Deleuze
1dfe304da4
Improve parity between Java and Kotlin router DSL
...
This commit adds following functions to the Kotlin DSL:
add, filter, before, after and onError.
Closes gh-23524
2019-09-17 12:42:48 +02:00
Sam Brannen
7a1a8e1623
Polish DefaultListableBeanFactoryTests
2019-09-17 10:44:45 +02:00
Brian Clozel
4cfcc108fe
Merge branch '5.1.x'
2019-09-17 09:49:47 +02:00
Brian Clozel
ca2b2f5533
Wait for complete disposal of Reactor Netty resources
...
Fixes gh-23631
2019-09-17 09:49:05 +02:00
Sebastien Deleuze
5a0216d657
Improve parity between Java and Kotlin router DSL
...
This commit adds variants with pattern + predicate to
Kotlin router DSLs, and vararg where necessary.
Closes gh-23524
2019-09-16 22:14:55 +02:00
Brian Clozel
848804a227
Allow registration of RSocket metadata extractors
...
Prior to this commit, customizing the extraction of RSocket metadata
from frames would require developers to override the default
`MetadataExtractor` while configuring `RSocketStrategies`.
This touches on many infrastructure parts, whereas the goal is just to
configure an extra metadata entry extractor using already configured
codecs.
This commit adds a way to register metadata entry extractors on the
`RSocketStrategies` builder with a `Consumer`-based API.
Closes gh-23645
2019-09-16 19:01:14 +02:00
Sam Brannen
a676059699
Declare CRON_DISABLED constant value only once
...
This commit removes the duplicated CRON_DISABLED constant value from
@Scheuled and simply refers to the ScheduledTaskRegistrar.CRON_DISABLED
constant.
This avoids a potential package cycle by ensuring that the `annotation`
package depends on the `config` package but not the other way around.
See gh-23568
2019-09-16 15:17:58 +02:00
Stephane Nicoll
37d950c5d6
Merge branch '5.1.x'
2019-09-16 14:37:15 +02:00
Stephane Nicoll
b65984a078
Consume getProtocolResolvers() rather than internal list
...
This commit makes sure that DefaultResourceLoader consistently use
getProtocolResolvers() to access additional protocol resolvers. This
allows subclasses to define how the list is provided.
Closes gh-23564
2019-09-16 14:35:00 +02:00
Andy Wilkinson
20e6ca3601
Fix race condition in sendBlockingMessage
...
Previously, tests in ConcurrentWebSocketSessionDecoratorTests that use
the BlockingSession would fail intermittently. This appears to have
been due to a race condition in sendBlockingMessage where the call
to getSentMessageLatch() that stores a latch in nextMessageLatch on
the main thread may happen after the call to sendMessage that counts
down the latch if it is non-null occurs on the executor's thread.
This commit updates sendBlockingMessage to call getSentMessageLatch()
(and therefore store the latch) before it sumbmits the task to the
executor. This ensures that the latch will be available when the
exeuctor's thread attempts to retrieve and decrement it.
BlockingSession's AtomicReference fields have also been made final to
eliminate the possibility of any visibility problems across threads.
Closes gh-23642
2019-09-16 14:14:06 +02:00
Kwon Young Jae
6063c00e4e
Delete obsolete comment in RowMapperTests
...
Closes gh-23643
2019-09-16 14:10:33 +02:00
Sam Brannen
e7b2c93ede
Delete dead code
2019-09-16 13:56:01 +02:00
Sam Brannen
53565c825f
Merge branch '5.1.x'
2019-09-16 13:48:49 +02:00
Sam Brannen
b1b25fab00
Fix Checkstyle violation
2019-09-16 13:45:37 +02:00
Phillip Webb
e9454b8b11
Update checkstyle import rule
...
Update the checkstyle rule to enforce the blank line between `java`
and `javax`.
See gh-23539
2019-09-16 13:45:28 +02:00
Phillip Webb
d945ae9191
Add blank line between java and javax imports
...
See gh-23539
Co-authored-by: Sam Brannen <sbrannen@pivotal.io >
2019-09-16 13:41:59 +02:00
Sam Brannen
1deaedc2b9
Merge branch '5.1.x'
2019-09-16 12:49:35 +02:00
Sam Brannen
d09f537699
Annotate Object#equals parameter with @nullable
...
See gh-23093
Co-authored-by: Sebastien Deleuze <sdeleuze@pivotal.io >
2019-09-16 12:43:13 +02:00
Juergen Hoeller
c8f20815ef
Revise LinkedCaseInsensitiveMap's lazy key/value/entry collections
...
Closes gh-22926
2019-09-16 12:38:46 +02:00
Juergen Hoeller
60976e4116
Add missing nullable declarations
...
See gh-22821
2019-09-16 12:37:49 +02:00
Sam Brannen
bd28bb1f56
Add additional tests for HttpHeaders.keySet() operations
...
See gh-22821
2019-09-16 12:36:05 +02:00
Phillip Webb
aa69703f3b
Fix LinkedCaseInsensitiveMap collection methods
...
Ensure that results returned from keySet, entrySet & values are tracked
to remove case insensitive keys from the source map.
Closes gh-22821
2019-09-16 12:36:05 +02:00
Sam Brannen
a871f609ea
Introduce failing tests for HttpHeaders
...
See gh-22821
2019-09-16 12:28:38 +02:00
Sam Brannen
52128fe863
Polish RequestLoggingFilterTests
2019-09-16 11:35:26 +02:00
Napster
33cee066e5
Log HTTP method in logging filters and revise log message format
...
Closes gh-23567
2019-09-16 11:35:26 +02:00
Arjen Poutsma
a65fd34801
Change raw status code range check in MockClientHttpResponse
...
This commit changes the raw status code check to allow for all three
digit numbers, not just those between 100 and 600.
See gh-23599
2019-09-16 09:52:03 +02:00
Sam Brannen
cf5cb9484a
Add additional tests for HttpHeaders.keySet() operations
...
See gh-22821
2019-09-15 15:48:37 +02:00
Phillip Webb
077754b8e0
Support constructor injection for @Import classes
...
Allow `ImportBeanDefinitionRegistrar`, `ImportSelector`,
`DeferredImportSelector.Group` and `TypeFilter` to use constructor
parameters as an alternative to `*Aware` callbacks.
In order to remain backwards compatible, injection only occurs
when there is a single constructor with one or more parameters.
The following parameter types are supported:
* `Environment`
* `BeanFactory`
* `ClassLoader`
* `ResourceLoader`
In order to keep the algorithm simple, subclass parameter types are
not supported. For example, you cannot use `ConfigurableEnvironment`
instead of `Environment`.
Closes gh-23637
2019-09-13 15:20:57 -07:00
Sam Brannen
957f0fac7a
Polishing
2019-09-13 12:55:59 +02:00
Sebastien Deleuze
7b4b64b8fb
Fix UTF-8 handling in ContentResultMatchers
...
Closes gh-23622
2019-09-13 11:44:10 +02:00
Phillip Webb
5d785390eb
Add ClientHttpRequestInitializer support
...
Add `ClientHttpRequestInitializer` interface that can be used with any
`HttpAccessor` to initialize each `ClientHttpRequest` before it's used.
This provides a useful alternative to `ClientHttpRequestInterceptor`
when users need to configure things like `HttpHeaders`.
Closes gh-22002
2019-09-12 16:01:46 -07:00
Rossen Stoyanchev
b587003d8d
Merge branch '5.1.x'
2019-09-12 21:52:41 +01:00
Rossen Stoyanchev
f259fda8eb
Fix checkstyle violations
2019-09-12 21:46:42 +01:00
Rossen Stoyanchev
7194261961
Merge branch '5.1.x'
2019-09-12 21:17:00 +01:00
Rossen Stoyanchev
23be5dfb0e
Handle invalid MediaType in Jetty/Tomcat adapters
...
See: gh-23553
2019-09-12 20:58:47 +01:00
Sam Brannen
455ad71863
Polish contribution
...
See gh-23629
2019-09-12 17:02:35 +02:00
douddle
93ddfb9cae
Add SVG mapping to mime.types file for JavaMail support
...
Closes gh-23629
2019-09-12 16:52:59 +02:00
Sam Brannen
d689ef8891
Support disabling cron jobs registered via SchedulingConfigurer
...
Prior to this commit, support was provided for disabling cron jobs
configured with an explicit "-" cron expression. However, the "-"
expression was only supported when supplied via the @Scheduled
annotation.
This commit adds support for disabling cron jobs configured with the
"-" cron expression when a cron job is registered via the
addCronTask(Runnable, String) method in the ScheduledTaskRegistrar
supplied to a SchedulingConfigurer.
Closes gh-23568
2019-09-12 16:08:26 +02:00
Rossen Stoyanchev
b7eaab4c5d
Handle very early completion notification
...
On a Servlet container a completion notification may come at any time
even in the UNSUBSCRIBED state, i.e. before the write Publisher has
called onSubscribe.
See: gh-23553
2019-09-12 14:14:11 +01:00
Sebastien Deleuze
fc6480631e
Improve Coroutines transaction API
...
As a follow-up of gh-22915, the purpose of this commit is to improve
Coroutines programmatic transaction API to make it more consistent with
the Java one and more idiomatic.
For suspending functions, this commit changes the
TransactionalOperator.transactional extension with a suspending lambda
parameter to a TransactionalOperator.executeAndAwait one which is
conceptually closer to TransactionalOperator.execute Java API so more
consistent.
For Flow, the TransactionalOperator.transactional extension is correct
but would be more idiomatic as a Flow extension.
This commit also adds code samples to the reference documentation.
Closes gh-23627
2019-09-12 14:45:03 +02:00
Rossen Stoyanchev
07b0fa132e
doFilterNestedErrorDispatch delegates to filter chain
...
Closes: gh-23596
2019-09-12 13:42:12 +01:00
Rossen Stoyanchev
6eb0e9e44b
Unwrap decorated request or response
...
Closes: gh-23598
2019-09-12 13:42:12 +01:00
Sam Brannen
e62cb6bc56
Merge branch '5.1.x'
2019-09-12 14:03:12 +02:00
GungnirLaevatain
9db4118180
Fix DefaultListableBeanFactory#copyConfigurationFrom
...
Prior to this commit, the copyConfigurationFrom(ConfigurableBeanFactory)
method in DefaultListableBeanFactory cloned its own AutowireCandidateResolver
type instead of the resolver type from the supplied ConfigurableBeanFactory.
This commit fixes that by cloning the resolver type from the supplied
ConfigurableBeanFactory.
Closes gh-23569
2019-09-12 13:58:24 +02:00
Sam Brannen
2b460854ce
Polishing
2019-09-12 13:16:48 +02:00
Sam Brannen
e124cbb310
Fix Checkstyle violation
2019-09-12 13:15:58 +02:00
OLPMO
40fcf876ce
Optimize test code with lambdas where feasible
...
This commit optimizes test code with lambda expressions
and method references where feasible.
Closes gh-23626
2019-09-12 13:09:31 +02:00
Sam Brannen
00c07e3a50
Indent with tabs
2019-09-12 11:51:44 +02:00
Andy Wilkinson
508b6798ff
Move jmx.log beneath build/ to avoid UP-TO-DATE pollution
...
Previously, some tests in spring-context wrote a file named jmx.log
into spring-context/. This led to the file being included in the
sources of the Checkstyle NoHTTP Gradle task, breaking that task's
UP-TO-DATE checks and causing it to execute unnecessarily.
This commit updates the tests to write the jmx.log file beneath
spring-context/build/ so that it is not included in the sources of the
Checkstyle NoHTTP task.
Closes gh-23623
2019-09-12 11:39:43 +02:00
Sam Brannen
8f38f5c17a
Polishing
2019-09-12 11:35:30 +02:00
Sam Brannen
30cff46e7f
Prevent improper use of testing framework APIs
...
Prior to this commit, a lot of work had been done to prevent improper
use of testing Framework APIs throughout the codebase; however, there
were still some loopholes.
This commit addresses these loopholes by introducing additional
Checkstyle rules (and modifying existing rules) to prevent improper use
of testing framework APIs in production code as well as in test code.
- Checkstyle rules for banned imports have been refactored into
multiple rules specific to JUnit 3, JUnit 4, JUnit Jupiter, and
TestNG.
- Accidental usage of org.junit.Assume has been switched to
org.junit.jupiter.api.Assumptions.
- All test classes now reside under org.springframework packages.
- All test classes (including abstract test classes) now conform to the
`*Tests` naming convention.
- As an added bonus, tests in the renamed
ScenariosForSpringSecurityExpressionTests are now included in the
build.
- Dead JUnit 4 parameterized code has been removed from
DefaultServerWebExchangeCheckNotModifiedTests.
Closes gh-22962
2019-09-12 11:20:56 +02:00
Stephane Nicoll
92d3f7e7d7
Merge pull request #23620 from wilkinsona
...
* pr/23620:
Enable parallel builds by default
Closes gh-23620
2019-09-12 09:48:50 +02:00
Andy Wilkinson
9de4c4aefb
Enable parallel builds by default
...
Previously, all tasks in the build were run sequentially. This
commit updates Gradle's properties to build them in parallel where
possible. When using the daemon (recommended) its default max heap is
not sufficient for the demands on a parallel build, therefore this
commit also increases the daemon's max heap.
See gh-23620
2019-09-12 09:48:45 +02:00
Rossen Stoyanchev
cfae20f97d
Update advice on creating issue vs pull request
...
Closes gh-23427
2019-09-11 16:16:41 +01:00
Andy Wilkinson
2b4316cf24
Upgrade to com.gradle.build-scan 2.4.2
...
Closes gh-23619
2019-09-11 15:36:19 +02:00
Sam Brannen
d759ae772b
Rename Spr3896SuiteTests to Spr3896TestSuite
...
This commit renames Spr3896SuiteTests to comply with our naming
convention for test classes that should be executed via the Gradle
build.
The effect of this commit is that test classes included in that "suite"
are no longer executed twice in the build. Consequently, Gradle and
Bamboo will now report the same number of executed tests for the
spring-test project.
2019-09-11 13:21:19 +02:00
Arjen Poutsma
13ba7ef701
Merge branch '5.1.x'
2019-09-11 10:43:43 +02:00
Arjen Poutsma
b159ef6019
Make MockClientHttpResponse uses raw status code
...
This commit make sure that MockClientHttpResponse does not use
HttpStatus, but the raw status code.
Closes gh-23599
2019-09-11 10:41:01 +02:00
Andy Wilkinson
b730597c87
Disable caching of changing modules and dynamic versions
...
Previously, changing modules (snapshots) and dynamic versions were
cached for Gradle's default period of 24 hours and
--refresh-dependencies was used to pick up the latest artifacts. This
approach has a notable downside. --refresh-dependencies causes all
dependencies to be refreshed, irrespective of whether they are
expected to change. At a minimum, this results in a HEAD request for
every dependency in the build. Running an up-to-date build without
--refresh-dependencies takes in the region of 6 seconds:
$ ./gradlew build
BUILD SUCCESSFUL in 6s
203 actionable tasks: 203 up-to-date
The same build with --refresh-dependencies takes almost ten times as
long:
$ ./gradlew build --refresh-dependencies
BUILD SUCCESSFUL in 58s
203 actionable tasks: 203 up-to-date
This commit replaces the manual usage of --refresh-dependencies on
the command line with a 0 second caching period for changing modules
and dynamic versions. This should remove the need to use
--refresh-dependencies both locally and on CI, saving almost 1 minute
per full build.
2019-09-11 10:00:01 +02:00
Sam Brannen
333711fd36
Convert XmlValidationModeDetectorTests to JUnit Jupiter and AssertJ
...
See gh-23605
2019-09-09 16:29:00 +02:00
Sam Brannen
22c88d7126
Merge branch '5.1.x'
2019-09-09 16:25:20 +02:00
Sam Brannen
961010055e
Support trailing comment in DTD declaration in XML config
...
Prior to this commit, Spring failed to determine that an XML config file
was DTD-based if the DTD declaration was followed by a comment.
This commit fixes this by modifying the consumeCommentTokens(String)
algorithm in XmlValidationModeDetector so that both leading and trailing
comments are properly consumed without losing any XML content.
Closes gh-23605
2019-09-09 16:18:21 +02:00
Sam Brannen
604eecaf67
Upgrade to JUnit 5.5.2
...
This commit also removes the testRuntime dependency on Hamcrest which
was a workaround for https://github.com/junit-team/junit5/issues/2004 .
Closes gh-23604
2019-09-09 14:20:56 +02:00
Sebastien Deleuze
5bb8c47b14
Rename fromObject to fromValue in BodyInserters
...
Closes gh-23587
2019-09-09 00:08:55 +02:00
Sam Brannen
665e8aa51c
Downgrade to JUnit 4.12
...
Since it does not appear that JUnit 4.13 will be released before Spring
Framework 5.2 GA, I am reverting back to JUnit 4.12 for the time being.
See gh-22894
2019-09-08 15:22:21 +02:00
Sam Brannen
683fe9ed70
Update comment
...
See gh-23604
2019-09-08 15:15:30 +02:00
康智冬
0d742cf3d0
Fix typos related to indefinite articles for SQL acronym
...
Closes gh-23603
2019-09-07 16:04:47 +02:00
Andy Wilkinson
df7e4ad023
Tweak detection of Bamboo
...
When exposed as an environment variable Bamboo's bamboo.resultsUrl
is mapped to bamboo_resultsUrl. This commit updates the build scan
user data script to look for the latter rather than the former.
Closes gh-23597
2019-09-06 19:18:46 +02:00
Sam Brannen
d817b591e5
Revert "Tweak detection of Bamboo ( #23597 )"
...
This reverts commit 35567678ef , reversing
changes made to 807e1d3367 .
2019-09-06 19:16:59 +02:00
Sam Brannen
35567678ef
Tweak detection of Bamboo ( #23597 )
...
When exposed as an environment variable Bamboo's bamboo.resultsUrl
is mapped to bamboo_resultsUrl. This commit updates the build scan
user data script to look for the latter rather than the former.
2019-09-06 17:18:10 +02:00
Sam Brannen
807e1d3367
Upgrade to Gradle 5.6.2
...
See gh-23479
2019-09-06 16:09:01 +02:00
Sam Brannen
5d5f9aceca
Avoid accidental usage of JUnit 4 assumptions
...
This commit also avoids starting a server if an assumption fails.
2019-09-06 16:03:36 +02:00
Sam Brannen
591995ecc8
Polish and revive disabled tests
...
This commit revives some previously disabled tests and converts
some usage of @Disabled to @EnabledForTestGroups(...).
2019-09-06 15:57:27 +02:00
Andy Wilkinson
fcda0fb8d9
Tweak detection of Bamboo
...
When exposed as an environment variable Bamboo's bamboo.resultsUrl
is mapped to bamboo_resultsUrl. This commit updates the build scan
user data script to look for the latter rather than the former.
2019-09-06 10:08:35 +01:00
Andy Wilkinson
35b967a801
Add opt-in build scan integration with Gradle Enterprise
...
This commit adds opt-in build scan integration with Gradle Enterprise.
When the GRADLE_ENTERPRISE_URL environment variable is set on a
developer's machine or on CI, a build scan will be automatically
uploaded to Gradle Enterprise at the end of the build.
This initial integration will establish a baseline for Spring
Framework builds. Once that baseline has been established we can use
the build scans to identify ways in which the build can be optimized
and updated to make use of Gradle's build caching which should reduce
build times, significantly so for changes that only affect tasks near
the leaf nodes of the task graph.
2019-09-05 15:16:59 +01:00
Sam Brannen
2b1ae4af60
Remove obsolete Checkstyle suppression entries
2019-09-05 15:54:55 +02:00
Sam Brannen
760f7bed03
Merge branch '5.1.x'
2019-09-05 15:18:43 +02:00
Sebastien Deleuze
aa81fdc66f
Upgrade to Kotlin Coroutines 1.3.1
2019-09-05 15:09:17 +02:00
Sam Brannen
a7aecbb4dc
Ensure spring-test test tasks are UP-TO-DATE
...
See also: 69214429df and eec183ef28
2019-09-05 15:06:12 +02:00
Stephane Nicoll
9afe17a29b
Fix static imports handling in IntelliJ IDEA configuration
...
Closes gh-23588
2019-09-05 14:35:54 +02:00
Sam Brannen
99d88ba14e
Document minimum JDK 8 update version
...
Closes gh-23563
2019-09-05 14:04:43 +02:00
Sam Brannen
ef50777535
Polishing
2019-09-05 13:45:38 +02:00
Sam Brannen
d9e3b8b9a5
Introduce default constructor in TomcatHttpServer
2019-09-05 13:45:38 +02:00
Sebastien Deleuze
40a55b412d
Rename BodyBuilder#bodyAndAwait to bodyValueAndAwait
2019-09-05 13:34:11 +02:00
Sam Brannen
73f5d05fd9
Avoid deprecation warning in RandomHandlerIntegrationTests
2019-09-05 13:29:01 +02:00
Sam Brannen
c80705a708
Polishing
2019-09-05 13:20:20 +02:00
Sam Brannen
ce178f76eb
Add missing Temporal tests in BeanUtilsTests
...
This change will help to serve as a regression test.
2019-09-05 13:14:39 +02:00
Stephane Nicoll
facdbdb7b6
Fix checkstyle violation
2019-09-05 09:18:43 +02:00
Phillip Webb
6fbd4841ec
Update checkstyle import rule
...
Update the checkstyle rule to enforce the blank line between `java`
and `javax`.
Closes gh-23539
2019-09-04 22:06:46 -07:00
Phillip Webb
deba2ed1b3
Add blank line between java and javax imports
...
See gh-23539
2019-09-04 22:05:46 -07:00
Phillip Webb
2f106fbb32
Polishing web socket test to use BDD Mockito
2019-09-04 22:05:13 -07:00
Rossen Stoyanchev
bc81fa520e
Reject range starting above resource length
...
Closes: gh-23576
2019-09-04 18:05:59 +01:00
Sebastien Deleuze
70bbe71235
Polishing
...
See gh-22915
2019-09-04 18:24:35 +02:00
Sebastien Deleuze
ff271894fe
Detect unsupported suspending handler methods in Spring MVC
...
closes gh-23585
2019-09-04 18:24:35 +02:00
Sam Brannen
f54395b261
Polish BeanUtilsTests
2019-09-04 16:53:29 +02:00
Sam Brannen
803643559a
Merge branch '5.1.x'
2019-09-04 16:24:44 +02:00
Brian Clozel
0c7359911a
Re-enable StreamingSimpleClientHttpRequestFactoryTests
...
Since the okhttp3 3.14 downgrade, we don't need to ignore this test
anymore.
2019-09-04 16:02:43 +02:00
Sam Brannen
d036b5a283
Do not treat void and Void as simple types in BeanUtils
...
Prior to this commit, the isSimpleProperty() and isSimpleValueType()
methods in BeanUtils treated void and Void as simple types; however,
doing so does not make sense in this context, since void implies the
lack of a property or value.
This commit addresses this by explicitly excluding void and Void in the
logic in isSimpleValueType().
This commit also simplifies the implementation of
ViewResolutionResultHandler.supports(HandlerResult) to take advantage
of this change.
Closes gh-23573
2019-09-04 15:48:40 +02:00
Brian Clozel
cccd9c8bb0
Fix okhttp3 downgrade
2019-09-04 15:07:17 +02:00
Brian Clozel
e83fec4ec3
Downgrade to okhttp3 3.14.2
...
The upgrade to 4.x was breaking some behavior in our tests.
We need to reconsider this upgrade and check our mockrestserver usage in
our tests.
2019-09-04 14:51:52 +02:00
Sam Brannen
00983a1141
Update @Disabled for StreamingSimpleClientHttpRequestFactoryTests.interceptor()
2019-09-04 14:37:37 +02:00
Sam Brannen
4d819128db
Fix Javadoc
2019-09-04 14:33:02 +02:00
Sam Brannen
07d4104f2f
Polishing
2019-09-04 14:12:44 +02:00
Rossen Stoyanchev
310f0bfb6c
Remove unnecessary code from prior commit
2019-09-04 12:59:19 +01:00
Rossen Stoyanchev
dfc7540106
Add generic type bounds to DataBufferUtils methods
...
Closes gh-23459
2019-09-04 12:14:32 +01:00
Juergen Hoeller
48934cba1b
Polishing
2019-09-04 12:19:08 +02:00
Juergen Hoeller
3bc27e8d14
Streamline AnnotationFilter usage with the MergedAnnotations API
...
MergedAnnotations provides 'from' variants with RepeatableContainers but without AnnotationFilter argument now, avoiding the need to refer to AnnotationFilter.PLAIN as a default at call sites.
2019-09-04 12:18:49 +02:00
Rossen Stoyanchev
c8f430ee91
Change package used to test path matching
...
The org.reactivestreams has 13 instead of 4 classes in 1.0.3 with the
addition of Java 9 Flow adapters. This commit switches to using a
different package reactor.util.annotation, also with a small number of
classes, for this test.
2019-09-04 10:37:57 +01:00
Brian Clozel
3a132f8c3c
Revert Artifactory Gradle plugin configuration
...
This commit reverts all artifactory configuration changes in this
branch. A new build plan has been created for the master branch which is
tailored for the latest Gradle changes made on that branch.
2019-09-04 11:21:41 +02:00
Brian Clozel
1187fea65c
Fix Artifactory Gradle plugin configuration
...
This commit adds a missing dependency from the artifactoryPublish task
to the "install" task as POMs are currently missing from the published
artifacts and they are generated with the "install" task here.
2019-09-04 10:26:22 +02:00
Brian Clozel
e26cdfe21e
Fix Artifactory Gradle plugin configuration
2019-09-04 10:00:13 +02:00
Rossen Stoyanchev
57d9b92b94
Upgrade Reactor to Dysprosium RC1
...
Closes: gh-23579
2019-09-04 08:55:45 +01:00
Juergen Hoeller
f26866e4d4
Introduce getType variant with allowFactoryBeanInit flag
...
Closes gh-23374
2019-09-04 00:06:23 +02:00
Juergen Hoeller
eb6577755d
Stackless variant of NoTransactionException for reactive flows
...
Closes gh-23360
2019-09-04 00:02:24 +02:00
Sebastien Deleuze
d587a660fc
Fix a warning in Kotlin tests
2019-09-03 23:48:39 +02:00
Sebastien Deleuze
9b33b0ad58
Rename CoroutinesUtils#invokeHandlerMethod to invokeSuspendingFunction
2019-09-03 23:41:53 +02:00
Sebastien Deleuze
2b4eb610a7
Add support for Coroutines transactions
...
This commit adds Coroutines extensions for
TransactionalOperator.transactional that accept suspending lambda or
Kotlin Flow parameters.
@Transactional on suspending functions is not supported yet, gh-23575
has been created for that purpose.
Closes gh-22915
2019-09-03 23:41:42 +02:00
Sam Brannen
aeb857c3ba
Polish ClassUtilsTests
...
See gh-23572
2019-09-03 17:58:54 +02:00
Sam Brannen
4575f82c72
Simplify Gradle test task configuration
2019-09-03 17:08:45 +02:00
Sam Brannen
3c4cd99237
Reintroduce Hamcrest as a global test runtime dependency
...
Prior to this commit, tests in spring-web and spring-webflux were no
longer executed due to the removal of the Hamcrest dependency in
commit bb03cdf5d0 .
2019-09-03 17:00:26 +02:00
Sam Brannen
1c5b949df0
Fix ViewResolutionResultHandlerTests
...
See gh-23572
2019-09-03 16:56:50 +02:00
Sam Brannen
513ce7824f
Disable StreamingSimpleClientHttpRequestFactoryTests.interceptor() test
2019-09-03 16:43:48 +02:00
Brian Clozel
1b6814402c
Publish Gradle metadata
...
This commit enables the publishing of Gradle metadata with Spring
Framework artifacts. This feature will be enabled by default with Gradle
6.0, so Spring Framework will consistently push this information in the
5.2.x generation.
Fixes gh-23503
2019-09-03 16:17:06 +02:00
Sebastien Deleuze
f8516c69bf
Add Kotlin code snippets to data access refdoc
...
See gh-21778
2019-09-03 16:03:41 +02:00
Sam Brannen
652db21d3e
Ensure Hamcrest imports are properly banned
2019-09-03 16:01:30 +02:00
Arjen Poutsma
4c863f3f83
Revise documentation on using WebClient::exchange
...
This commit revised the paragraph regarding the need to consume or
release the ClientResponse body when using WebClient::exchange.
Closes gh-23498
2019-09-03 15:44:02 +02:00
Arjen Poutsma
37398c669c
Add toBodilessEntity to ClientResponse and WebClient.ResponseSpec
...
See gh-23498
2019-09-03 15:44:02 +02:00
Arjen Poutsma
f5640cbfe0
Add ClientResponse::releaseBody
...
See gh-23498
2019-09-03 15:44:02 +02:00
Sam Brannen
bc869657c8
Partially revert 670cbb9aed
...
... but continue to execute `Abstract*Tests` classes.
2019-09-03 15:17:34 +02:00
Sam Brannen
23d5c6e3dc
Do not scan for test classes in default test task
2019-09-03 14:36:32 +02:00
Sam Brannen
c78960a1ba
Merge branch '5.1.x'
2019-09-03 14:21:39 +02:00
Sam Brannen
f37ec90f2f
Consider Void.class a primitive wrapper in ClassUtils
...
Prior to this commit, ClassUtils.isPrimitiveOrWrapper() and
ClassUtils.isPrimitiveWrapper() did not return true for Void.class.
However, ClassUtils.isPrimitiveOrWrapper() did return true for
void.class. This lacking symmetry is inconsistent and can lead to bugs
in reflective code.
See: https://github.com/spring-projects/spring-data-r2dbc/issues/159
This commit addresses this by adding an entry for Void.class -> void.class
in the internal primitiveWrapperTypeMap in ClassUtils.
Closes gh-23572
2019-09-03 14:02:24 +02:00
Rossen Stoyanchev
32a585d100
Merge pull request #23485
2019-09-03 12:31:36 +01:00
Rossen Stoyanchev
d927d31e13
Remove reflection from ContentDispositionTests
...
Also minor refactoring in decoding in order to tolerate the absence of
a charset and treat as US_ASCII.
See gh-23485
2019-09-03 12:31:13 +01:00
Rossen Stoyanchev
c97580035e
Polish ContentDispositionTests
...
Closes gh-23485
2019-09-03 12:31:13 +01:00
Jonathan Bluett-Duncan
f084b63286
Fix "array index out of bounds" problem reported by LGTM.com
2019-09-03 12:31:13 +01:00
Sam Brannen
670cbb9aed
Simplify Gradle test task configuration
...
As an added bonus, AbstractViewTests is now executed in the build.
2019-09-03 12:40:59 +02:00
Sam Brannen
280a1b8880
Make AbstractWebRequestMatcherTests abstract
2019-09-03 12:13:56 +02:00
Sam Brannen
2c44eabe41
Remove unnecessary dependency declarations in spring-test
2019-09-03 12:13:56 +02:00
Sam Brannen
bb03cdf5d0
Remove global test dependency on Hamcrest
...
Hamcrest is now only used within spring-test for MockMvc support.
2019-09-03 12:13:56 +02:00
Sam Brannen
bf758eab33
Fix assertion in HandlerMethodMappingTests.unregisterMapping()
2019-09-03 12:13:56 +02:00
Sam Brannen
e79bda164e
Polish build.gradle
2019-09-03 12:13:10 +02:00
Sam Brannen
5fd81d2a26
Avoid deprecation warning in AbstractMockWebServerTests
...
MockResponse.setHeaders(Headers) is now deprecated.
2019-09-03 12:13:09 +02:00
Brian Clozel
926c385800
Upgrade to AssertJ 3.13.2
2019-09-02 20:09:14 +02:00
Brian Clozel
47f39965bf
Upgrade to Tomcat 9.0.24
2019-09-02 20:09:14 +02:00
Brian Clozel
78c5c7aa9c
Upgrade to Log4J 2.12.1
2019-09-02 20:09:14 +02:00
Brian Clozel
859450cf68
Upgrade to Joda time 2.10.3
2019-09-02 20:09:14 +02:00
Brian Clozel
a986be3e32
Upgrade to ehcache 2.10.6
2019-09-02 20:09:14 +02:00
Brian Clozel
1b6440c2c1
Upgrade to Caffeine 2.8.0
2019-09-02 20:09:14 +02:00
Brian Clozel
e60d48daae
Upgrade to hessian 4.0.62
2019-09-02 20:09:14 +02:00
Brian Clozel
829e9f5d92
Upgrade to okhttp3 4.1.0
2019-09-02 20:09:14 +02:00
Brian Clozel
3ec2a222ad
Upgrade to Aalto 1.2.1
2019-09-02 20:09:13 +02:00
Brian Clozel
b5f933a21b
Upgrade to Undertow 2.0.26.Final
2019-09-02 20:09:13 +02:00
Brian Clozel
b9089d2a90
Upgrade to RxJava2 2.2.12
2019-09-02 20:09:13 +02:00
Brian Clozel
d56ffd1a61
Upgrade to Netty 4.1.39.Final
2019-09-02 20:09:13 +02:00
Brian Clozel
be93d37330
Fix missing findbugs dependency for Dokka task
2019-09-02 20:09:13 +02:00
Brian Clozel
d4089747b8
Use dependency management in Framework build
...
Prior to this commit, the Spring Framework build would partially use the
dependency management plugin to import and enforce BOMs.
This commit applies the dependency management plugin to all Java
projects and regroups all version management declaration in the root
`build.gradle` file (versions and exclusions).
Some versions are overridden in specific modules for
backwards-compatibility reasons or extended support.
This commit also adds the Gradle versions plugin that checks for
dependency upgrades in artifact repositories and produces a report; you
can use the following:
./gradlew dependencyUpdates
2019-09-02 18:01:09 +02:00
Sebastien Deleuze
c13941821a
Treat Kotlin warnings as errors
...
Closes gh-23566
2019-09-02 16:49:31 +02:00
Sebastien Deleuze
a2e740c896
Polishing
2019-09-02 16:37:42 +02:00
Sebastien Deleuze
ca02cc1194
Migrate to AssertJ in Kotlin tests
...
Closes gh-23475
2019-09-02 15:59:26 +02:00
Arjen Poutsma
3fcf4233a2
Merge branch '5.1.x'
2019-09-02 15:19:30 +02:00
Arjen Poutsma
f748b1e68d
Fix timing bug in DataBufferUtils::readAsynchronousFileChannel
...
This commit makes sure that reading is enabled after the current
signal has been processed, not while is is being processed. The bug
was only apparent while using the JettyClientHttpConnector, which
requests new elements continuously, even after the end of the
stream has been signalled.
2019-09-02 15:13:22 +02:00
Rossen Stoyanchev
58e9266e99
Add Consumer methods to RSocketRequester
...
Closes gh-23513
2019-09-02 13:31:28 +01:00
Rossen Stoyanchev
b144c72937
Support ByteBuf as a metadata value
...
This allows encoding of metadata values externally via some
existing API for encoding RSocket metadata, rather than relying on
registered Encoders.
Also remove explicit checks for DataBuffer since those are supported
through the DataBufferEncoder (registered by default).
See gh-23513
2019-09-02 13:31:28 +01:00
Rossen Stoyanchev
71f3498a26
Switch to using RoutingMetadata API
...
Closes gh-23137
2019-09-02 13:31:28 +01:00
Arjen Poutsma
702dad6cec
Fix ConcurrentModificationException
2019-09-02 12:42:21 +02:00
Sam Brannen
0f4dcb52ca
Polishing
2019-09-02 12:34:06 +02:00
Rossen Stoyanchev
2c20b2b663
Upgrade to RSocket 1.0.0-RC3
...
Closes gh-23543
2019-09-02 09:46:08 +01:00
康智冬
a6f4862f13
Fix typos related to indefinite articles
...
Closes gh-23555
2019-09-01 15:45:49 +02:00
Sam Brannen
f05f993cc6
Fix formatting in Testing chapter in Reference Manual
2019-08-31 15:07:12 +02:00
Sam Brannen
794e2e328d
Polish Testing chapter in Reference Manual
2019-08-31 14:47:49 +02:00
Sam Brannen
0103fec5de
Convert assertions to AssertJ
...
See gh-23551
2019-08-31 13:13:44 +02:00
Sam Brannen
5a22eafcb4
Merge branch '5.1.x'
2019-08-31 13:10:58 +02:00
Sam Brannen
9729b460f1
Retain entry set order in read-only HttpHeaders
...
Prior to this commit, the entry set of read-only HttpHeaders lost the
original headers' ordering.
The changes in commit ce7278aaf4 introduced a regression in the read-only
HttpHeaders support. Specifically, the implementation of entrySet() in
the internal ReadOnlyHttpHeaders class converted the original entry set
to an immutable, non-ordered set of immutable entries.
This commit fixes this issue by converting the original entry set to an
immutable, ordered set of immutable entries.
Closes gh-23551
2019-08-31 13:10:07 +02:00
Sam Brannen
a496353770
Delete dead code
2019-08-31 11:44:04 +02:00
Sebastien Deleuze
57f0c2b7df
Remove bodyWithType extension from WebTestClient
...
Since there is no more clash with the new bodyValue
method name.
See gh-23523
2019-08-31 11:40:44 +02:00
Sebastien Deleuze
3dfd0a24dc
Add Kotlin code snippets to WebTestClient testing refdoc
...
Closes gh-21778
2019-08-31 11:36:57 +02:00
Udo Kohlmeyer
b20a8c9d98
Add Kotlin code snippets to testing refdoc
...
See gh-21778
2019-08-31 11:31:03 +02:00
Sam Brannen
ab779eb431
Preserve placeholders in @TestPropertySource locations
...
Prior to this commit, it was impossible to include a placeholder (i.e.,
${placeholder.name}) in a Properties file location configured via
@TestPropertySource if the placeholder was immediately followed by a
relative path (i.e., "../"). This was due to the fact that the location
was always cleaned using StringUtils.cleanPath(), which removed the
placeholder and the relative path syntax.
This commit fixes this by preserving all placeholders in
@TestPropertySource locations by simply not cleaning the locations if
they contain placeholders.
Closes gh-23544
2019-08-30 18:57:20 +02:00
Sam Brannen
9fa9a09007
Polishing
2019-08-30 18:56:03 +02:00
Sam Brannen
22494ba231
Ensure @ContextConfiguration & @TestPropertySource locations are cleaned
...
This commit ensures that locations to resources configured via
@ContextConfiguration & @TestPropertySource are consistently cleaned
using StringUtils.clean().
See gh-23544
2019-08-30 17:55:13 +02:00
Sam Brannen
ff1f8aa5a8
Add missing parentheses in Testing chapter
2019-08-30 17:19:46 +02:00
Sam Brannen
489193dfa6
Add missing parentheses in Testing chapter
2019-08-30 17:12:23 +02:00
Sam Brannen
793f9e3d29
Ensure SpringExtensionContextCacheTests are robust
...
... by explicitly ordering the test methods.
2019-08-30 16:22:54 +02:00
Sam Brannen
1ea6ce72bb
Test status quo for relative paths & placeholders in @TestPropertySource
...
This commit introduces a collection of @Nested integration tests that
verify proper support for @TestPropertySource with explicit properties
files declared with absolute paths, relative paths, and placeholders in
the classpath and in the file system.
See gh-23544
2019-08-30 15:51:45 +02:00
Sam Brannen
7738e778fa
Polishing
2019-08-30 15:51:44 +02:00
Arjen Poutsma
67d48ed821
Merge branch '5.1.x'
2019-08-29 17:18:22 +02:00
Arjen Poutsma
d709a69ff1
Remove buffering of encoded parts in MultipartHttpMessageWriter
...
Closes gh-23518
2019-08-29 16:34:36 +02:00
Arjen Poutsma
2c5958e191
Support back pressure in DataBufferUtils::readAsynchronousFileChannel
...
This commit adds support for back pressure in the ReadCompletionHandler,
as used by DataBufferUtils::readAsynchronousFileChannel.
See gh-23518
2019-08-29 16:34:36 +02:00
Rossen Stoyanchev
8d86a861a1
Merge branch '5.1.x'
2019-08-29 15:53:17 +03:00
Rossen Stoyanchev
4f4b9f6b1b
Fix checkstyle violation
2019-08-29 15:53:05 +03:00
Rossen Stoyanchev
48233317b8
Minor polish in DispatcherServlet
...
See gh-23541
2019-08-29 15:38:38 +03:00
Rossen Stoyanchev
117119a88d
Merge branch '5.1.x'
2019-08-29 15:13:36 +03:00
OLPMO
ed64a10c38
Use Collections.addAll where feasible
...
Closes gh-23478
2019-08-29 13:59:14 +02:00
Rossen Stoyanchev
4e4ec266b2
Adjust error response in ResourceUrlEncodingFilter
...
Failure to find the lookup path now results in 400 instead of 500
reflecting the presence of some issue with the input path.
Closes gh-23508
2019-08-29 14:58:03 +03:00
Sebastien Deleuze
72e92da2ad
Make SpEL rootObject parameter nullable
...
Closes gh-23442
2019-08-29 11:02:31 +02:00
Rossen Stoyanchev
bd8f94ad7b
Upgrade to Jetty 9.4.20.v20190813
2019-08-29 11:11:17 +03:00
Rossen Stoyanchev
c2d71922d7
Fix for change in Jetty 9.4.20.v20190813
...
Closes gh-23500
2019-08-29 10:52:16 +03:00
Rossen Stoyanchev
88e9dcef0c
Consistently apply onCompletion/onError handling
...
Follow-up change in addition to dd22b8fd .
See gh-23096
2019-08-29 09:20:50 +03:00
Sebastien Deleuze
f65cc9a438
Remove explicit disabling of buffer recycling in Jackson codec
...
Since now https://github.com/FasterXML/jackson-core/issues/476
and https://github.com/FasterXML/jackson-core/issues/479 are fixed.
This commit also raises the minimum version of Jackson to 2.9.7.
Closes gh-23522
2019-08-28 18:47:21 +02:00
Sam Brannen
c004ef888c
Configure index in @ParameterizedTest display names
...
This commit prepends "[{index}] " to all custom display names
configured via @ParameterizedTest.
This provides better diagnostics between the "technical names" reported
on the CI server vs. the "display names" reported within a developer's
IDE.
See gh-23451
2019-08-28 17:06:23 +02:00
Sam Brannen
b173a93e72
Verify PathMatchingResourcePatternResolver finds local files with # in name
...
This commit introduces a test that verifies that
PathMatchingResourcePatternResolver can find files in the filesystem
that contain hashtags (#) in their names.
See gh-23532
2019-08-28 16:21:07 +02:00
Sam Brannen
5af4d22044
Upgrade to Gradle 5.6.1
...
See gh-23479
2019-08-28 14:53:44 +02:00
Stephane Nicoll
5a28fdc540
Revert "Stop using libs-release"
...
This reverts commit e5b957167a .
See gh-23124
2019-08-28 14:52:29 +02:00
Stephane Nicoll
46b3a8335f
Stop using mavenLocal()
...
This commit makes sure the content of the local maven repository has no
impact on the build
See gh-23124
2019-08-28 14:18:06 +02:00
Stephane Nicoll
e5b957167a
Stop using libs-release
...
This commit makes sure we narrow down dependencies of the Spring
Framework to only Maven central. Optional dependencies that are not
available on Maven Central are now served from a more specific
repository (`ext-release-local`).
Closes gh-23124
2019-08-28 14:17:57 +02:00
Sebastien Deleuze
d53cbb6de4
Upgrade to Kotlin 1.3.50
...
Closes gh-23536
2019-08-28 13:33:50 +02:00
Sebastien Deleuze
77da40f006
Upgrade to Coroutines 1.3.0
...
Closes gh-23535
2019-08-28 13:30:40 +02:00
Sebastien Deleuze
52976246ac
Remove bodyWithType extension from WebFlux
...
Since there is no more clash with the new bodyValue
method name.
Closes gh-23523
2019-08-28 13:30:16 +02:00
Sebastien Deleuze
14558844bc
Add Kotlin code snippets to WebFlux refdoc
...
See gh-21778
2019-08-28 11:18:43 +02:00
Brian Clozel
5b4ad8bf36
Merge branch '5.1.x'
2019-08-27 22:30:07 +02:00
Brian Clozel
4a4edeb97f
Apply Artifactory Gradle plugin to build
...
Since gh-23282, our CI does not apply automatically the Artifactory
Gradle plugin during our build and we're now applying it "manually".
This commit backports this change since the build configuration is
shared between branches.
See gh-23282
2019-08-27 22:26:25 +02:00
Rossen Stoyanchev
4e39450dbe
Merge branch '5.1.x'
2019-08-27 21:49:51 +03:00
Rossen Stoyanchev
dd22b8fd39
Fix race condition with onCompletion/onError
...
Closes gh-23096
2019-08-27 21:43:33 +03:00
Sam Brannen
46a37b447c
Fix copyright dates
...
See gh-23393
2019-08-27 19:30:05 +02:00
stsypanov
78d56dc61b
Use Arrays.copyOf and Arrays.copyOfRange where possible
...
Closes gh-23393
2019-08-27 19:18:39 +02:00
Sam Brannen
216ffcfe62
Fix copyright dates
2019-08-27 18:28:31 +02:00
Сергей Цыпанов
6ef75d76cd
Simplify String concatenation
...
Closes gh-23470
2019-08-27 18:22:44 +02:00
Sam Brannen
aef67ea6bd
Polishing
2019-08-27 17:42:00 +02:00
Sam Brannen
b2ad16aaa7
Merge branch '5.1.x'
2019-08-27 17:37:25 +02:00
Sam Brannen
8189c90741
Allow Set-Cookie header to be overwritten in MockHttpServletResponse
...
Prior to this commit, there was no way to replace the Set-Cookie header
via MockHttpServletResponse. Specifically, an invocation of setHeader()
for the Set-Cookie header resulted in an additional Set-Cookie header
instead of replacing the existing one, which is in violation of the
contract for javax.servlet.http.HttpServletResponse.setHeader(...).
This commit refactors the internals of MockHttpServletResponse to ensure
that an existing Set-Cookie header is overwritten when set via an
invocation of setHeader(). This commit also verifies the expected
behavior for addHeader() and addCookie() with regard to multiple cookies.
Closes gh-23512
2019-08-27 17:20:38 +02:00
Sam Brannen
1ec9721617
Fix @since tags in ScopedProxyUtils[Tests]
...
See gh-23514
2019-08-27 16:01:50 +02:00
Sam Brannen
686f30a378
Merge branch '5.1.x'
2019-08-27 15:49:20 +02:00
Sam Brannen
9d2a874e3f
Introduce getOriginalBeanName(String) in ScopedProxyUtils
...
This commit introduces a utility method for retrieving the original
bean name for the target of a scoped proxy.
Closes gh-23514
2019-08-27 15:46:34 +02:00
Sam Brannen
f8f3067419
Polishing
2019-08-27 12:27:18 +02:00
Sam Brannen
d357ef706f
Delete unused imports
...
See gh-23458
2019-08-27 12:24:44 +02:00
Rossen Stoyanchev
29a58ab045
Remove RSocket metadata MimeType constants
...
For public use, these constants aren't ideally exposed through an SPI
like MetadataExtractor, and there isn't any other obvious place either.
In practice the only public API where these can be passed in is
RSocketRequester and RSocketMessageHandler both of which already
default to composite metadata anyway, leaving only the routing MimeType
to be used potentially but much less likely.
Due to existence of similar constants in the RSocket itself, i.e.
WellKnownMimeType, we can get by internally too without declaring
MimeType constants from a central place.
2019-08-27 13:04:58 +03:00
Rossen Stoyanchev
45d0405624
Upgrade to RSocket 1.0 RC3 snapshots and...
...
take advantage of the symmetrical SocketAcceptor methods now available
on RSocketFactory for both client and server side.
2019-08-27 13:04:58 +03:00
lijuny
a0d50a546b
Polish tests in spring-aop
...
This commit polishes tests in spring-aop by using
OrderComparator.sort() and lambda expressions instead of anonymous
classes where feasible.
Closes gh-23458
2019-08-27 12:01:30 +02:00
Sam Brannen
c6a4898ac5
Add "Participate in Reviews" section
2019-08-26 17:45:01 +02:00
Johnny Lim
6c2ef481ec
Add @since tags for getCacheFilter and setCacheFilter
...
Closes gh-23519
2019-08-26 15:26:32 +02:00
Sam Brannen
4cd635e9c8
Avoid repeated instantiation of AutowiredArgumentMarker
...
Prior to this commit, the AutowiredArgumentMarker type was repeatedly
instantiated in ConstructorResolver.
This commit replaces the AutowiredArgumentMarker type with a simple
Object instance.
Closes gh-23469
2019-08-25 22:42:41 +02:00
Sam Brannen
5105b74f6e
Add missing @Nullable declaration
...
See gh-23514
2019-08-25 15:15:48 +02:00
Sam Brannen
9be6aa64ef
Introduce getOriginalBeanName(String) in ScopedProxyUtils
...
This commit introduces a utility method for retrieving the original
bean name for the target of a scoped proxy.
Closes gh-23514
2019-08-25 15:13:53 +02:00
Brian Clozel
dda047623d
Fix "missing aspectjrt.jar" warnings in spring-aspects
...
See gh-23506
2019-08-23 17:05:31 +02:00
Brian Clozel
84f9c150de
Move Gradle plugin repos declaration to settings
...
See gh-23282
2019-08-23 17:05:31 +02:00
Sam Brannen
bfbe84d1c6
Apply fudge factor on both ends of the spectrum in StopWatchTests
...
This is an attempt to solve a build issue on Microsoft Windows.
See gh-23507
2019-08-23 16:50:27 +02:00
Sam Brannen
ac760c8d4b
Polish Javadoc for ReflectionTestUtils
...
Closes gh-23504
2019-08-23 16:38:35 +02:00
Sam Brannen
5ce75f3d08
Support static methods with ReflectionTestUtils.invokeMethod()
...
Prior to this commit, the invokeMethod() utility method in
ReflectionTestUtils only supported instance methods.
This commit brings the invokeMethod() support on par with the getField()
support by supporting the invocation of static methods via two new
invokeMethod() variants.
Closes gh-23504
2019-08-23 16:27:27 +02:00
Sam Brannen
d4360db497
Polish ReflectionTestUtilsTests
2019-08-23 15:03:41 +02:00
Brian Clozel
50decc43ce
Fix aspectj dependency in spring-aspects
...
See gh-23506
2019-08-23 14:47:39 +02:00
Sam Brannen
ad6231ad29
Add missing @Override annotations
2019-08-23 13:50:58 +02:00
Sam Brannen
0b63db26b7
Reinstate AbstractBeanFactoryTests.typeMismatch() test
2019-08-23 13:50:57 +02:00
Sam Brannen
a07ce8eb82
Polishing
2019-08-23 13:50:57 +02:00
Sam Brannen
3e2b977d5d
Re-enable shadowed, overridden @Test and lifecycle methods
...
Due to a bug (or "unintentional feature") in JUnit 4, overridden test
and lifecycle methods not annotated with @Test, @Before, @After, etc.
are still executed as test methods and lifecycle methods; however,
JUnit Jupiter does not support that. Thus, prior to this commit, some
overridden test and lifecycle methods were no longer executed after the
migration from JUnit 4 to JUnit Jupiter.
This commit addresses this issue for such known use cases, but there
are likely other such use cases within Spring's test suite.
See gh-23451
2019-08-23 13:50:57 +02:00
Sam Brannen
05c270d916
Ensure TransactionalSqlScriptsSpringRuleTests is purely JUnit 4
2019-08-23 13:50:33 +02:00
Sam Brannen
742cb90d34
Delete obsolete abstract test classes
2019-08-23 13:49:35 +02:00
Brian Clozel
b96cbb4e65
Close streams in tests
...
This commit ensures that file streams are properly closed in tests.
This seems to cause issues on Windows as the OS cannot delete temp
folders.
This is similar to spring-io/initializr#862
See gh-23507
2019-08-23 12:56:47 +02:00
Arjen Poutsma
8e4f2c89ff
Add headers(Consumer<HttpHeaders>) to RequestEntity and ResponseEntity
...
Closes gh-23404
2019-08-23 11:23:26 +02:00
Lars Grefer
fbee3ed889
Use the 'io.freefair.aspectj' Gradle plugin
...
See gh-23282
See spring-projects/spring-security#7183
Closes gh-23506
2019-08-23 10:57:10 +02:00
Sebastien Deleuze
0d3fb0ee0f
Add Kotlin code snippets to WebMvc refdoc
...
See gh-21778
2019-08-22 16:58:00 +02:00
Brian Clozel
7cfae94d70
Use resolved dependency versions for published POMs
...
This commit ensures that Gradle publications are using resolved
dependency versions for Maven publications (i.e. POMs). This is useful
since we're using the Spring dependency management plugin and we can't
rely on declared dependency versions only.
See gh-23282
2019-08-22 16:11:09 +02:00
Rossen Stoyanchev
1d2ebdeb8c
More optimal RequestMethod condition lookup
...
See gh-22644
2019-08-22 13:39:20 +03:00
Brian Clozel
86c734785d
Apply Artifactory Gradle plugin
...
Instead of relying on the CI server to apply and configure this plugin,
this commit does it directly in the Spring Framework build.
This allows us to take full control over which projects are published
and how.
See gh-23282
2019-08-21 20:15:35 +02:00
Brian Clozel
7902ae4c1f
Change Gradle publication name for artifactory
...
This commit switches to the default publication name considered by the
artifactory plugin when it comes to publishing artifacts to the
artifactory repository.
See gh-23282
2019-08-21 18:42:17 +02:00
Sam Brannen
53f523001e
Focus examples in Testing chapter on JUnit Jupiter
2019-08-21 15:56:15 +02:00
Sam Brannen
3dc4d01b53
Fix heading for Streaming Responses section of Testing chapter
2019-08-21 15:56:15 +02:00
Brian Clozel
7ce1f5e652
Configure Maven publications with Gradle
...
Prior to this commit, the build would use a custom task to create a BOM
and manually include/exclude/customize dependencies. It would also use
the "maven" plugin to customize the POM before publication.
This commit now uses a Gradle Java Platform for publishing the Spring
Framework BOM. We're also now using the "maven-publish" plugin to
prepare and customize publications.
This commit also tells the artifactory plugin (which is currently
applied only on the CI) not to publish internal modules.
See gh-23282
2019-08-21 15:39:51 +02:00
Brian Clozel
03701018c6
Cache "spring-doc-resources" archive between builds
...
This commit configures the Gradle Download plugin that's used a build
step when generating the reference documentation. Here we're making sure
that the task is caching and reusing the resource if it's been
downloaded already.
See gh-23282
2019-08-21 15:38:16 +02:00
Brian Clozel
e45a3f4738
Rename non-Framework project modules
...
Prior to this commit, the Spring Framework build would mix proper
framework modules (spring-* modules published to maven central) and
internal modules such as:
* "spring-framework-bom" (which publishes the Framework BOM with all
modules)
* "spring-core-coroutines" which is an internal modules for Kotlin
compilation only
This commit renames these modules so that they don't start with
"spring-*"; we're also moving the "kotlin-coroutines" module under
"spring-core", since it's merged in the resulting JAR.
See gh-23282
2019-08-21 14:32:25 +02:00
Sam Brannen
6ce5f9da06
Fix unmatched parentheses in @ContextHierarchy example in reference manual
...
See gh-23487
2019-08-21 14:18:21 +02:00
John Lin
74de495574
Fix unmatched parentheses in @ContextHierarchy Javadoc
...
Closes gh-23487
2019-08-21 13:53:32 +02:00
Rossen Stoyanchev
274eab7c5d
Merge branch '5.1.x'
2019-08-21 13:36:11 +03:00
Rossen Stoyanchev
a7bb5ca473
Remove unnecessary iteration over headers
...
The use of LinkedCaseInsensitiveMap, going back to 3.0, makes it
unnecessary to iterate over keys which can cause
ConcurrentModificationException.
Closes gh-23460
2019-08-21 13:34:17 +03:00
Rossen Stoyanchev
78abc27432
Remove statusCode state tracking
...
Closes gh-23490
2019-08-21 11:45:56 +03:00
Rossen Stoyanchev
e1158ad5cb
Merge pull request #23493
2019-08-21 11:21:36 +03:00
Rossen Stoyanchev
aa220a9a02
Polish
2019-08-21 11:20:37 +03:00
Rob Winch
ca3a0b19d6
DefaultWebClientBuilder defaults using classpath
...
Previously DefaultWebClientBuilder always defaulted the ClientHttpConnector
with ReactorClientHttpConnector. This worked fine if reactor was used.
However, it would break if the user was trying to leverage Jetty.
This commit defaults to use Reactory Netty HttpClient if it is present. If
it is not present it then Jetty's HttpClient is used if present.
Closes gh-23491
2019-08-21 11:04:14 +03:00
Rossen Stoyanchev
0a7fdb380f
Fix checkstyle error
2019-08-21 11:02:10 +03:00
Rossen Stoyanchev
ff6ccd0d04
Adapt tests changed in 5.1.x to master
2019-08-21 10:24:46 +03:00
Rossen Stoyanchev
364c7c459d
Merge branch '5.1.x'
2019-08-21 10:21:32 +03:00
Rossen Stoyanchev
6d8bf3466c
Suppress decoding error for resource path
...
Closes gh-23463
2019-08-21 10:02:15 +03:00
Rossen Stoyanchev
b86c11cc9b
Respect existing content-length for HTTP HEAD
...
Closes gh-23484
2019-08-21 02:28:19 +03:00
Brian Clozel
b3aebf9e9b
Download docs resources as zip file in asciidoc build
...
Prior to this commit, the reference documentation build with asciidoctor
would get the common "spring-docs-resources" as a dependency and then
use it when generating the docs.
As seen in #23124 , this can cause problems since we'd like to
consistently resolve our dependencies. In this case, the
"spring-doc-resources" archive is not published on maven central since
it's not officially supported by the Spring team as an open source
project.
This commit updates the reference documentation build to get this
archive as a simple download task and avoid resolving it as a
dependency.
See gh-23282
2019-08-20 23:36:59 +02:00
Sam Brannen
5053df55b6
Add LICENSE.txt file
...
Closes gh-23492
2019-08-20 22:01:12 +02:00
Brian Clozel
4a3e2484ac
Ignore spring-framework-bom project in global config
...
This commit ensures that the spring-framework-bom project is ignored
from the global configuration block. If not, many conventions and
dependencies are added to it and add noise to the published BOM.
See gh-23282
2019-08-20 20:33:10 +02:00
Brian Clozel
e9523161f0
Revert "Revert "Refactor Gradle tasks in Spring Framework build""
...
This reverts commit fb0d618751 .
2019-08-20 20:26:43 +02:00
Stephane Nicoll
fb0d618751
Revert "Refactor Gradle tasks in Spring Framework build"
...
This reverts commit 1539ba8991 .
2019-08-20 20:07:11 +02:00
Brian Clozel
1539ba8991
Refactor Gradle tasks in Spring Framework build
...
This commit reorganizes tasks and scripts in the build to only apply
them where they're needed. We're considering here 3 "types" of projects
in our build:
* the root project, handling documentation, publishing, etc
* framework modules (a project that's published as a spring artifact)
* internal modules, such as the BOM, our coroutines support and our
integration-tests
With this change, we're strealining the project configuration for all
spring modules and only applying plugins when needed (typically our
kotlin support).
See gh-23282
2019-08-20 18:17:02 +02:00
Sam Brannen
aa6e762dcf
Re-enable shadowed, overridden @Test methods
...
Due to a bug (or "unintentional feature") in JUnit 4, overridden test
methods not annotated with @Test are still executed as test methods;
however, JUnit Jupiter does not support that. Thus, prior to this
commit, some overridden test methods in spring-core were no longer
executed after the migration from JUnit 4 to JUnit Jupiter.
This commit addresses this issue for such known use cases, but there
are likely other such use cases within Spring's test suite.
See gh-23451
2019-08-20 15:30:32 +02:00
Sam Brannen
fab96cad67
Use default visibility for test classes and methods in spring-core
...
See gh-23451
2019-08-20 15:30:24 +02:00
Sam Brannen
cf1bf3d98c
Polish parameterized tests
2019-08-20 12:43:31 +02:00
Sam Brannen
617863ae4b
Polish WebSocket integration tests
2019-08-20 12:43:31 +02:00
Sam Brannen
91560d51ac
Polish AbstractWebSocketIntegrationTests
2019-08-20 12:43:30 +02:00
Rossen Stoyanchev
26dc93d0f6
Polish body methods
...
WebClient, WebTestClient, and ServerResponse
2019-08-20 10:27:06 +03:00
Rossen Stoyanchev
b75674f5e9
Polish method order
2019-08-20 10:27:05 +03:00
Rossen Stoyanchev
008687d5ae
Rename body(Object) to bodyValue
...
The recently added body(Object) variant can be confused easily with
body(Publisher, Class) forgetting to provide the element type and
only running into the IllegalArgumentException at runtime.
See gh-23212
2019-08-20 10:27:05 +03:00
Rossen Stoyanchev
5cfe491602
Polish AbstractWebSocketIntegrationTests
2019-08-20 03:03:58 +03:00
Sam Brannen
4386bf05de
Delete obsolete interface
2019-08-19 15:35:02 +02:00
Sam Brannen
74ccfe3533
Polish Spring's internal TestGroup support
2019-08-19 15:21:16 +02:00
Sam Brannen
3fa4d63807
Polish tests in integration-tests
2019-08-19 14:37:27 +02:00
Brian Clozel
998f6af290
Move integration tests to dedicated module
...
This commit moves the dependency management and test source files
related to integration tests to a dedicated module.
This allows us to focus the root project on building the Spring
Framework.
See gh-23282
2019-08-19 10:55:44 +02:00
Brian Clozel
6008c61680
Use JApiCmp Gradle plugin for API diffs
...
This commit removes JDiff from the Spring Framework build and instead,
adds a Gradle plugin that configure JApiCmp tasks on the framework
modules.
Fixes gh-22942
See gh-23282
2019-08-19 10:21:55 +02:00
Sebastien Deleuze
4d10249b70
Update to Coroutine 1.3.0-RC2
...
This updates brings full interoperability between Reactor and
Coroutines contexts.
Closes gh-22986
2019-08-19 10:03:01 +02:00
Sam Brannen
19ed439e4b
Avoid Hamcrest 2.x deprecation warnings
...
See gh-23467
2019-08-18 09:30:50 +02:00
Stephane Nicoll
dce8036757
Merge pull request #23480 from boojongmin
...
* pr/23480:
Fix typo
Closes gh-23480
2019-08-18 08:10:18 +02:00
부종민
18eed79d73
Fix typo
...
See gh-23480
2019-08-18 08:09:56 +02:00
Sam Brannen
063233afb5
Upgrade to Gradle 5.6
...
Closes gh-23479
2019-08-17 19:20:36 +02:00
Sam Brannen
ceaf6f46ac
Remove test dependencies from spring-build-src
...
The spring-build-src module does not contain any tests. Thus, we do not
need any test dependencies.
2019-08-17 18:56:11 +02:00
Sam Brannen
303fc3211c
Upgrade to Hamcrest 2.1
...
Closes gh-23467
2019-08-17 18:44:54 +02:00
Phillip Webb
f8a93ee4a7
Add SpringJUnit5 checkstyle rule
...
Add `SpringJUnit5` checkstyle rule to ensure that JUnit 4 annotations
aren't accidentally used in new tests.
The "must not be public" rule has been suppressed since there are
quite a few tests that extend base tests from other packages.
2019-08-17 08:31:23 -07:00
Phillip Webb
0db2f8fbcf
Upgrade to spring-javaformat-checkstyle v0.0.15
2019-08-17 07:27:22 -07:00
Andrey Kolchanov
6937d95e69
Remove unnecessary semicolon in AnnotatedElementUtils
...
Closes gh-23477
2019-08-17 15:07:39 +02:00
Sam Brannen
31cde12540
Fix off-by-one error in AbstractWebSocketIntegrationTests.arguments()
...
Prior to this commit, the "reactive matrix" contained a duplicate
argument set per parameterized client.
2019-08-17 14:47:25 +02:00
Sam Brannen
288461a541
Introduce @EnabledForTestGroups in Spring's test suite
...
Closes gh-23476
2019-08-17 14:47:24 +02:00
Sam Brannen
bbe33832cf
Clean up warnings in Javadoc
2019-08-17 13:21:28 +02:00
Sam Brannen
504d2a41f1
Polish ScheduledAndTransactionalAnnotationIntegrationTests
2019-08-17 13:12:17 +02:00
Sam Brannen
163b97f1ff
Polish MockMvcWebClientBuilderTests
...
Inspired by the fact that example.com is currently not reachable from
my network.
2019-08-17 12:36:45 +02:00
Sam Brannen
3877087f5a
Migrate test suite from JUnit 4 to JUnit Jupiter
...
Closes gh-23451
2019-08-17 12:07:17 +02:00
Sam Brannen
5c1f93d9a6
Migrate spring-test test suite from JUnit 4 to JUnit Jupiter
...
This commit migrates the spring-test test suite from JUnit 4 to JUnit
Jupiter where applicable.
Tests specific to our JUnit 4 and TestNG support remain written using
those frameworks. In addition, some tests are still written in JUnit 4
if they extend a test class that should not be migrated to JUnit
Jupiter.
See gh-23451
2019-08-17 11:37:33 +02:00
Sam Brannen
979508a7f3
Remove JUnit 4 dependency from all modules except spring-test
...
This commit removes the JUnit 4 dependency from all modules except
spring-test which provides explicit JUnit 4 support.
This commit also includes the following.
- migration from JUnit 4 assertions to JUnit Jupiter assertions in all
Kotlin tests
- migration from JUnit 4 assumptions in Spring's TestGroup support to
JUnit Jupiter assumptions, based on org.opentest4j.TestAbortedException
- introduction of a new TestGroups utility class than can be used from
existing JUnit 4 tests in the spring-test module in order to perform
assumptions using JUnit 4's Assume class
See gh-23451
2019-08-17 11:37:21 +02:00
Sam Brannen
3f3e41923f
Migrate rest of test suite from JUnit 4 to JUnit Jupiter
...
This commit migrates the rest of Spring's test suite to JUnit Jupiter,
except spring-test which will be migrated in a separate commit.
See gh-23451
2019-08-17 11:36:58 +02:00
Sam Brannen
3df85c783f
Migrate parameterized tests in spring-core
...
This commit migrates parameterized tests in spring-core using the
"composed @ParameterizedTest" approach. This approach is reused in
follow-up commits for the migration of the remaining modules.
For a concrete example, see AbstractDataBufferAllocatingTests and its
subclasses (e.g., DataBufferTests).
Specifically, AbstractDataBufferAllocatingTests declares a custom
@ParameterizedDataBufferAllocatingTest annotation that is
meta-annotated with @ParameterizedTest and
@MethodSource("org.springframework.core.io.buffer.AbstractDataBufferAllocatingTests#dataBufferFactories()").
Individual methods in concrete subclasses are then annotated with
@ParameterizedDataBufferAllocatingTest instead of @ParameterizedTest or
@Test.
The approach makes the migration from JUnit 4 to JUnit Jupiter rather
straightforward; however, there is one major downside. The arguments
for a @ParameterizedTest test method can only be accessed by the test
method itself. It is not possible to access them in an @BeforeEach
method (see https://github.com/junit-team/junit5/issues/944 ).
Consequently, we are forced to declare the parameters in each such
method and delegate to a custom "setup" method. Although this is a bit
cumbersome, I feel it is currently the best way to achieve fine grained
parameterized tests within our test suite without implementing a custom
TestTemplateInvocationContextProvider for each specific use case.
Once https://github.com/junit-team/junit5/issues/878 is resolved, we
should consider migrating to parameterized test classes.
See gh-23451
2019-08-17 11:36:47 +02:00
Sam Brannen
32cc32f9a7
Migrate test suite from JUnit 4 to JUnit Jupiter
...
This first commit for this issue:
- allows JUnit Jupiter to be used for all tests
- adds a dependency on mockito-junit-jupiter
- migrates tests in spring-core to JUnit Jupiter, except parameterized
tests
The following script was developed in order to semi-automate the
migration process.
https://github.com/sbrannen/junit-converters/blob/master/junit4ToJUnitJupiter.zsh
See gh-23451
2019-08-17 11:36:25 +02:00
Brian Clozel
bb8fd1c6bd
Fix javax.jms Gradle configuration in spring-jms
...
See gh-23282
2019-08-16 16:30:45 +02:00
Brian Clozel
b4c0537fa5
Remove unused Gradle configuration
...
This commit removes unused parts of the Gradle build:
* Gradle wrapper customization which should not be needed in recent
versions of Gradle (or can be replaced with options in the
gradle.properties file)
* the branch strategy configuration
See gh-23282
2019-08-16 08:27:23 +02:00
Brian Clozel
2f61c89f09
Polish Gradle compile convention
...
See gh-23282
2019-08-16 08:25:52 +02:00
Brian Clozel
71ddb861bd
Move compile config to a Gradle convention
...
This commit moves the compile configuration from the Gradle DSL to a
convention. This configuration is not changing often, and we're using
that opportunity to make the Java source compatibility a project
property so as to easily recent JDKs this on the command line.
See gh-23282
2019-08-15 13:31:06 +02:00
Sebastien Deleuze
76645644b1
Polishing
...
See gh-21778
2019-08-14 10:06:04 +02:00
Sebastien Deleuze
db02d38c89
Restore annotated code samples
...
See gh-21778
2019-08-14 10:00:16 +02:00
Sebastien Deleuze
ec740559ed
Store refdoc preferred language
...
See gh-21778
2019-08-14 10:00:16 +02:00
Juergen Hoeller
9bd3a535cd
Avoid UndeclaredThrowableStrategy with 1.8 bytecode level (CGLIB 3.3)
...
ClassLoaderAwareUndeclaredThrowableStrategy fails with a VerifyError on recent JDKs after the CGLIB 3.3 upgrade. The alternative is to replace it with a plain ClassLoaderAwareGeneratorStrategy (extracted from CglibSubclassingInstantiationStrategy) and custom UndeclaredThrowableException handling in CglibMethodInvocation.
See gh-23453
2019-08-14 00:14:14 +02:00
Brian Clozel
561af5f8f9
Replace propdeps plugin with custom plugin
...
Prior to this commit, the Spring Framework build would be using the
propdeps Gradle plugin to introduce two new configurations to the build:
"optional" and "provided". This would also configure related conventions
for IDEs, adding those configurations to published POMs.
This commit removes the need for this plugin and creates instead a
custom plugin for an "optional" configuration. While the Eclipse IDE
support is still supported, there is no need for specific conventions
for IntelliJ IDEA anymore.
This new plugin does not introduce the "provided" scope, as
"compileOnly" and "testCompileOnly" are here for that.
Also as of this commit, optional/provided dependencies are not published
with the Spring Framework modules POMs annymore.
Generally, these dependencies do not provide actionable information to
the developers reading / tools consuming the published POMs.
Optional/Provided dependencies are **not**:
* dependencies you can add to enable some supported feature
* dependencies versions that you can use to figure out CVEs or bugs
* dependencies that might be missing in existing Spring applications
In the context of Spring Framework, optional dependencies are just
libraries are Spring is compiling against for various technical reasons.
With that in mind, we are not publishing that information anymore.
See gh-23282
2019-08-13 18:19:37 +02:00
Sebastien Deleuze
eff9cae314
Add global language switch capabilities to the refdoc
...
See gh-21778
2019-08-13 16:29:47 +02:00
Sebastien Deleuze
32a942fda9
Polishing
2019-08-13 16:29:47 +02:00
Sebastien Deleuze
a2b8ea5173
Remove the black border from code samples
...
See gh-21778
2019-08-13 16:29:47 +02:00
Brian Clozel
4e5c780b99
Move TestSourcesPlugin to a Java Gradle plugin
...
This commit moves the existing "test sources" Gradle plugin from Groovy
to Java and updates the "buildSrc" build file to prepare for additional
plugins in the Spring Framework build.
The plugin itself looks, for a given Spring Framework module, at all the
project dependencies for the following scopes: "compile", "testCompile",
"api", "implementation" and "optional" (to be supported by a different
plugin).
See gh-23282
2019-08-13 16:23:59 +02:00
Sam Brannen
e7e5cce735
Polish contribution
...
See gh-23457
2019-08-13 10:36:46 +02:00
Sauhard Sharma
91c0fbaadb
Use valid example in Javadoc for @EnableWebFlux
...
This commit modifies the class-level Javadoc for the @EnableWebFlux
annotation to reference an actual method in WebFluxConfigurer.
Closes gh-23457
2019-08-13 10:27:29 +02:00
Lars Grefer
c863b8994a
Improve language-switch CSS
...
Closes gh-23454
2019-08-13 09:42:08 +02:00
Sebastien Deleuze
b52a50a7e0
Use Kotlin extensions for ClassPathXmlApplicationContext refdoc
...
Closes gh-23456
2019-08-13 09:42:08 +02:00
Juergen Hoeller
4123910d3d
Upgrade to CGLIB 3.3
...
Closes gh-23453
2019-08-12 19:36:06 +02:00
Sebastien Deleuze
f3c7879831
Add missing css file
...
See gh-21778
2019-08-12 16:23:49 +02:00
Sebastien Deleuze
96658235c8
Add Kotlin code snippets to core refdoc
...
This commit introduces Kotlin code snippets, for now
in the core reference documentation. Other sections
will follow, as well as improvements like global
language switch.
See gh-21778
2019-08-12 15:45:18 +02:00
Sam Brannen
fcbca7d569
Remove obsolete references to JUnit 4's ArrayComparisonFailure
...
See gh-23451
2019-08-12 12:45:14 +02:00
Michał Rowicki
ee47bc3a25
Fix typo in data access reference documentation
...
Closes gh-23450
2019-08-12 11:21:54 +02:00
Sam Brannen
7538561a7a
Polish ApplicationContextAwareProcessor
...
Due to recent changes, the (bean instanceof Aware) check is now
superfluous.
2019-08-10 14:24:10 +02:00
Sam Brannen
6c0e550b86
Polish contribution
...
See gh-23445
2019-08-10 14:07:15 +02:00
zhuzhuman978
849bbf00b5
Simplify if statements and replace try-finally with try-with-resources
...
Closes gh-23445
2019-08-10 14:03:18 +02:00
Sam Brannen
fabdb07e53
Redeclare default methods in AbstractTestExecutionListener
...
This commit redeclares default methods in AbstractTestExecutionListener
in order to make them inlinable.
2019-08-09 16:39:35 +02:00
Sam Brannen
8b023b17c9
Polish contribution
...
See gh-23435
2019-08-09 15:04:07 +02:00
GungnirLaevatain
1dc2177a4a
Avoid unnecessary processing in ApplicationContextAwareProcessor
...
This commit avoids unnecessary processing in the implementation of
postProcessBeforeInitialization() in ApplicationContextAwareProcessor
by immediately returning the supplied bean if it does not meet the
requirements for further processing.
Closes gh-23435
2019-08-09 14:54:05 +02:00
Sam Brannen
1925526df5
Improve reference documentation for ContextClosedEvent
...
Closes gh-23436
2019-08-09 13:58:31 +02:00
Daniel Le
60ec736264
Fix */* in Javadoc
...
This commit changes {@code */*} to <code>*/*</code>
so that "*/*" is rendered correctly.
Closes gh-23439
2019-08-09 13:32:18 +02:00
Sam Brannen
0cdf992433
Fix grammar in Integration chapter regarding MDPs
2019-08-09 13:14:46 +02:00
Sam Brannen
e4fec9364c
Improve reference documentation for @Autowired's required attribute
...
Prior to this commit, the corresponding documentation was misleading.
Closes gh-23428
2019-08-09 11:37:46 +02:00
Sam Brannen
56c1e8ffd2
Polishing
2019-08-09 11:08:30 +02:00
Stephane Nicoll
977451064a
Merge branch '5.1.x'
2019-08-09 09:37:36 +02:00
Stephane Nicoll
122e2ca2ac
Merge pull request #23437 from wyhasany
...
* pr/23437:
Fix typo
Closes gh-23437
2019-08-09 09:37:00 +02:00
Michał Rowicki
806fcb3839
Fix typo
...
See gh-23437
2019-08-09 09:36:46 +02:00
Sam Brannen
a532afb15d
Use System.nanoTime() in StopWatch
...
Prior to this commit, StopWatch used System.currentTimeMillis() to
track and report running time in milliseconds.
This commit updates the internals of StopWatch to use System.nanoTime()
instead of System.currentTimeMillis(). Consequently, running time is
now tracked and reported in nanoseconds; however, users still have the
option to retrieve running time in milliseconds or seconds.
Closes gh-23235
2019-08-07 17:39:42 +02:00
Sam Brannen
50e5334378
Simplify assertions within MockMvc internals
2019-08-07 17:32:19 +02:00
Sam Brannen
d32cb7dac3
Avoid use of GenericTypeResolver.resolveParameterType() in tests
...
This commit avoids the use of the deprecated
GenericTypeResolver.resolveParameterType() method in tests in order to
avoid warnings in the Gradle build.
2019-08-07 14:23:15 +02:00
Sam Brannen
24f8d30935
Remove deprecated MergedAnnotations.SearchStrategy.EXHAUSTIVE constant
...
Closes gh-23391
2019-08-07 12:34:17 +02:00
Sam Brannen
a43ba052e9
Remove unnecessary loop in SerializableTypeWrapper
...
Since arbitrary levels of proxies do not occur, this commit replaces
the `while` loop in SerializableTypeWrapper.unwrap() with a simple
`if` statement.
Closes gh-23415
2019-08-07 12:24:48 +02:00
Sam Brannen
83956f8e8b
Overhaul StopWatchTests
2019-08-07 12:13:18 +02:00
Sam Brannen
03dd45fbd6
Use AssertJ in AnnotationAttributesTests
2019-08-06 18:18:16 +02:00
Sam Brannen
34767b14da
Merge branch '5.1.x'
2019-08-06 18:11:47 +02:00
Sam Brannen
30ebc3b8e2
Remove superfluous AnnotationAttributes#putIfAbsent implementation
...
Since Java 8, putIfAbsent() is a standard method in java.util.Map. We
therefore no longer need the custom implementation that overrides the
standard implementation in HashMap.
2019-08-06 18:10:13 +02:00
Sam Brannen
a092dc055e
Check for instanceof Throwable in AnnotationAttributes#assertNotException
...
Prior to this commit, AnnotationAttributes#assertNotException checked if
the attribute value was an instance of Exception. Although this was
typically sufficient, the scope was not always broad enough -- for
example, if AnnotationReadingVisitorUtils#convertClassValues stored a
Throwable in the map (such as a LinkageError).
This commit fixes this by checking for an instance of Throwable in
AnnotationAttributes#assertNotException.
Closes gh-23424
2019-08-06 18:06:00 +02:00
Sebastien Deleuze
23cd261b6b
Deprecate AnnotationConfigApplicationContext { } Kotlin extension
...
Closes gh-23420
2019-08-06 11:28:32 +02:00
Sam Brannen
4d6e359e25
Add missing @deprecated tags for ASM-based annotation search classes
2019-08-05 15:30:06 +02:00
Sam Brannen
82f301f42f
Polishing
2019-08-05 15:29:04 +02:00
Sam Brannen
e6ab6c9fe9
Add missing @deprecated tag for AnnotationMetadataReadingVisitor
2019-08-05 14:39:20 +02:00
Sam Brannen
c2f5dabeee
Polishing
2019-08-03 00:13:30 +02:00
Rossen Stoyanchev
63bf1bff23
Merge branch '5.1.x'
2019-08-02 16:33:02 +01:00
Rossen Stoyanchev
70be7117f3
Fix link to Spring AMQP and polish
...
Optimize section headings for dispaly in left hand navigation.
2019-08-02 16:32:01 +01:00
康智冬
5bb5b2b24d
Fix grammar in package-info.java
...
Closes gh-23401
2019-08-02 13:40:25 +02:00
Stephane Nicoll
d7a6ee5962
Merge branch '5.1.x'
2019-08-02 11:21:57 +02:00
Spring Buildmaster
f13a6d4f32
Next Development Version
2019-08-02 09:02:14 +00:00
Juergen Hoeller
53d067399d
Merge branch '5.1.x'
2019-08-02 01:46:26 +02:00
Juergen Hoeller
7c2e2d40af
Polishing
2019-08-02 01:39:02 +02:00
Juergen Hoeller
d8e624e97e
Consistent suppression of get/clearWarnings without target connection
...
See gh-23346
2019-08-02 01:19:16 +02:00
Sam Brannen
9be327985b
Polishing
2019-08-01 23:15:40 +02:00
Sam Brannen
ee2041388b
Fix typo in Javadoc for MergedAnnotations
2019-08-01 23:15:39 +02:00
Juergen Hoeller
7ac665b18e
Polishing
2019-08-01 22:42:33 +02:00
Rossen Stoyanchev
765d43b34f
Upgrade rsocket-core to 1.0.0-RC2
...
Closes gh-23359
2019-08-01 20:15:16 +01:00
Juergen Hoeller
9929d75260
Adapt to Spring Framework convention for static cache field names
...
See gh-23345
2019-08-01 18:55:17 +02:00
Sam Brannen
5e61e33c66
Introduce SpringTestContextFrameworkTestSuite as a convenience in IDE
2019-08-01 18:49:55 +02:00
Mark Paluch
1890e04df1
Introduce interface cache for EntityManager and Query types
...
We now reuse interfaces for EntityManager and Query classes that
are proxied through ExtendedEntityManagerCreator and SharedEntityManagerCreator.
These caches prevent excessive object allocations through
ClassUtils.getAllInterfacesForClass(…) and
ClassUtils.getAllInterfacesForClassAsSet(…).
2019-08-01 18:48:09 +02:00
Juergen Hoeller
96ea3a8924
Upgrade to Hibernate ORM 5.4.4
2019-08-01 16:23:21 +02:00
Juergen Hoeller
fd86f34057
Merge branch '5.1.x'
2019-08-01 15:27:06 +02:00
Juergen Hoeller
762ea3ea90
Document all remaining public methods on BeanDefinitionParserDelegate
...
Closes gh-23349
2019-08-01 15:26:11 +02:00
Juergen Hoeller
871bb57e02
TransactionAwareDataSourceProxy locally handles get/clearWarnings call
...
Closes gh-23346
2019-08-01 15:26:00 +02:00
Juergen Hoeller
aebc485eda
MethodParameter.equals properly checks overridden containing class
...
Closes gh-23352
2019-08-01 14:34:39 +02:00
Juergen Hoeller
49593f5399
Revise DependencyDescriptor etc to avoid MethodParameter deprecations
...
See gh-23385
2019-08-01 14:25:33 +02:00
Juergen Hoeller
b67dbe66ef
Revise use of ResolvableType in MethodParameter
...
Includes consistent use of getContainingClass()
2019-08-01 14:25:26 +02:00
Arjen Poutsma
8b1a2a70e1
Merge pull request #22606 from fred84/22391_conditional_view_caching
...
* 22391_conditional_view_caching:
Polish contribution
Add filter to AbstractCachingViewResolver
2019-08-01 13:54:00 +02:00
Arjen Poutsma
132fa702b7
Polish contribution
...
See gh-22606
2019-08-01 13:37:14 +02:00
Sergey Galkin
59aee923e4
Add filter to AbstractCachingViewResolver
...
This commit introduces a filter that specifies whether a View should be
cached by the AbstractCachingViewResolver or not.
Closes gh-22391
2019-08-01 13:37:14 +02:00
Juergen Hoeller
4612544505
Nullability refinements and related polishing
2019-08-01 13:04:46 +02:00
Stephane Nicoll
223074295d
Merge pull request #23394 from ijliym
...
* pr/23394:
Polish getTypeForFactoryBean comment
Closes gh-23394
2019-08-01 10:17:27 +02:00
liym@com
fde651a606
Polish getTypeForFactoryBean comment
...
See gh-23394
2019-08-01 10:17:11 +02:00
Phillip Webb
1e830f725c
Polish firstRunOf javadoc
2019-08-01 08:29:02 +01:00
Phillip Webb
62a3e41473
Deprecate mutable methods of MethodParameter
...
Deprecate all mutation methods in `MethodParameter` in favor of factory
methods that return a new instance. Existing code that previously relied
on mutation has been updated to use the replacement methods.
Closes gh-23385
2019-08-01 08:05:14 +01:00
Phillip Webb
89d150d398
Resolve factoryBeanClass if necessary
...
Update `AbstractAutowireCapableBeanFactory.getTypeForFactoryBean` to
use fallback to `determineTargetType` if the factory bean definition
does not have a resolved class.
This is required for the case where a `@Configuration` class is picked
up via component scanning and has a bean type that has not yet been
resolved.
Closes gh-23338
2019-08-01 07:48:12 +01:00
Juergen Hoeller
6eca9e7cc9
Drop logger field in HandlerMethodArgumentResolverComposite
2019-07-31 23:58:02 +02:00
Juergen Hoeller
dea9ad6cb2
Merge branch '5.1.x'
2019-07-31 23:53:32 +02:00
Juergen Hoeller
ea4f7d365f
Deprecate logger field in HandlerMethodArgumentResolverComposite
2019-07-31 23:48:21 +02:00
Juergen Hoeller
438b40f6d7
Consistent ordering of WebClient.Builder methods
2019-07-31 23:48:14 +02:00
Sam Brannen
de3c115614
Fix bug in TYPE_HIERARCHY_AND_ENCLOSING_CLASSES strategy
...
Prior to this commit, the new `TYPE_HIERARCHY_AND_ENCLOSING_CLASSES`
annotation search strategy failed to find annotations on enclosing
classes if the source class was a nested class that itself had no
annotations present.
This commit fixes this by adding special logic to AnnotationsScanner's
isWithoutHierarchy() method to properly support nested classes.
Closes gh-23378
2019-07-31 22:05:46 +02:00
Sam Brannen
b03dd47598
Remove duplicate assertion
2019-07-31 22:01:18 +02:00
Phillip Webb
17518ecbbe
Add TYPE_HIERARCHY_AND_ENCLOSING_CLASSES strategy
...
Add a `TYPE_HIERARCHY_AND_ENCLOSING_CLASSES` annotation search strategy
that can be used to search the full type hierarchy as well as any
enclosing classes.
Closes gh-23378
2019-07-31 14:40:40 +01:00
Phillip Webb
a6021cc968
Rename SearchStrategy.EXHAUSTIVE to TYPE_HIERARCHY
...
Rename `SearchStrategy.EXHAUSTIVE` from `MergedAnnotations` to
`SearchStrategy.TYPE_HIERARCHY`
See gh-23378
2019-07-31 13:52:53 +01:00
Juergen Hoeller
e6f86c5c75
Nullability refinements and related polishing
2019-07-31 13:45:48 +02:00
Phillip Webb
cca32a56a4
Use shared zero length array constants
...
Update code that's often called so that zero length array results use
a single shared static constant, rather than a new instance for each
call.
Closes gh-23340
2019-07-31 12:22:03 +02:00
Phillip Webb
71a5308c78
Support FactoryBean bean definition attributes
...
Update `getTypeForFactoryBean` detection so that a bean definition
attribute can be used to supply the result. This commit allows projects
such as Spring Data to provide the result that would be supplied by
`getObjectType` early so that we don't need to initialize the
`FactoryBean` unnecessarily.
Closes gh-23338
2019-07-31 12:22:03 +02:00
Phillip Webb
a0e462581f
Consider generics for predicting FactoryBean types
...
Update the `FactoryBean` type prediction logic (primarily in the
`DefaultListableBeanFactory`) so that generic type information is
considered when calling `getBeanNamesForType` on a non-frozen
configuration.
Calling `getBeanNamesForType` with `allowEagerInit` disabled will now
detect `FactoryBean` variants as long as generic type information is
available in either the class or the factory method return type.
Closes gh-23338
2019-07-31 12:22:03 +02:00
Phillip Webb
527876d9a0
Cache AbstractBeanFactory.isFactoryBean results
...
Add an additional cache to the `RootBeanDefinition` to save
recalculating the result of `isFactoryBean`.
Closes gh-23337
2019-07-31 12:22:03 +02:00
Phillip Webb
95edcb81b5
Retain merged bean definition caches when possible
...
Update the logic in `AbstractBeanFactory` so that caches from merged
bean definitions remain whenever possible.
Prior to this commit, all merged bean definitions would be completely
removed after bean post processing in case a processor changed the bean
type. It's fairly unlikely these days that the bean type will actually
change, so instead we now compare a subset of the old cached properties
against the newly created definition. Only if key properties have
changed do we now discard the older cached values.
Closes gh-23336
2019-07-31 12:22:03 +02:00
Phillip Webb
2ee1ce61c0
Add missing variants of getBeanNamesForType
...
Update `ListableBeanFactory` and `BeanFactoryUtils` to add the missing
`getBeanNamesForType` methods that accept a `ResolvableType` rather
than a `Class`.
This completes the work started in 778a01943b .
Closes gh-23335
2019-07-31 12:22:03 +02:00
Juergen Hoeller
30132b42c6
Consistent assertion messages in DefaultWebClient
2019-07-30 22:53:27 +02:00
Juergen Hoeller
3b235a098f
Merge branch '5.1.x'
2019-07-30 22:52:20 +02:00
Juergen Hoeller
59064f0780
Upgrade to Undertow 2.0.23 and Apache Johnzon 1.1.12
2019-07-30 22:27:09 +02:00
Juergen Hoeller
960079e5f5
Retain non-null HttpStatus return value in Client(Http)Response
...
See gh-23366
2019-07-30 22:26:46 +02:00
Arjen Poutsma
ac9a11a581
Merge branch '5.1.x'
2019-07-30 18:03:01 +02:00
Arjen Poutsma
29ef985411
Add support for non-standard status codes
...
Added support for status codes that do not occur in HttpStatus in
DefaultClientResponseBuilder and made ClientResponse::statusCode
ClientHttpResponse::getStatusCode @Nullable.
Closed gh-23366
2019-07-30 17:44:47 +02:00
Juergen Hoeller
27aaad5a89
Add isTooEarly() method to StatusResultMatchers
...
See gh-23384
2019-07-30 17:37:26 +02:00
Juergen Hoeller
4f3b89e907
Adapt MethodParameterTests to AssertJ usage on master
...
See gh-23352
2019-07-30 17:36:02 +02:00
Juergen Hoeller
8ef557df2f
Merge branch '5.1.x'
2019-07-30 17:34:29 +02:00
Rossen Stoyanchev
5e15bbfbf1
Change order of argument for createPayload
...
Expecting data first and metadata second aligns better with the single
arg variant that accepts data. This is also consistent with the
RSocket API in the create methods of ByteBufPayload and DefaultPayload.
2019-07-30 16:16:30 +01:00
Rossen Stoyanchev
a1a8781279
PayloadUtils improvements and tests
2019-07-30 16:16:30 +01:00
Juergen Hoeller
b2c56590dd
Upgrade to Netty 4.1.38 and Checkstyle 8.23
2019-07-30 16:59:23 +02:00
Juergen Hoeller
c4622dbebc
Polishing
2019-07-30 16:59:01 +02:00
Juergen Hoeller
9a36027ae1
MethodParameter.equals checks nesting level and containing class
...
Closes gh-23352
2019-07-30 16:58:45 +02:00
Juergen Hoeller
22e87ac143
Polishing
2019-07-30 16:05:18 +02:00
Juergen Hoeller
cc57506474
Add status code 425 ("Too Early") to HttpStatus enum
...
Closes gh-23384
2019-07-30 16:05:00 +02:00
Arjen Poutsma
571f6adb35
Merge branch '5.1.x'
2019-07-30 15:46:27 +02:00
Arjen Poutsma
6cb4b8bd43
Add onRawStatus to WebClient
...
- Add onRawStatus to WebClient.ResponseSpec, allowing users to deal with
raw status codes that are not in HttpStatus.
- No longer throw an exception status codes not in HttpStatus.
Closes gh-23367
2019-07-30 15:10:33 +02:00
Rossen Stoyanchev
9648b1c2c6
Merge branch '5.1.x'
2019-07-30 12:06:39 +01:00
Rossen Stoyanchev
7b697266be
PathPatternParser allows '-' in variables
...
The isJavaIdentifier check is not really required, but also seems
intuitive for variables to be Java identifier-like. This commit relaxes
the constraint a bit by also allowing "-".
Closes gh-23101
2019-07-30 12:04:47 +01:00
Rossen Stoyanchev
d972911d51
Merge branch '5.1.x'
2019-07-30 11:02:33 +01:00
Rossen Stoyanchev
1d92755cc7
Remove custom handling of byte[] in DefaultStompSession
...
Closes gh-23358
2019-07-30 10:52:51 +01:00
Stephane Nicoll
ee03a18e61
Merge branch '5.1.x'
2019-07-30 10:55:12 +02:00
Stephane Maldini
50a909908c
Remove unnecessary flushOnEach (since reactor-netty 0.9)
2019-07-30 10:54:51 +02:00
Stephane Nicoll
5c860afa55
Upgrade to Reactor Dysprosium-M3
2019-07-30 09:54:20 +02:00
Stephane Nicoll
c9340ecabc
Merge branch '5.1.x'
2019-07-30 09:52:19 +02:00
Stephane Nicoll
da54121ee0
Upgrade to Reactor Californium-SR10
2019-07-30 09:51:32 +02:00
Stephane Nicoll
535bb16c28
Merge pull request #23382 from izeye
...
* pr/23382:
Remove duplicate assertion in matchWithNullPath()
Closes gh-23382
2019-07-30 09:38:04 +02:00
Johnny Lim
bccc7a62f4
Remove duplicate assertion in matchWithNullPath()
...
See gh-23382
2019-07-30 09:37:50 +02:00
Rossen Stoyanchev
2c878e9331
Support for setupPayload in RSocketRequester
...
Closes gh-23368
2019-07-29 22:09:06 +01:00
Rossen Stoyanchev
55946bf319
Factor out MetadataEncoder from RSocketRequester
...
To be re-used also for creating metadata for the setup payload.
See: gh-23368
2019-07-29 22:09:06 +01:00
Rossen Stoyanchev
c76370d7d8
Polish
2019-07-29 22:09:02 +01:00
Rossen Stoyanchev
dc0c730ee8
DefaultMetadataExtractor refactoring
2019-07-29 22:08:26 +01:00
Rossen Stoyanchev
2aa3363ba2
ClientRSocketFactoryConfigurer refactoring
2019-07-29 22:08:07 +01:00
Sam Brannen
027fd78306
Further refine @TestPropertySource merged annotation calls
...
See gh-23320
2019-07-29 22:53:15 +02:00
Phillip Webb
c9479ff20f
Refine @TestPropertySource merged annotation calls
...
See gh-23320
2019-07-29 22:53:00 +02:00
Sam Brannen
1f8abef2ce
Upgrade to AssertJ 3.13.1
2019-07-29 14:22:40 +02:00
Sam Brannen
0ac1a3754e
Upgrade to AssertJ 3.13.0
2019-07-29 10:10:12 +02:00
Sam Brannen
c72bf10eb9
Polish MergedSqlConfig
2019-07-28 18:41:26 +02:00
Sam Brannen
f53cdb8bd2
Introduce common SimpleUrlHandlerMapping constructors
...
Prior to this commit, the SimpleUrlHandlerMapping classes in Spring MVC
and Spring Webflux only had default constructors. This lead to the fact
that users often had to explicitly invoke setUrlMap() and setOrder() on
the newly instantiated SimpleUrlHandlerMapping.
In order to simplify the programmatic setup of a SimpleUrlHandlerMapping
in common scenarios, this commit introduces the following constructors.
- SimpleUrlHandlerMapping()
- SimpleUrlHandlerMapping(Map<String, ?> urlMap)
- SimpleUrlHandlerMapping(Map<String, ?> urlMap, int order)
Closes gh-23362
2019-07-28 17:59:19 +02:00
Sam Brannen
0a822ddf2d
Fix typo in reference manual
2019-07-28 16:36:12 +02:00
Sam Brannen
bfbe8f8780
Polish MergedTestPropertySources
2019-07-28 15:40:39 +02:00
Sam Brannen
a37eaf75c4
Verify meta @TestPropertySource overrides meta-meta declaration
...
This commit introduces tests which verify that properties configured via
@TestPropertySource used as a meta-annotation override those configured
via @TestPropertySource used as a meta-meta-annotation.
See gh-23320
2019-07-28 12:35:57 +02:00
Sam Brannen
1954861844
Update @TestPropertySource Javadoc regarding "local" semantics
...
See gh-23320
2019-07-28 12:12:28 +02:00
Sam Brannen
690694df33
Merge branch 'sbrannen/issues/gh-23320-repeatable-TestPropertySource'
2019-07-27 23:08:50 +02:00
Sam Brannen
1075bae280
Document repeatable @TestPropertySource support in reference manual
...
See gh-23320
2019-07-27 23:02:43 +02:00
Sam Brannen
136af0b164
Overhaul repeatable @TestPropertySource support
...
Prior to this commit, if multiple, directly present
`@TestPropertySource` annotations declared the same property, the
precedence ordering was top-down instead of bottom-up, in contrast to
the semantics for class hierarchies. In other words, a subsequent
`@TestPropertySource` annotation could not override a property in a
previous `@TestPropertySource` annotation.
This commit overhauls the internals of `TestPropertySourceUtils` in
order to provide proper support for property overrides within local,
directly present `@TestPropertySource` declarations.
Specifically, the `locations` and `properties` attributes from all
`@TestPropertySource` declarations that are directly present or
meta-present on a given class are now merged into a single instance of
`TestPropertySourceAttributes` internally, with assertions in place to
ensure that such "same level" `@TestPropertySource` declarations do not
configure different values for the `inheritLocations` and
`inheritProperties` flags. Effectively, all "same level"
`@TestPropertySource` declarations are treated internally as if there
were only one such annotation declared by the user.
See gh-23320
2019-07-27 22:30:34 +02:00
Anatoliy Korovin
2e476ca14f
Support @TestPropertySource as a repeatable annotation
...
Prior to this commit, @TestPropertySource could not be declared as a
repeatable annotation. In addition, a local declaration of
@TestPropertySource would silently override a meta-present
@TestPropertySource.
This commit addresses this issue by introducing @TestPropertySources as
a container for @TestPropertySource. This commit also updates the
search and algorithms within TestPropertySourceUtils.
Closes gh-23320
2019-07-27 22:27:30 +02:00
Rossen Stoyanchev
8574f977a2
Mutate RSocketStrategies in RSocketMessageHandler
...
Use rsocketStrategies field with mutate() to ensure consistency
with internal state.
Remove transparent initialization of decoders in MetadataExtractor
and expect them to be set to avoid unintended side effects.
2019-07-26 16:12:02 +01:00
Rossen Stoyanchev
fab0a5d504
MetadataExtractor refactoring
...
Remove RSocketStrategies argument from the contract to avoid having to
pass them every time especially by application components, like an
implementation of a Spring Security matcher.
Decouple DefaultMetadataExtractor from RSocketStrategies in favor of
a decoders property and an internal DataBufferFactory, which does not
need to be the shared one as we're only wrapping ByteBufs.
2019-07-26 16:12:02 +01:00
Johnny Lim
7c45381600
Add since tag for ClientResponse.Builder.request()
...
Closes gh-23364
2019-07-26 11:07:48 +02:00
Rossen Stoyanchev
1676b981e2
Upgrade to Reactor Dysprosium snapshots
...
Run with snapshots in preparation for next week's releases.
2019-07-25 16:40:02 +01:00
Sam Brannen
9655fc5007
Introduce ServerHttpRequest.Builder.header() variant for setting headers
...
Prior to this commit, the `header(String, String)` method in the
ServerHttpRequest.Builder API actually added a header value instead of
setting or overriding a header value. Since this conflicted with the
stated behavior in the Javadoc as well as the original intention of the
method, we have decided to introduce an overloaded variant
`header(String, String...)` which accepts a var-args list of header
values to set or override.
In addition, this commit deprecates the existing `header(String, String)`
method for removal in Spring Framework 5.2.
In order not to be a breaking change for custom implementations of the
builder API, this commit implements the new `header(String, String...)`
method as an interface `default` method, with the intent to remove the
default implementation in Spring Framework 5.2
closes gh-23333
2019-07-25 13:45:39 +02:00
Sam Brannen
db3990d031
Merge branch '5.1.x'
2019-07-25 13:44:31 +02:00
Sam Brannen
5034d1e7b3
Introduce ServerHttpRequest.Builder.header() variant for setting headers
...
Prior to this commit, the `header(String, String)` method in the
ServerHttpRequest.Builder API actually added a header value instead of
setting or overriding a header value. Since this conflicted with the
stated behavior in the Javadoc as well as the original intention of the
method, we have decided to introduce an overloaded variant
`header(String, String...)` which accepts a var-args list of header
values to set or override.
In addition, this commit deprecates the existing `header(String, String)`
method for removal in Spring Framework 5.2.
In order not to be a breaking change for custom implementations of the
builder API, this commit implements the new `header(String, String...)`
method as an interface `default` method, with the intent to remove the
default implementation in Spring Framework 5.2
closes gh-23333
2019-07-25 13:02:09 +02:00
Stephane Nicoll
f95372d757
Merge branch '5.1.x'
2019-07-25 08:39:31 +02:00
Stephane Nicoll
0f9c7934bb
Merge pull request #23353 from izeye
...
* pr/23353:
Add Javadoc since for Jaxb2XmlDecoder(MimeType...)
Closes gh-23353
2019-07-25 08:39:13 +02:00
Johnny Lim
946fc39d42
Add Javadoc since for Jaxb2XmlDecoder(MimeType...)
...
See gh-23353
2019-07-25 08:38:46 +02:00
Rossen Stoyanchev
be4facef1b
Relax check on default data MimeType
...
If there is more than one non-basic codec (e.g. CBOR and JSON)
RSocketRequester.Builder takes the mime type of the first one rather
than giving up. It is a valid scenario (JSON for server responding to
browser, and CBOR for client talking to server) and it is the default
situation in Boot, and after all the point here is to pick some default
as best as we can with the worst possible outcome being a server
refusing the connection if it doesn't support the mime type. Beyond
that applications can set the dataMimeType on the builder explicitly.
To match that change this commit also ensures RSocketMessageHandler
rejects proactively data mime types it does not support at the point
of accepting a connection.
2019-07-24 18:44:04 +01:00
Rossen Stoyanchev
88016d47d0
Fix issues in RSocketMessageHandler initialization
...
This commit ensures getRSocketStrategies() now reflects the state of
corresponding RSocketMessageHandler properties even if those change
after a call to setRSocketStrategies.
RSocketMessageHandler has default Encoder/Decoder initializations
consistent with the recent changes to RSocketStrategies.
2019-07-24 17:39:31 +01:00
Rossen Stoyanchev
2bb510588d
Merge branch 'rs'
2019-07-24 11:18:15 +01:00
Rossen Stoyanchev
e19e36ae4c
Simplify RSocket client responder config
...
Now that responder RSocketStrategies also exposes responder strategies,
AnnotationClientResponderConfigurer is reduced and no longer needs to
be public. This commit folds it into RSocketMessageHandler as a nested
class and exposes it as a ClientRSocketFactoryConfigurer through a
static method that accepts the handlers to use.
Effectively a shortcut for creating RSocketMessageHandler, giving it
RSocketStrategies, calling afterPropertiesSet, and then the instance
createResponder.
See gh-23314
2019-07-24 11:17:56 +01:00
Rossen Stoyanchev
c456950bc3
Add create shortcut to RSocketStrategies
...
Now that RSocketStrategies has default settings it makes sense to have
a create() shortcut vs builder().build().
This commit also updates tests to take advantage of improvements in this
and the previous two commits.
See gh-23314
2019-07-24 11:16:27 +01:00
Rossen Stoyanchev
91b040d0bf
Add responder strategies to RSocketStrategies
...
RouteMatcher and MetadataExtractor can now be configured on and
accessed through RSocketStrategies. This simplifies configuration for
client and server responders.
See gh-23314
2019-07-24 11:16:27 +01:00
Rossen Stoyanchev
a780cad12e
Updates to RSocket[Strategies|Requester] defaults
...
1. RSocketStrategies hooks in the basic codecs from spring-core by
default. Now that we have support for composite metadata, it makes
sense to have multiple codecs available.
2. RSocketStrategies is pre-configured with NettyDataBufferFactory.
3. DefaultRSocketRequesterBuilder configures RSocket with a frame
decoder that matches the DataBufferFactory choice, i.e. ensuring
consistency of zero copy vs default (copy) choice.
4. DefaultRSocketRequesterBuilder now tries to find a single non-basic
decoder to select a default data MimeType (e.g. CBOR), or otherwise
fall back on the first default decoder (e.g. String).
See gh-23314
2019-07-24 11:16:27 +01:00
Sam Brannen
c3c152f806
Add multi-prefix comment support for @SqlConfig
...
gh-23289 introduced support for multiple single-line comment prefixes
for ScriptUtils, ResourceDatabasePopulator, and EmbeddedDatabaseBuilder.
This commit adds the same support for @SqlConfig in the TestContext
Framework. Specifically, @SqlConfig has a new `commentPrefixes`
attribute for setting multiple single-line comment prefixes.
Closes gh-23331
2019-07-24 12:01:14 +02:00
Sam Brannen
a3c7ae2c58
Polish contribution
...
See gh-23300
2019-07-24 10:13:29 +02:00
stsypanov
1d6e44ab04
Use StringJoiner where possible to simplify String joining
...
Closes gh-23300
2019-07-24 10:05:38 +02:00
Sam Brannen
5190eaf503
Merge branch '5.1.x'
2019-07-22 18:37:02 +02:00
Ryan Burke
78802d4277
Fix typo in webflux.adoc
2019-07-22 18:35:53 +02:00
Sam Brannen
d633cb3ad5
Polish @Sql tests
2019-07-22 18:28:52 +02:00
Sam Brannen
d1570fd05b
Fix copy-n-paste error in WebTestClient Javadoc
2019-07-22 18:16:46 +02:00
Rossen Stoyanchev
acb3d1cf88
Fix typo in test from previous commit
...
See gh-23310
2019-07-22 14:59:52 +01:00
Arjen Poutsma
7b73418418
Add rawStatusCode() to ServerResponse in both WebFlux and Servlet
...
Closes gh-22872
2019-07-22 15:34:42 +02:00
Rossen Stoyanchev
56c2987273
RSocketRequester support for route vars
...
Closes gh-23310
2019-07-22 14:02:22 +01:00
Rossen Stoyanchev
358a6d6f10
Improve separator support in PathContainer
...
To make the switching of separators complete, it is also important to
know whether the decoding of path segment values and the parsing of
path param should be done as those are applied transparently.
This commit replaces the recently added separator argument to
PathContainer.parsePath with an Options type with two predefined
constants. One for HTTP URLs with automatic decoding and parsing of
path params, and another for "." separated message routes without
decoding except for encoded sequences of the separator itself.
See gh-23310
2019-07-22 11:28:38 +01:00
Sam Brannen
fbe697061c
Remove duplicate junit-bom configuration from spring-test.gradle
...
The junit-bom is already configured in build.gradle via "allprojects".
2019-07-21 20:40:53 +02:00
Sam Brannen
0f773515e4
Remove unnecessary test results directory configuration
...
Commit eec183ef28 configured the
Artifactory Gradle task in the Default Job of the Bamboo build plan for
the Spring Framework (SPR-PUB) to use the following Gradle-friendly test
results directory pattern: `**/build/test-results/**/*.xml`.
That change made the existing custom configuration of the test results
directory in the common Gradle `test` task obsolete.
2019-07-21 20:29:40 +02:00
Sam Brannen
8ccf4a9072
Set testGroups system property for spring-test Gradle test tasks
2019-07-21 20:21:58 +02:00
Sam Brannen
69214429df
Ensure aggregateTestReports task is UP-TO-DATE
...
Prior to this commit, the standard Gradle `test` task was configured to
execute all JUnit tests and had a dependency on the `testNG` task. In
addition, the `aggregateTestReports` task depended on the results of
the `test` and `testNG` tasks as input. Consequently, a subsequent
execution of the `aggregateTestReports` task would not be considered
UP-TO-DATE since the JUnit and TestNG results were both written to the
same "test" reports folder.
This commit introduces a new `junit` test task that allows JUnit and
TestNG test output to be completely independent. The standard `test`
task now depends on `junit` and `testNG` but does not execute any tests
itself, and the `aggregateTestReports` task now depends on the
individual `junit` and `testNG` results instead of on the mixed `test`
results.
See also: eec183ef28
2019-07-21 17:21:24 +02:00
Sam Brannen
9cb15ba602
Merge class-level and method-level @Sql declarations
...
Prior to these commits method-level @Sql declarations always overrode
class-level @Sql declarations, which required developers to redeclare
class-level @Sql declarations on test methods (e.g., via
copy-and-paste) in order to combine them with method-level @Sql
declarations.
These commits provide developers the ability to optionally merge
class-level and method-level @Sql declarations via a new @SqlMergeMode
annotation that can be applied at the class level or method level, with
method-level declarations of @SqlMergeMode overriding class-level
declarations. For example, @SqlMergeMode(MERGE) switches from the
default OVERRIDE behavior to merging behavior, with class-level SQL
scripts and statements executed before method-level SQL scripts and
statements.
Closes gh-1835
2019-07-21 16:20:29 +02:00
Sam Brannen
ccdf04e925
Document @SqlMergeMode support in reference manual
...
See gh-1835
2019-07-21 15:37:51 +02:00
Sam Brannen
89571ea236
Introduce @SqlMergeMode for configuring @Sql annotation merging
...
Closes gh-1835
2019-07-21 14:34:35 +02:00
Sam Brannen
ab8876219f
Polish contribution
...
See gh-1835
2019-07-21 13:26:55 +02:00
asympro
d77b715d38
Merge class-level and method-level @Sql declarations
...
See gh-1835
2019-07-21 13:26:48 +02:00
Sam Brannen
b0939a8af0
Suppress deprecation warnings in Gradle build
2019-07-21 13:12:02 +02:00
Sebastien Deleuze
c006a83584
Upgrade to Coroutines 1.3.0-RC
...
This commit upgrades Coroutines support to kotlinx.coroutines
1.3.0-RC, leverages the new Coroutines BOM and refine Coroutines
detection to avoid false positives.
Only Coroutines to Mono context interoperability is supported
for now.
CLoses gh-23326
2019-07-21 11:27:43 +02:00
Juergen Hoeller
45136aabd4
Upgrade to Protobuf 3.9 (plus consistent XMLUnit declarations)
2019-07-20 19:06:54 +02:00
Juergen Hoeller
cdeb1fef5f
Merge branch '5.1.x'
2019-07-20 18:23:00 +02:00
Juergen Hoeller
92890232df
Upgrade to OpenPDF 1.2.21, Rome 1.12.1, XStream 1.4.11.1
...
Includes updated javadoc links for 5.1.x branch.
2019-07-20 18:20:03 +02:00
Juergen Hoeller
b1e8ed182e
Polishing
2019-07-20 17:53:54 +02:00
Sam Brannen
33979b2de9
Upgrade to JUnit Jupiter 5.5.1
...
See gh-23076
2019-07-20 17:07:14 +02:00
Juergen Hoeller
8ea3aa512f
Merge branch '5.1.x'
2019-07-20 16:35:05 +02:00
Juergen Hoeller
0d37209b78
Document default message handling in MessageSource.getMessage variants
2019-07-20 16:23:31 +02:00
Juergen Hoeller
4a09b323b6
Apply getInterfaceMethodIfPossible without SecurityManager as well
...
Closes gh-23323
2019-07-20 16:11:17 +02:00
Juergen Hoeller
209c8505e6
Align forRawClassAssignableFromTypeVariable with 5.1 assertion style
...
See gh-23321
2019-07-20 16:10:49 +02:00
Juergen Hoeller
69d3e89814
Polishing
2019-07-20 15:05:49 +02:00
Juergen Hoeller
daf29118a6
Resolve ApplicationListener against BeanDefinition.getResolvableType()
...
This covers ApplicationListener generics in factory method return types in particular but also allows for programmatic setTargetType hints.
Closes gh-23178
2019-07-20 15:05:38 +02:00
Juergen Hoeller
8aa0b07768
Consistent early eviction tests in regular and transactional scenarios
...
See gh-23192
2019-07-20 15:05:07 +02:00
Phillip Webb
be65bef91b
Merge branch '5.1.x'
2019-07-20 13:23:37 +01:00
Phillip Webb
e5bef10d85
Fix ResolvableType raw class isAssignable checks
...
Fix `isAssignable` for `ResolvableType.forRawClass` so that it can be
used with types backed by a `TypeVarible`. Prior to this commit the
rawClass value was used, which wouldn't always work.
Closes gh-23321
2019-07-20 13:23:21 +01:00
Sam Brannen
9110a56e11
Merge branch '5.1.x'
2019-07-20 13:33:43 +02:00
zheng.ren01@mljr.com
f92b60c08f
Only invoke getInterfaceMethodIfPossible() when security manager is used
...
Prior to this commit, AbstractAutowireCapableBeanFactory's
invokeCustomInitMethod() method invoked
ClassUtils.getInterfaceMethodIfPossible() even if the security manager
was not being used.
This commit ensures that getInterfaceMethodIfPossible() is only invoked
if the security manager is used.
Closes gh-23323
2019-07-20 13:30:57 +02:00
Arjen Poutsma
090bfa63a1
Add DataBuffer::toString(Charset)
...
Closes gh-23317
2019-07-19 12:45:24 +02:00
Arjen Poutsma
c8704ce473
Introduce DataBufferWrapper
...
This commit introduces the DataBufferWrapper, a wrapper for DataBuffers,
and uses it in applicable use cases.
2019-07-19 12:45:24 +02:00
Rossen Stoyanchev
24e96b6c79
Merge branch '5.1.x'
2019-07-19 10:52:30 +01:00
Rossen Stoyanchev
a244675630
Merge pull request #23305 ' from AndreasKl/fowarded-prefix-causes-invalid-path into 5.1.x
2019-07-19 10:44:42 +01:00
Rossen Stoyanchev
153ac82380
Polish
2019-07-19 10:44:23 +01:00
Andreas Kluth
4973e110ee
An empty X-Forwarded-Prefix with a path containing escape sequences leads to exceptions.
2019-07-19 10:44:23 +01:00
Rossen Stoyanchev
2b94205ba9
Update docs on multipart with RestTemplate
...
Replace docs on using MultipartBodyBuilder for the RestTemplate with
examples that show MultiValueMap. Originally the idea was to make
MultipartBodyBuilder accessible to the RestTemplate too, but with
support for async parts that's no longer a good fit.
Closes gh-23295
2019-07-19 10:43:50 +01:00
Sebastien Deleuze
095fd5bcb3
Use Kotlin BOM
...
Close gh-23316
2019-07-19 10:43:54 +02:00
Sam Brannen
8db73c80e2
Polish MockRestServiceServer internals regarding "effectively final"
2019-07-18 15:45:44 +02:00
Sam Brannen
42f033e439
Polish MockMvc internals regarding "effectively final"
2019-07-18 15:45:44 +02:00
Arjen Poutsma
8b7ed5f45e
Added since tag
2019-07-18 15:37:33 +02:00
Arjen Poutsma
d8838152b3
Copy ClientResponseEntity::toEntity* methods to ResponseSpec
...
This commit copies the toEntity and toEntityList methods from
ClientResponse to ResponseSpec, so that it is possible to retrieve
a ResponseEntity when using retrieve().
Closes gh-22368
2019-07-18 12:28:22 +02:00
Sam Brannen
38f6d270f8
Delete dead code in tests
2019-07-18 12:20:26 +02:00
Sam Brannen
b774147db4
Polish Javadoc for @Autowired
...
See gh-23263
2019-07-18 12:07:39 +02:00
Sam Brannen
817f689584
Improve Javadoc for AutowiredAnnotationBeanPostProcessor
...
See gh-23263
2019-07-18 11:55:18 +02:00
Rossen Stoyanchev
d2a7d9fa88
Introduce RSocketClientFactoryConfigurer
...
The new interface supersedes ClientResponderFactory and is more general,
for any RSocketFactory customization.
DefaultClientResponderFactory implements the new interface and is
renamed to AnnotationClientResponderConfigurer.
See gh-23170
2019-07-18 10:21:51 +01:00
Rossen Stoyanchev
1e9ccdd8b8
Pass RSocketStrategies to MetadataExtractor
...
Simplify the creation of MetadataExtractor by not requiring
RSocketStrategies up front. The strategies are already configured in higher
level places like RSocketMessageHandler that invoke the MetadataExtractor.
The strategies are now passed in as an argument to the extract method.
2019-07-18 10:21:51 +01:00
Rossen Stoyanchev
d33e4878a0
Move MetadataExtractor to the rsocket package
...
The move up the hierarchy reflects the fact that MetadataExtractor
is more generally useful and not tied to annotations.
2019-07-18 10:18:28 +01:00
Juergen Hoeller
aa9f840938
Merge branch '5.1.x'
2019-07-17 23:35:48 +02:00
Juergen Hoeller
46e5b6f7af
Upgrade to Tomcat 9.0.22, Checkstyle 8.22, Mockito 2.28.2
2019-07-17 23:26:07 +02:00
Juergen Hoeller
f5daa657f4
Polishing
2019-07-17 23:25:50 +02:00
Juergen Hoeller
9ffdf05d77
Explicit javadoc note on publishEvent hand-off semantics
...
See gh-21025
2019-07-17 23:25:21 +02:00
Juergen Hoeller
18bfa6b003
Consider Hibernate Query.list() as query-terminating method
...
Closes gh-23248
2019-07-17 23:24:52 +02:00
Juergen Hoeller
ffc1f242ca
Introduce evictIfPresent/invalidate operations on Cache abstraction
...
@CacheEvict.beforeInvocation suggests immediate execution even in case of transactional caches. The cache interceptor delegates to the new evictIfPresent/invalidate operations now which imply immediate execution semantics (and also provide an indication for whether any corresponding entries where present when programmatically called).
Closes gh-23192
2019-07-17 22:37:55 +02:00
Juergen Hoeller
2c33c11d4c
Introduce TransactionOperations.execute(Runnable) convenience method
...
Closes gh-23250
2019-07-17 22:35:26 +02:00
Juergen Hoeller
7f33344784
Tracking ASM master
...
See gh-23156
2019-07-17 22:34:39 +02:00
Juergen Hoeller
94e3210ae7
Fix nullability warnings and javadoc-triggered package cycles
2019-07-17 22:34:07 +02:00
Sam Brannen
56eadff34f
Merge branch '5.1.x'
2019-07-17 18:58:08 +02:00
Sam Brannen
74ddf1bee5
Improve documentation for @Autowired constructors
...
Prior to this commit, there was some ambiguity surrounding semantics
for @Autowired constructors and `required = true`, especially for
multiple @Autowired constructors.
This commit improves the documentation in the Javadoc for @Autowired as
well as in the reference manual.
Closes gh-23263
2019-07-17 18:55:58 +02:00
Sam Brannen
e92cbe1938
Improve failure messages for redirect/forward in MockMvc
2019-07-17 16:53:47 +02:00
Sam Brannen
7779aa3487
Polish contribution
...
See gh-23297
2019-07-17 16:53:47 +02:00
Scheidter,Ryan
84200f3141
Treat null path as non-matching pattern in AntPathMatcher
...
Prior to this commit, a null path supplied to the isPattern(), match(),
and matchStart() methods in AntPathMatcher resulted in a
NullPointerException.
This commit addresses this by treating a `null` path as a non-matching
pattern.
Closes gh-23297
2019-07-17 16:53:47 +02:00
Sebastien Deleuze
639a254e0d
Polishing
2019-07-17 16:44:34 +02:00
Sebastien Deleuze
4e2b51bedb
Improve Kotlin integration testing documentation
...
Closes gh-22875
2019-07-17 16:37:27 +02:00
Brian Clozel
e7ecb83449
Add client responder configuration
...
Prior to this commit, the `RSocketRequester.Builder` would allow to
configure directly annotated handlers for processing server requests.
This lead to a package tangle where the `o.s.messaging.rsocket` would
use classes from `o.s.messaging.rsocket.annotation.support` package.
This commit introduces the `ClientResponderFactory` interface for
configuring a responder on the client RSocket factory. Its goal is
to be compatible with future changes with a functional variant for
RSocket handlers.
Closes gh-23170
2019-07-17 12:09:09 +02:00
Sebastien Deleuze
d6e3394b81
Polishing
...
See gh-23219
2019-07-16 19:23:21 +02:00
Sebastien Deleuze
b4a0e71ccc
Polishing
...
See gh-23219
2019-07-16 18:46:36 +02:00
Arjen Poutsma
7fe0116599
Added since tag
2019-07-16 16:18:31 +02:00
Arjen Poutsma
a9b3d95a14
Interpret empty mono from status handler as normal response
...
Prior to this commit, returning an empty mono from an exception handler
registered through ResponseSpec::onStatus would result in memory leaks
(since the response was not read) and in an empty response from bodyTo*
methods of the webclient.
As of this commit, that same empty mono is now interpreted to return
the body (and not an exception), offering a way to override the default
status handlers and return a normal response for 4xx and 5xx status
codes.
2019-07-16 15:53:21 +02:00
Sam Brannen
b2b79ae1e6
Polish contribution
...
See gh-23219
2019-07-16 14:57:32 +02:00
Sebastien Deleuze
adadffe0e1
Improve charset handling in MockHttpServletResponse
...
This commit adds a getContentAsString(Charset fallbackCharset) method
to MockHttpServletResponse in order to make it easier to get the content
in a specific charset like UTF-8 when the response charset has not been
explicitly set (by default ISO-8859-1 is used).
JsonPathResultMatchers leverages this new feature to support UTF-8
content out of the box.
Closes gh-23219
2019-07-16 11:44:16 +02:00
Sam Brannen
60a7092977
Fix dataMimeType and metadataMimeType mixup in precondition check
...
Closes gh-23292
2019-07-16 11:13:21 +02:00
Sam Brannen
c788be30fe
Polish contribution
...
See gh-23289
2019-07-15 19:08:20 +02:00
Phillip Webb
b5e4e02337
Polish ScriptUtilsUnitTests
2019-07-15 14:43:03 +02:00
Phillip Webb
17914fc44b
Add multi-prefix comment support for SQL scripts
...
Update `ResourceDatabasePopulator` and `ScriptUtils` so that more than
one comment prefix can be used when processing SQL scripts. This
feature is particularly useful when dealing with scripts provided by
Quartz since they often use a mix `--` and `#`.
Closes gh-23289
2019-07-15 14:43:03 +02:00
Rossen Stoyanchev
1ff29b0f6b
Merge branch '5.1.x'
2019-07-15 11:34:35 +01:00
Rossen Stoyanchev
99c4a9eeba
Filtering for nested ERROR dispatch
...
OncePerRequestFilter now has a doFilter method that allows separate
processing of nested ERROR dispatches. This is useful for filters
that wrap the request and response.
Closes gh-23196
2019-07-15 11:23:12 +01:00
Arjen Poutsma
dae4509152
Make sure built ClientResponses have HttpRequest
2019-07-15 09:40:02 +02:00
Sam Brannen
0aa5533dea
Execute test suite in Gradle using JUnit Platform
...
Closes gh-23286
2019-07-13 19:13:33 +02:00
Sam Brannen
480b1e0a0d
Run JUnit 4 tests in spring-test on the JUnit Platform
...
This commit simplifies the build for spring-test by running JUnit 4
tests and JUnit Jupiter tests together in the standard Gradle `test`
task.
As an added bonus, the ignored tests in SpringJUnit4ConcurrencyTests
and ClassLevelDisabledSpringRuleTests are now reported in the test
results.
See gh-23286
2019-07-13 18:24:37 +02:00
Sebastien Deleuze
a3222476ad
Use proxyBeanMethods in ProxyTransactionManagementConfiguration
...
Closes gh-23166
2019-07-13 12:19:33 +02:00
Rossen Stoyanchev
2eba010c1b
Merge branch '5.1.x'
2019-07-13 11:00:57 +01:00
Rossen Stoyanchev
235858e4e5
Exposes supported mime types in Jaxb2Decoder
...
Closes gh-23278
2019-07-13 11:00:43 +01:00
Rossen Stoyanchev
c32299f734
Use HttpMessageNotWritableException instead of ISE
...
As a follow-up to the recent commit #37f9ce, this change replaces the
raised IllegalStateException with HttpMessageNotWritableException.
See gh-23205
2019-07-13 10:56:12 +01:00
Rossen Stoyanchev
68c99dafcf
Rename {client|server}Acceptor to Responder
...
See gh-23170
2019-07-13 10:23:46 +01:00
Sam Brannen
3cf5db6317
Exclude ParallelExecutionSpringExtensionTests.TestCase from build
...
Prior to this commit, ParallelExecutionSpringExtensionTests.TestCase
was accidentally included in the build which skewed the number of tests
in spring-test by 1000.
2019-07-12 18:21:45 +02:00
Stephane Nicoll
9a71a8d357
Fix checkstyle violation
...
Closes gh-23276
2019-07-12 15:57:16 +02:00
Stephane Nicoll
4f8b347aa0
Do not trigger transactional event listener if no transaction is active
...
This commit fixes the behaviour of not triggering a transactional event
listener if no transaction is active. Previously, a transaction boundary
was all that was necessary to trigger the listener regardless of the fact
there was an active transaction.
This commit now prevents `Propagation.NOT_SUPPORTED` and
`Propagation.SUPPORTS` without an active transaction to trigger the
listener.
Closes gh-23276
2019-07-12 15:39:14 +02:00
Arjen Poutsma
b4207823af
Add ClientResponse::createException
...
This commit adds the createException() method to ClientResponse,
returning a delayed WebClientResponseException based on the status code,
headers, and body as well as the corresponding request.
Closes gh-22825
2019-07-12 14:51:54 +02:00
Rob Winch
5e9a22d118
Add nohttp to build
...
See gh-22839
2019-07-12 13:21:22 +02:00
Sam Brannen
09c10232a4
Polishing
...
See gh-23224
2019-07-12 13:08:33 +02:00
Sam Brannen
699d3f15e8
Simplify LocalVariableTableParameterNameDiscoverer implementation
...
This commit refactors the internals of
LocalVariableTableParameterNameDiscoverer to use
java.lang.reflect.Executable in order to simplify the implementation.
2019-07-12 12:02:49 +02:00
mfeng-ya
309b328719
Use computeIfAbsent in LocalVariableTableParameterNameDiscoverer
...
Closes gh-23281
2019-07-12 11:44:10 +02:00
Stephane Nicoll
5b341f620a
Merge pull request #22839 from rwinch
...
* pr/22839:
Polish "Add nohttp to build"
Add nohttp to build
BeanDefinitionParserDelegate uses http://www.springframework.org/schema/
Fix http URLs
Closes gh-22839
2019-07-11 18:14:35 +02:00
Stephane Nicoll
d6fdd8e874
Polish "Add nohttp to build"
...
See gh-22839
2019-07-11 18:14:20 +02:00
Rob Winch
4fa11a5061
Add nohttp to build
...
See gh-22839
2019-07-11 18:14:20 +02:00
Rob Winch
8c605dd082
BeanDefinitionParserDelegate uses http://www.springframework.org/schema/
...
See gh-22839
2019-07-11 18:14:20 +02:00
Rob Winch
fde92793b5
Fix http URLs
...
See gh-22839
2019-07-11 18:14:20 +02:00
Sam Brannen
b5fba14ab8
Fix Checkstyle violation
...
Eclipse apparently sorts static imports differently.
2019-07-11 18:13:59 +02:00
Sam Brannen
fc38bb4fc6
Change @TestConstructor.autowire attribute into an enum
...
Prior to this commit, @TestConstructor supported a boolean `autowire`
attribute which naturally limited the configuration to two states: on
or off. Since we may need to support additional autowiring modes in the
future, the use of a boolean is limiting.
This commit address this issue by introducing a new AutowireMode enum
in @TestConstructor with ALL and ANNOTATED constants. In addition, the
attribute has been renamed to `autowireMode`, and the system property
has been renamed to `spring.test.constructor.autowire.mode` for greater
clarity of purpose.
Closes gh-23224
2019-07-11 18:00:52 +02:00
Sebastien Deleuze
c8f8dfa39e
Add engineSupplier property to ScriptTemplateConfigurer
...
This commit adds an engineSupplier property to ScriptTemplateConfigurer
and ScriptTemplateView in order to be able to customize the ScriptEngine
when sharedEngine is set to false.
This can be useful with Graal.js for example.
Closes gh-23258
2019-07-11 15:58:10 +02:00
Sam Brannen
01125a571c
Upgrade to Gradle 5.5.1
...
See gh-23214
2019-07-11 14:11:36 +02:00
Sebastien Deleuze
c08035b674
Remove unused Coroutines extension parameter
2019-07-11 10:11:34 +02:00
Stephane Nicoll
4a5063f4c0
Merge branch '5.1.x'
2019-07-11 09:55:13 +02:00
Stephane Nicoll
5089824245
Merge pull request #23274 from akun2014
...
* pr/23274:
Fix typo in UrlPathHelper
Closes gh-23274
2019-07-11 09:54:54 +02:00
桂坤
81eb911c09
Fix typo in UrlPathHelper
...
See gh-23274
2019-07-11 09:54:03 +02:00
Sam Brannen
af18d71bc2
Clean up warnings in Gradle build
2019-07-10 16:59:08 +02:00
Сергей Цыпанов
1728bf17fc
Avoid unnecessary boxing where primitives can be used
...
Closes gh-23267
2019-07-10 16:51:18 +02:00
Arjen Poutsma
2909de8829
Remove ServerWebExchange::getParts and ServerRequest::parts
...
Revert to state before DefaultMultipartMessageReader
2019-07-10 16:20:20 +02:00
Arjen Poutsma
09572e7b60
Removed DataBufferUtils::split
...
DataBuffers::split (and underlying algorithm) should not be returning
a Flux<DataBuffer>, but rather a Flux<Flux<DataBuffer>>. In other words,
it should not join all data buffers that come before a delimiter.
Providing an implementation of a such a fully reactive split method
proved to be beyond the scope of this release, so this commit removes
the method altogether.
2019-07-10 16:00:11 +02:00
Arjen Poutsma
fdcf09dc2f
Copied buffering split from DataBufferUtils to StringDecoder
...
Due to the imminent removal of DataBufferUtils.split, this commit copies
over the buffering split algortihm from DataBufferUtils, as it is still
sutable for the StringDecoder
2019-07-10 16:00:11 +02:00
Arjen Poutsma
ef19a6bf8e
Various DataBufferUtils improvements
...
- Made sure that takeUntilByteCount is usable in multiple subscriptions.
- Added composite Matcher
2019-07-10 16:00:11 +02:00
Arjen Poutsma
77c24aac2f
Remove DefaultMultipartMessageReader
...
The DefaultMultipartMessageReader has been removed for 5.2 and will be
part of a future release. This commit switches back to the
SynchronossPartHttpMessageReader.
gh-21659
2019-07-10 16:00:11 +02:00
Sam Brannen
b8f77e53b5
Polish contribution
...
See gh-23251
2019-07-10 15:52:41 +02:00
Eric Hettiaratchi
827ec5d5a2
Add unit tests for PropertyAccessorUtils
...
Closes gh-23251
2019-07-10 15:40:21 +02:00
Sam Brannen
8ca834b868
Merge branch '5.1.x'
2019-07-09 18:24:03 +02:00
Sam Brannen
99758b56d3
Ensure Javadoc is generated using UTF-8 encoding
...
Fixes gh-23253
2019-07-09 18:22:11 +02:00
Sam Brannen
f0d599493e
Cache encoded BASIC credentials in ExchangeFilterFunctions
...
Prior to this commit, the Basic Authentication credentials were encoded for
each request in ExchangeFilterFunctions.basicAuthentication(String, String).
This commit addresses this minor performance issue by encoding the
credentials prior to the creation of the lambda expression returned by
ExchangeFilterFunctions.basicAuthentication(String, String).
Closes gh-23256
2019-07-09 18:01:27 +02:00
Sam Brannen
140e1e6532
Polish PropertyAccessorUtilsTests
2019-07-09 17:39:32 +02:00
Sam Brannen
39de64bafc
Log at WARN level in case of contradicting PersistenceUnitManager setup
...
Closes gh-23257
2019-07-09 17:24:41 +02:00
Sam Brannen
e8fe4493b9
Upgrade Mockito to 3.0.0
2019-07-09 12:59:00 +02:00
Sam Brannen
43447a8ee9
Polishing
2019-07-09 12:33:55 +02:00
Sebastien Deleuze
ca75c2843a
Upgrade to Coroutines 1.3.0-M2
2019-07-09 11:36:26 +02:00
Rossen Stoyanchev
47d60b34f8
Fix checkstyle violation
2019-07-08 21:35:00 +01:00
Rossen Stoyanchev
7b1a6eb50a
Add getters to RSocketMessageHandler
2019-07-08 19:39:54 +01:00
Rossen Stoyanchev
2f77541f9c
Update @MessageMapping Javadoc
2019-07-08 18:02:45 +01:00
Rossen Stoyanchev
c199cb9054
@ConnectMapping for RSocket handling
...
The new annotation helps to differentiate the handling of connection
level frames (SETUP and METADATA_PUSH) from the 4 stream requests.
Closes gh-23177
2019-07-08 17:04:23 +01:00
Brian Clozel
507d128e1d
Fix RSocket API warning
2019-07-08 14:47:41 +02:00
Sebastien Deleuze
08a5196c3a
Use elementClass and elementTypeRef consistently
2019-07-08 12:08:40 +02:00
Sebastien Deleuze
88d7fede36
Avoid shadowed RSocketRequester extensions
...
This commit renames RSocketRequester.RequestSpec data extension to
dataWithType to avoid shadowing issues and adds Publisher<T> and Flow<T>
variants to provide automatic reified type parameter resolution for
those types. It also makes RSocketRequester consistent with the
changes introduced via 2b4d6ce354 in WebFlux.
2019-07-08 12:08:26 +02:00
slawluc
4bced4682a
Make RSocketRequester extensions reified
...
Extension functions need to use reified types to create
ParameterizedTypeReference.
Closes gh-23185
2019-07-08 10:49:44 +02:00
Sebastien Deleuze
2b4d6ce354
Add body methods with Object parameter to WebFlux
...
The commit deprecates syncBody(Object) in favor of body(Object)
which has the same behavior in ServerResponse, WebClient and
WebTestClient. It also adds body(Object, Class) and
body(Object, ParameterizedTypeReference) methods in order to support
any reactive type that can be adapted to a Publisher via
ReactiveAdapterRegistry. Related BodyInserters#fromProducer
methods are provided as well.
Shadowed Kotlin body<T>() extensions are deprecated in favor of
bodyWithType<T>() ones, including dedicated Publisher<T> and
Flow<T> variants. Coroutines extensions are adapted as well, and
body(Object) can now be used with suspending functions.
Closes gh-23212
2019-07-07 22:27:57 +02:00
Sam Brannen
0fbc9bf461
Fix broken Javadoc links
2019-07-07 19:50:34 +02:00
Lonre Wang
8bfc920ac5
Fix typo in data-access.adoc
...
Closes gh-23247
2019-07-07 19:11:50 +02:00
Sam Brannen
a3161dc533
Merge branch '5.1.x'
2019-07-07 18:43:27 +02:00
Sam Brannen
db8be50161
Support empty target request path in FlashMap
...
Prior to this commit, if the user configured an empty path for the
targetRequestPath property of a FlashMap, the FlashMapManager threw a
StringIndexOutOfBoundsException when saving the output FlashMap for the
next request.
This commit fixes this by skipping the decoding and normalization of an
empty target request path.
Fixes gh-23240
2019-07-07 18:38:26 +02:00
Sam Brannen
575027af24
Polishing
2019-07-07 16:34:15 +02:00
Sam Brannen
fae75cb238
Polish contribution
...
See gh-23237
2019-07-07 16:29:03 +02:00
Johnny Lim
6dcf390fa2
Rename PathPatternRouteMatcherTest to PathPatternRouteMatcherTests
...
Closes gh-23239
2019-07-07 16:28:09 +02:00
Сергей Цыпанов
9f81ffa5ae
Use StringJoiner where possible to simplify String joining
...
Closes gh-23237
2019-07-07 16:19:01 +02:00
Sam Brannen
8f5b2b2231
Merge branch '5.1.x'
2019-07-07 14:49:34 +02:00
Sam Brannen
efab6eb55d
Ignore empty entries when parsing MediaTypes and MimeTypes
...
Prior to Spring Framework 5.1.3, MimeTypeUtils.parseMimeTypes() and
MediaType.parseMediaTypes() ignored empty entries, but 5.1.3 introduced
a regression in that an empty entry -- for example, due to a trailing
comma in the list of media types in an HTTP Accept header -- would result
in a "406 Not Acceptable" response status.
This commit fixes this by filtering out empty entries before parsing
them into MimeType and MediaType instances. Empty entries are therefore
effectively ignored.
Fixes gh-23241
2019-07-07 12:39:46 +02:00
Sam Brannen
e57845a50f
Polishing
2019-07-06 15:32:54 +02:00
Juergen Hoeller
a5cb8799fa
Merge branch '5.1.x'
2019-07-05 18:22:02 +02:00
Juergen Hoeller
7a7d4109ac
Polishing
2019-07-05 17:47:36 +02:00
Juergen Hoeller
53ebbb20f9
Upgrade to Netty 4.1.37
2019-07-05 17:08:46 +02:00
Juergen Hoeller
16deb3c50f
Defensively register ReactiveReturnValueHandler for messaging methods
...
Closes gh-23207
2019-07-05 17:08:08 +02:00
Juergen Hoeller
a1eae42fd0
Expose implementation method for annotation introspection purposes
...
Closes gh-23210
2019-07-05 17:07:44 +02:00
Juergen Hoeller
56cc0d02e9
Bean destruction exceptions consistently logged at warn level
...
Closes gh-23200
2019-07-05 17:07:22 +02:00
Juergen Hoeller
aeef95938e
SpringValidatorAdapter's ObjectError subclasses are serializable
...
Closes gh-23181
2019-07-05 17:07:01 +02:00
Juergen Hoeller
944b943ea7
Upgrade to Kotlin 1.3.41, Netty 4.1.37, Log4J 2.12, HSQLDB 2.5
2019-07-05 16:26:10 +02:00
Juergen Hoeller
d903b9acf5
Compatibility with RxJava 3.0
...
Closes gh-23208
2019-07-05 16:25:52 +02:00
Juergen Hoeller
6990504d17
Upgrade to ASM 7.2
...
Closes gh-23156
2019-07-05 16:24:45 +02:00
Juergen Hoeller
2abff1a5b0
Introduce withoutTransaction factory method on TransactionOperations
...
Closes gh-23198
2019-07-05 16:24:37 +02:00
Juergen Hoeller
7bfe01a028
Support for reactive result values from event listener methods
...
Closes gh-21831
2019-07-05 16:19:23 +02:00
Rossen Stoyanchev
97d020c509
Merge branch '5.1.x'
2019-07-05 10:55:49 +01:00
Rossen Stoyanchev
2aec175ccc
Drain body after exception from applying onStatus
...
Closes gh-23230
2019-07-05 10:50:03 +01:00
Rossen Stoyanchev
2088a3d57b
Document async requests with Spring MVC Test
...
Closes gh-19666
2019-07-05 10:30:02 +01:00
Rossen Stoyanchev
1f5f22213c
Merge branch 'pr/23119'
...
Closes gh-23119
2019-07-05 09:03:15 +01:00
Rossen Stoyanchev
fbb72eff2e
Polish
2019-07-05 09:02:24 +01:00
Dmytro Nosan
ea10ee5265
queryParam and replaceParam with List
...
See gh-23114
2019-07-05 09:02:24 +01:00
Rossen Stoyanchev
0d3e5db3ff
Compare suffix patterns by length
...
Closes gh-23125
2019-07-05 07:36:35 +01:00
Rossen Stoyanchev
157df861f9
Do not warn also if cause is re-thrown
...
Closes gh-23233
2019-07-05 07:07:59 +01:00
Rossen Stoyanchev
37f9ce5cc9
Return 500 (not 406) if content-type was preset
...
If content-type is preset in the returned ResponseEntity, then any
failure to find a matching converter is a server error.
Closes gh-23205
2019-07-05 07:07:58 +01:00
Rossen Stoyanchev
3d913b8134
Merge branch '5.1.x'
2019-07-03 17:25:12 +01:00
Rossen Stoyanchev
4e6e47b726
Earlier detection of token authentication
...
Use a callback to detect token authentication (via inteceptor) thus
avoiding a potential race between that detection after the message is
sent on the inbound channel (via Executor) and the processing of the
CONNECTED frame returned from the broker on the outbound channel.
Closes gh-23160
2019-07-03 15:24:27 +01:00
Rossen Stoyanchev
5af9a8edae
Ensure WebSocketHttpRequestHandler writes headers
...
Closes gh-23179
2019-07-03 15:24:27 +01:00
Rossen Stoyanchev
03a342378a
Merge branch '5.1.x'
2019-07-02 09:43:58 +01:00
Rossen Stoyanchev
6e79dcdc8e
Merge pull request #23070 from L00kian/23060-fix
2019-07-02 09:33:13 +01:00
Rossen Stoyanchev
29b7659094
Polish
2019-07-02 09:32:07 +01:00
Ilya Lukyanovich
27b5d2b288
Optional @RequestPart Mono arg resolves to Mono.empty
...
Closes gh-23060
2019-07-02 09:32:07 +01:00
Sam Brannen
64d13c471f
Upgrade to JUnit Jupiter 5.5
...
Closes gh-23076
2019-07-01 00:00:09 +03:00
Phillip Webb
932f771380
Improve performance of FormContentFilter
...
Improve the performance of `FormContentFilter` by checking directly if
`contentType` is empty. This saves the need for an exception to thrown
then immediately caught.
Closes gh-23216
2019-06-29 22:31:11 -07:00
Phillip Webb
b3d56ebf3b
Restore StringUtils.hasLength check
...
Update `MimeTypeUtils` so that the StringUtils.hasLength check is
performed immediately on the incoming argument, rather than in
`parseMimeTypeInternal`. This restores the `IllegalArgumentException`
rather than the `NullPointerException` which is thrown by the
`ConcurrentHashMap`.
Closes gh-23215
See gh-23211
2019-06-29 22:31:11 -07:00
Thomas Girard
87c15ba9ad
Use the accepted profiles in BeanDefinitionDsl
...
Closes gh-22393
2019-06-29 17:25:45 +02:00
Sam Brannen
ba95818b1d
Upgrade to Gradle 5.5
...
Closes gh-23214
2019-06-29 11:54:19 +03:00
Sam Brannen
896496341a
Add explicit support for multipart/mixed in FormHttpMessageConverter
...
Commit 5008423408 added support for
multipart/* media types in FormHttpMessageConverter, but users still had
to manually register multipart/mixed as a supported media type in order
to POST multipart data with that content type.
This commit removes the need to manually register multipart/mixed as a
supported media type by registering it automatically in
FormHttpMessageConverter. In addition, this commit introduces
MULTIPART_MIXED and MULTIPART_MIXED_VALUE constants in MediaType.
Closes gh-23209
2019-06-29 11:41:15 +03:00
Sam Brannen
75d1428e24
Polishing
2019-06-29 11:41:15 +03:00
Brian Clozel
5a308ad5bd
Polish MimeTypeUtils LRU cache
...
This commit improves the cache implementation by skipping the ordering
of most recently used cached keys when the cache is at least half empty.
See gh-23211
2019-06-29 00:17:40 +02:00
Rossen Stoyanchev
511a430906
Polish
2019-06-28 23:13:31 +01:00
Brian Clozel
1b93ea97ac
Fix concurrent reads issue in MimeTypeUtils cache
...
As of gh-22340, `MimeTypeUtils` has a built-in LRU cache implementation
for caching parsed MIME types and avoiding excessive garbage creation at
runtime.
This implementation, when hit with highly concurrent reads on the same
media type (the cache key), can create multiple keys for the same MIME
type string. This duplication leads to the cache filling up and evicting
entries. When the cache fetches a duplicate key, it is then not
associated with a value and the cache can return a `null` value, which
is forbidden by the API contract.
This commit adds another cache check within the write lock: this avoids
creating duplicate entries in the cache and `null` return values.
Fixes gh-23211
2019-06-28 23:43:38 +02:00
Rossen Stoyanchev
5bf070a857
More flexible RSocket metadata support
...
The responding side now relies on a new MetadataExtractor which decodes
metadata entries of interest, and adds them to an output map whose
values are then added as Message headers, and are hence accessible to
controller methods.
Decoded metadata entry values can be added to the output map one for
one, or translated to any number of values (e.g. JSON properties),
as long as one of the resulting pairs has a key called "route".
On the requesting side, now any metadata can be sent, and a String
route for example is not required to be provided explicitly. Instead
an application could create any metadata (e.g. JSON properties) as long
as the server can work out the route from it.
The commit contains further refinements on the requesting side so that
any mime type can be used, not only composite or routing metadata, e.g.
a route in an "text/plain" entry.
Closes gh-23157
2019-06-28 22:00:44 +01:00
Sam Brannen
3e41f5e6b6
Cache the encoded credentials in BasicAuthenticationInterceptor
...
Prior to this commit, the Basic Authentication credentials were encoded
for each request.
This commit addresses this minor performance issue by caching the
encoded credentials in BasicAuthenticationInterceptor.
In addition, this commit introduces new encodeBasicAuth() and
setBasicAuth(String encodedCredentials) methods in HttpHeaders to
support this feature.
Closes gh-23204
2019-06-28 18:48:59 +03:00
Sam Brannen
5008423408
Support multipart/* MediaTypes in RestTemplate
...
Prior to this commit, RestTemplate posted multipart with Content-Type
"multipart/form-data" even if the FormHttpMessageConverter configured
in the RestTemplate had been configured to support additional multipart
subtypes. This made it impossible to POST form data using a content
type such as "multipart/mixed" or "multipart/related".
This commit addresses this issue by updating FormHttpMessageConverter
to support custom multipart subtypes for writing form data.
For example, the following use case is now supported.
MediaType multipartMixed = new MediaType("multipart", "mixed");
restTemplate.getMessageConverters().stream()
.filter(FormHttpMessageConverter.class::isInstance)
.map(FormHttpMessageConverter.class::cast)
.findFirst()
.orElseThrow(() ->
new IllegalStateException("Failed to find FormHttpMessageConverter"))
.addSupportedMediaTypes(multipartMixed);
MultiValueMap<String, Object> parts = new LinkedMultiValueMap<>();
parts.add("field 1", "value 1");
parts.add("file", new ClassPathResource("myFile.jpg"));
HttpHeaders requestHeaders = new HttpHeaders();
requestHeaders.setContentType(multipartMixed);
HttpEntity<MultiValueMap<String, Object>> requestEntity =
new HttpEntity<>(parts, requestHeaders);
restTemplate.postForLocation("https://example.com/myFileUpload ", requestEntity);
Closes gh-23159
2019-06-28 17:13:18 +03:00
Sam Brannen
7bc727c895
Convert addSupportedMediaType() to var-args in FormHttpMessageConverter
...
This commit changes the new addSupportedMediaType(MediaType) method
to addSupportedMediaTypes(MediaType...), in order to allow registration
of multiple supported media types simultaneously.
See gh-23203
2019-06-27 16:55:03 +03:00
Sam Brannen
1ef60f2d3b
Polishing
2019-06-27 16:05:38 +03:00
Sam Brannen
91ae711a54
Fix Javadoc for MediaType
2019-06-27 16:05:38 +03:00
Sam Brannen
4e7d8a8873
Introduce addSupportedMediaType() in FormHttpMessageConverter
...
Closes gh-23203
2019-06-27 16:05:38 +03:00
Sam Brannen
8e1cb9a059
Improve diagnostics for all server failures in RestTemplateIntegrationTests
2019-06-27 14:16:19 +03:00
Sam Brannen
d522e9835f
Polish AbstractMockWebServerTestCase
2019-06-27 13:45:32 +03:00
Sam Brannen
0b6239cecc
Improve diagnostics for failures in RestTemplateIntegrationTests
2019-06-26 15:16:54 +03:00
Sam Brannen
7d6be2e26e
Polishing
2019-06-26 15:12:32 +03:00
Stephane Maldini
14afdb2bbc
Remove unnecessary import
2019-06-25 17:42:01 -07:00
Stephane Maldini
339ee01233
Remove unnecessary flushOnEach (since reactor-netty 0.9)
2019-06-25 16:05:30 -07:00
Sam Brannen
e947e08638
Merge branch '5.1.x'
2019-06-25 13:14:21 +03:00
Sam Brannen
ac29e9de6a
Document that CacheManager.getCache() may create a new Cache
...
Prior to this commit, it was unclear that an invocation of getCache()
might potentially create a new Cache.
This commit updates the Javadoc to point out that concrete CacheManager
implementations may choose to create a new Cache at runtime if the Cache
does not already exist.
Closes gh-23193
2019-06-25 13:12:42 +03:00
Sam Brannen
33fa55e658
Update OrderComparatorTests based on clarified PriorityOrdered semantics
...
See gh-23187
2019-06-25 11:04:19 +03:00
Sam Brannen
b2dc4debde
Merge branch '5.1.x'
2019-06-25 10:42:14 +03:00
Sam Brannen
dda4dfb44b
Clarify semantics of the PriorityOrdered interface
...
This commit clarifies the semantics of the PriorityOrdered interface
with respect to sorting sets of objects containing both PriorityOrdered
and plain Ordered objects.
Closes gh-23187
2019-06-25 10:40:55 +03:00
Johnny Lim
1afc2be5aa
Remove duplicate assertion in AnnotatedElementUtilsTests
...
Closes gh-23191
2019-06-25 10:00:12 +03:00
Sam Brannen
0f1d16bb05
Fix Checkstyle violation
2019-06-24 17:54:04 +03:00
Sam Brannen
d0231cb29a
Presort beans in ControllerAdviceBean.findAnnotatedBeans()
...
Prior to this commit, all clients of
ControllerAdviceBean.findAnnotatedBeans() sorted the returned list
manually. In addition, clients within the core Spring Framework
unnecessarily used AnnotationAwareOrderComparator instead of
OrderComparator to sort the list.
This commit presorts the ControllerAdviceBean list using OrderComparator
directly within ControllerAdviceBean.findAnnotatedBeans().
Closes gh-23188
2019-06-24 16:26:11 +03:00
Brian Clozel
dd15ff79d7
Register annotated handlers in RSocketRequester
...
Prior to this commit, there would be no easy way to register client
RSocket handlers against an `RSocketRequester` instance. The only
solution was to gather all handlers and wrap them in a
`RSocketMessageHandler` and configure it as an acceptor on the client
RSocket.
This commit adds a convenience method on the `RSocketRequester` builder
to tkae care of this part of the infrastructure.
Closes gh-23170
2019-06-24 15:11:18 +02:00
Sam Brannen
d5a2bdee8d
Improve Javadoc for @ControllerAdvice regarding ordering
...
Closes gh-23163
2019-06-24 14:36:04 +03:00
Sam Brannen
6cc6abd405
Test status quo for OrderComparator's PriorityOrdered support
...
See gh-23187
2019-06-24 14:13:46 +03:00
Sam Brannen
4357749a63
Document that OrderComparator honors PriorityOrdered
...
Prior to this commit, it was not clear that OrderComparator sorts
PriorityOrdered objects with higher priority than plain Ordered objects.
2019-06-24 13:32:54 +03:00
Sam Brannen
e3b3481c19
Fix typo in Javadoc
2019-06-24 12:32:41 +03:00
Sam Brannen
9239ab1891
Support Ordered interface for @ControllerAdvice beans
...
Closes gh-23163
2019-06-23 19:31:35 +03:00
Sam Brannen
978adbdae7
Avoid duplicate lookups of @ControllerAdvice annotations
...
See gh-23163
2019-06-23 18:31:04 +03:00
Gaurav Deshpande
ed6fbdddaa
Fix typo in CONTRIBUTING.md
...
Closes gh-23180
2019-06-22 22:34:05 +03:00
Sam Brannen
7576d0d40c
Polishing
...
See gh-23163
2019-06-22 19:06:58 +03:00
Sam Brannen
4568edf6c4
Simplify ControllerAdviceBean constructors
...
See gh-23163
2019-06-22 19:02:49 +03:00
Sam Brannen
8f30639a0a
Test status quo for Ordered support for @ControllerAdvice beans
...
See gh-23163
2019-06-22 18:18:57 +03:00
Juergen Hoeller
e2d01bb783
Merge branch '5.1.x'
2019-06-22 17:11:31 +02:00
Juergen Hoeller
29dcd19971
Upgrade to AspectJ 1.9.4, RxJava 2.2.10, Jetty 9.4.19, Undertow 2.0.22
...
Includes Hibernate Validator 6.0.17 and renames "withoutJclOverSlf4j".
2019-06-22 16:49:40 +02:00
Sam Brannen
21267e56b7
Cache resolved bean instance in ControllerAdviceBean
...
Prior to this commit, the resolveBean() method in ControllerAdviceBean
looked up the @ControllerAdvice bean instance in the ApplicationContext
by name for every web request that involved lookups for global methods
annotated with @ExceptionHandler, @InitBinder, and @ModelAttribute.
This commit avoids the need for such repeated lookups in the
ApplicationContext by caching the resolved @ControllerAdvice bean
instance within ControllerAdviceBean once it has been resolved.
2019-06-21 18:27:33 +03:00
Sam Brannen
59901592d2
Introduce regression tests for ControllerAdviceBean
...
This commit introduces unit tests for the status quo in
ControllerAdviceBeanTests to serve as regression tests for future
changes to ControllerAdviceBean.
2019-06-21 17:21:50 +03:00
Sam Brannen
52f1a3aef9
Polish ControllerAdviceBean
2019-06-21 17:11:12 +03:00
Sam Brannen
beb454a299
Use HTTPS links in documentation where possible
2019-06-21 16:51:44 +03:00
Sebastien Deleuze
eaecf0c006
Improve RSocketRequester.ResponseSpec Kotlin extensions
...
This commit adds retrieveMono and retrieveFlux reified variants, and
turns dataFlow(flow: Flow) extension into a general purpose reified
data(producer: Any) one.
Closes gh-23164
2019-06-21 15:26:12 +02:00
Rossen Stoyanchev
003247dc40
Equalize copy of ChannelSendOperator
...
See gh-23175
2019-06-21 14:16:44 +01:00
Rossen Stoyanchev
030caea9cf
Merge branch '5.1.x'
2019-06-21 14:15:26 +01:00
Rossen Stoyanchev
594c5806a6
Handle error in apply of writeFunction
...
Closes gh-23175
2019-06-21 14:15:14 +01:00
Sam Brannen
0e5a38591f
Cache beanType in ControllerAdviceBean
2019-06-21 14:09:05 +03:00
Sam Brannen
2759b4b909
Avoid use of Stream API in ControllerAdviceBean
2019-06-21 13:49:49 +03:00
Sam Brannen
d5554d5d8d
Polish @ControllerAdvice and @RestControllerAdvice
2019-06-21 13:26:30 +03:00
Sam Brannen
2f4c97cbdb
Merge branch '5.1.x'
2019-06-21 12:46:21 +03:00
Sam Brannen
97bfb75fbc
Polish documentation for @ControllerAdvice in reference manual
2019-06-21 12:45:08 +03:00
Sam Brannen
1d2f8e5cc2
Merge branch '5.1.x'
2019-06-21 12:41:59 +03:00
Sam Brannen
ad915f4a26
Document that Ordered is not supported for @ControllerAdvice beans
...
Closes gh-23172
2019-06-21 12:39:34 +03:00
Arjen Poutsma
92981ac9de
Add Flux<Part> ServerRequest.parts()
...
This commit introduces Flux<Part> ServerRequest.parts() that delegates
to ServerWebExchange.getParts() and offers an alternative,
streaming way of accessing multipart data.
Closes gh-23131
2019-06-21 10:59:13 +02:00
Arjen Poutsma
11c7907a59
Add Flux<Part> ServerWebExchange.getParts()
...
This commit introduces ServerWebExchange.getParts(), as an alternative,
streaming way of accessing multipart data.
2019-06-21 10:59:12 +02:00
Arjen Poutsma
edd86e5dd5
Move RouterFunction WebHandler to inner class
2019-06-21 10:59:12 +02:00
Rossen Stoyanchev
7f1d5d790e
Polish
2019-06-21 06:51:59 +01:00
Rossen Stoyanchev
c6a2c89408
Package refactoring in rsocket support
...
Create annotation.support sub-package and move handler code there. This
prepares for a future, functional handler (responder) variant and is
consistent with the package structure under simp.
2019-06-21 06:49:59 +01:00
Brian Clozel
cc05608ae9
PathPattern does not use custom separator
...
Prior to this commit, `PathPattern::extractPathWithinMapping`
would always use the default path pattern separator `/` when extracting
the path within the pattern of a matched route.
This commit ensures that `PathPattern` uses the configured separator
when extracting the path within the matched mapping.
Fixes gh-23168
2019-06-20 20:27:22 +02:00
Brian Clozel
5787fc16fb
PathPatternRouteMatcher should use custom separator
...
Prior to this commit, the `PathPatternRouteMatcher` would always use the
default path pattern separator when parsing incoming route strings to
`RouteMatcher.Route` instances.
When the `PathPatternRouteMatcher` is configured with a
`PathPatternParser` that has a custom separator (e.g., `.`), then the
matching algorithm can't match routes against parsed patterns.
This commit ensures that the route matcher uses the configured separator
at all times.
Fixes gh-23167
2019-06-20 20:23:04 +02:00
Sam Brannen
f56c54dfc8
Polishing
2019-06-20 18:09:22 +03:00
Sebastien Deleuze
da582dad7c
Add documentation for Coroutines dependencies
2019-06-20 16:11:20 +02:00
Rossen Stoyanchev
772087fe18
Refactor RSocket handler selection
...
1. Consolidate config options for handler detection in the base class
AbstractMethodMessageHandler with sub-classes like RSocketMessageHandler
now only setting the handler predicate by default (e.g. @Controller).
2. Remove autoDetection flag in favor of just having the mutually
exclusive handler Predicate<Object> vs manually registered List<Object>.
Or if both are desired for some reason, then manually register first,
and set the predicate second.
2019-06-20 12:16:08 +01:00
Rossen Stoyanchev
7d68a65dc0
Replace deprecated methods in RSocket tests
2019-06-20 12:16:08 +01:00
Rossen Stoyanchev
d6b5c20058
Generalize RSocketRequester data methods
...
Replace the Publisher argument in RequestSpec's
data(Publisher, Class<T>) and
data(Publisher, ParameterizedTypeReference<T>) methods with Object thus
allowing any reactive type known to the ReactiveAdapterRegistry to be
passed in directly rather than adapted to Publisher first.
2019-06-20 12:16:08 +01:00
Sam Brannen
b3d40b3fac
Upgrade to JUnit Jupiter 5.5 RC2
...
See gh-23076
2019-06-20 13:20:25 +03:00
Sam Brannen
d2e6d0269b
Preliminary tests for multipart/related & multipart/mixed in RestTemplate
...
See gh-23159
2019-06-20 11:35:18 +03:00
Sebastien Deleuze
e86b937f8c
Leverage new Kotlin script templating support
...
As of 1.3.40, Kotlin now provides a kotlin-scripting-jsr223-embeddable
dependency which:
- Fixes classloading related issues
- Provides out of the box JSR 223 support
- Is compatible with Spring Boot Fat Jar mechanism
This commit updates Spring Framework tests and documentation accordingly.
Closes gh-23165
2019-06-20 10:17:02 +02:00
Sebastien Deleuze
cfb4148982
Upgrade to Kotlin 1.3.40
2019-06-20 09:44:14 +02:00
Stephane Nicoll
521539b68e
Merge pull request #23162 from izeye
...
* pr/23162:
Polish FormattingConversionServiceTests
Closes gh-23162
2019-06-20 08:46:56 +02:00
Johnny Lim
ef704aa531
Polish FormattingConversionServiceTests
...
See gh-23162
2019-06-20 08:40:47 +02:00
Stephane Nicoll
8e1612c68a
Merge pull request #23158 from izeye
...
* pr/23158:
Polish YamlProcessorTests.flattenedMapIsSameAsPropertiesButOrdered()
Closes gh-23158
2019-06-20 08:35:42 +02:00
Johnny Lim
77aa17fe75
Polish YamlProcessorTests.flattenedMapIsSameAsPropertiesButOrdered()
...
See gh-23158
2019-06-20 08:34:44 +02:00
Rossen Stoyanchev
22fd521e0a
Remove MessageHandlerAcceptor sub-class
...
This commit removes the MessageHandlerAcceptor sub-class of
RSocketMessageHandler, and rather than implementing directly the
contracts for RSocket client and server acceptors, RSocketMessageHandler
now exposes clientAcceptor() and serverAcceptor() methods that return
the required adapter instances.
This provides better separation between the RSocketMessageHandler and
the RSocket adapter code, and also avoids implementing generic
interfaces like the BiFunction required for the client acceptor.
2019-06-19 22:19:19 +01:00
Sebastien Deleuze
341385acfc
Merge branch '5.1.x'
2019-06-19 13:59:59 +02:00
Sebastien Deleuze
bcad276adb
Fix Jackson documentation broken links
...
Closes gh-23153
2019-06-19 13:59:36 +02:00
Rossen Stoyanchev
73c2eb1b77
Fix minor Assert-related issues
2019-06-18 21:31:44 +01:00
Sam Brannen
ef6471fcbf
Polish contribution
...
See gh-23141
2019-06-18 18:59:18 +03:00
RustyTheClone
72adc3d37e
Support target type in MockMvcResultMatchers.jsonPath()
...
This commit introduces an overloaded jsonPath() method to specify a
target type to coerce into for MockMvcResultMatchers.
- jsonPath(String, Matcher<T>, Class<T>)
Closes gh-23141
2019-06-18 18:57:27 +03:00
Sam Brannen
89ebdc766c
Polishing
2019-06-18 18:53:47 +03:00
Sebastien Deleuze
ea97fefa98
Merge branch '5.1.x'
2019-06-18 16:52:29 +02:00
Sebastien Deleuze
bd568ea2f1
Document how to specify Jackson JSON view serialization hints
...
Closes gh-23150
2019-06-18 16:50:54 +02:00
Sam Brannen
4000b244ff
Forbid null converters in RestTemplate & HttpMessageConverterExtractor
...
Prior to this commit, RestTemplate and HttpMessageConverterExtractor did
not validate that the supplied HttpMessageConverter list contained no
null elements, which can lead to a NullPointerException when the
converters are accessed.
This commit improves the user experience by failing immediately if the
supplied HttpMessageConverter list contains a null element. This applies
to constructors for RestTemplate and HttpMessageConverterExtractor as
well as to RestTemplate#setMessageConverters().
Note, however, that RestTemplate#getMessageConverters() returns a mutable
list. Thus, if a user modifies that list so that it contains null values,
that will still lead to a NullPointerException when the converters are
accessed.
This commit also introduces noNullElements() variants for collections in
org.springframework.util.Assert.
Closes gh-23151
2019-06-18 16:13:20 +03:00
Sam Brannen
8ceac9c015
Document supported @Transactional attributes in the TCF
...
This commit documents which attributes in @Transactional are supported
for test-managed transactions in the Spring TestContext Framework (TCF).
Closes gh-23149
2019-06-18 14:34:28 +03:00
Sam Brannen
da903904c9
Fix Javadoc reference to MediaType#APPLICATION_CBOR_VALUE
...
{@value ...} cannot be used outside of the current type.
2019-06-18 13:00:00 +03:00
Sam Brannen
aa0a8d66a8
Polishing
2019-06-18 10:19:03 +03:00
Johnny Lim
7f67cecd10
Polish MappingMediaTypeFileExtensionResolver.addFileExtension()
...
Closes gh-23145
2019-06-18 10:10:30 +03:00
Sam Brannen
f6a4595cef
Polishing
2019-06-17 17:06:37 +03:00
Stephane Nicoll
80c7f7f6ba
Merge pull request #23142 from ielatif
...
* pr/23142:
Fix typo
Closes gh-23142
2019-06-17 11:41:01 +02:00
Issam El-atif
57fa09b80d
Fix typo
...
See gh-23142
2019-06-17 11:40:45 +02:00
Arjen Poutsma
30af01fd4e
Use DataBufferUtils.write in DefaultFilePart.transferTo
...
This commit makes sure that in DefaultMultipartMessageReader's
DefaultFilePart, the file is not closed before all bytes are written,
by using DataBufferUtils.write (see c1b6885191d6a50347aeaa14da994f0db88f26fe).
The commit also improves on the logging of the
DefaultMultipartMessageReader.
Closes gh-23130
2019-06-14 14:13:18 +02:00
Arjen Poutsma
f08656c6cb
Add methods to read/write from Path to DataBufferUtils
...
This commit adds two methods to DataBufferUtils:
- one that reads a Flux<DataBuffer> from a Path
- one that writes a Flux<DataBuffer> to a Path
2019-06-14 14:13:18 +02:00
Sam Brannen
99d10a671c
Merge branch '5.1.x'
2019-06-14 14:51:08 +03:00
Sam Brannen
d18d4d865e
Update Javadoc for HtmlUtils regarding Apache Commons Text
...
Closes gh-23122
2019-06-14 14:48:24 +03:00
Johnny Lim
293506013d
Add since declarations for JettyClientHttpConnector constructor change
...
Closes gh-23128
2019-06-14 14:31:37 +03:00
Stephane Nicoll
296220f374
Merge branch '5.1.x'
2019-06-13 16:47:50 +02:00
Sam Brannen
451cce4fe8
Do not override requestContextAttribute with null in UrlBasedViewResolvers
...
Prior to this commit, if a subclass of
org.springframework.web.servlet.view.AbstractView or
org.springframework.web.reactive.result.view.AbstractUrlBasedView
configured a custom value for the requestContextAttribute, that value
was overwritten with null whenever the View was dynamically
instantiated by a UrlBasedViewResolver, and this could lead to
confusing behavior for users of the View.
This commit addresses this issue by ensuring that the
UrlBasedViewResolvers in spring-webmvc and spring-webflux do not
override the requestContextAttribute in a View if the
UrlBasedViewResolver has not been explicitly configured with a custom
requestContextAttribute value.
Closes gh-23129
2019-06-13 17:42:14 +03:00
Sam Brannen
c4075cf216
Document WebFlux FreeMarker macro support in Reference Manual
...
Closes gh-23133
2019-06-13 17:40:18 +03:00
Spring Buildmaster
108ce58025
Next Development Version
2019-06-13 14:04:56 +00:00
Sam Brannen
eef9bc899f
Avoid NPE in FreeMarkerView.getModelAttributes() in spring-webflux
...
This commit declares the model method parameter as @Nullable and adds
defensive guards against a null model argument.
Closes gh-23105
2019-06-13 01:40:22 +03:00
Rossen Stoyanchev
4690f745ce
Upgrade to RSocket 0.2.12-RC4
2019-06-12 17:19:17 -04:00
Rossen Stoyanchev
14e2c6803e
Support for RSocket composite metadata
...
Closes gh-22798
2019-06-12 17:11:30 -04:00
Sam Brannen
9fb973d4f3
Polish JavaDoc for FreeMarkerView in spring-webflux
...
See gh-23105
2019-06-12 22:42:29 +03:00
Sam Brannen
a4f4ef9011
Update documentation for spring.ftl in spring-webflux
...
See gh-23105
2019-06-12 22:40:13 +03:00
Juergen Hoeller
0a77477d32
Merge branch '5.1.x'
2019-06-12 18:16:30 +02:00
Juergen Hoeller
fc46abf0b7
Polishing
2019-06-12 18:04:06 +02:00
stsypanov
49873a30c5
Simplify String concatenation
2019-06-12 17:32:35 +02:00
Sam Brannen
cc4593fda8
Improve FreeMarker macro support in spring-webflux
...
This commit improves the FreeMarker macro support in spring-webflux by
automatically exposing a RequestContext under the name
"springMacroRequestContext" for use with Spring's FreeMarker macros in
spring.ftl.
This aligns with the user experience for FreeMarkerView in spring-webmvc.
Closes gh-23105
2019-06-12 17:00:21 +03:00
Sam Brannen
c99b7c1c90
Polishing
2019-06-12 16:33:39 +03:00
Sam Brannen
8b68400bbe
Remove use of @Nullable from copy of SortedProperties
...
Rationale: @Nullable is not visible in the spring-context-indexer
project.
2019-06-12 15:31:54 +03:00
Juergen Hoeller
42c0d8ec7f
Merge branch '5.1.x'
2019-06-12 14:14:40 +02:00
Juergen Hoeller
1ccd99ebe7
Polishing
2019-06-12 14:11:39 +02:00
Juergen Hoeller
627d37f73b
Thread-safe removal of destruction callbacks in web scopes
...
Closes gh-23117
2019-06-12 14:11:13 +02:00
Sam Brannen
259dd3d731
Polishing
2019-06-12 14:43:23 +03:00
Juergen Hoeller
918ffacdf8
Polishing
2019-06-12 13:29:35 +02:00
Juergen Hoeller
98a49b46b7
NamedParameterJdbcTemplate only treats Iterables like Collections
...
Closes gh-22981
2019-06-12 13:29:07 +02:00
Sam Brannen
bee4fb0615
Polishing
2019-06-12 14:07:04 +03:00
Sam Brannen
049437e111
Log exception when closing InputStream in AbstractResource
...
Prior to this commit, exceptions thrown while closing an InputStream in
AbstractResource were silently ignored.
This commit improves diagnostics for such failure scenarios by logging
the exception at DEBUG level.
Closes gh-23116
2019-06-12 14:07:04 +03:00
Sam Brannen
5cbc0cd8a3
Merge branch '5.1.x'
2019-06-12 09:32:22 +03:00
Sam Brannen
0086801457
Upgrade to dokka 0.9.18
2019-06-12 09:22:59 +03:00
Juergen Hoeller
bd76a160bb
Merge branch '5.1.x'
2019-06-12 00:58:51 +02:00
Juergen Hoeller
4877736794
Polishing
2019-06-12 00:58:04 +02:00
Juergen Hoeller
707c720441
Polishing
2019-06-12 00:05:37 +02:00
Juergen Hoeller
7e02358166
Merge branch '5.1.x'
2019-06-12 00:05:01 +02:00
Juergen Hoeller
33b5bc2aae
Polishing
2019-06-11 23:50:29 +02:00
Juergen Hoeller
22aba8bf60
Upgrade to Apache HttpClient 4.5.9
2019-06-11 23:49:57 +02:00
Phillip Webb
5e505ce3a9
Add FormatterRegistry addPrinter/addParser methods
...
Update `FormatterRegistry` with `addPrinter` and `addParser` methods
that can be used to register Printer or Parser implementations in a
similar way to the existing `addFormatter` method.
Closes gh-23110
2019-06-11 14:47:42 -07:00
Juergen Hoeller
a89bfffd8c
Merge branch '5.1.x'
2019-06-11 23:16:03 +02:00
Sam Brannen
74d520fbfa
Polish @Value documentation in the Reference Manual
...
See gh-23052
2019-06-11 23:07:23 +03:00
Phillip Webb
6ac68391c1
Polishing
2019-06-11 12:03:05 -07:00
Phillip Webb
b21b27c5ac
Add MultiValueMap.addIfAbsent method
...
Closes gh-23111
2019-06-11 12:03:05 -07:00
Juergen Hoeller
7dc92aa05d
Polishing
2019-06-11 20:57:27 +02:00
Juergen Hoeller
1956cb1e57
Defensive concurrent access to shared file extension data structures
...
Closes gh-23064
2019-06-11 20:57:17 +02:00
Juergen Hoeller
4fc9747569
Defensive concurrent access to key set from java.util.Properties
...
Closes gh-23063
2019-06-11 20:56:57 +02:00
Juergen Hoeller
b37390b8fe
Restore javax meta-annotation lookup behavior
...
Closes gh-22957
2019-06-11 20:56:41 +02:00
Juergen Hoeller
fd159ad082
Custom init/destroy methods get invoked through interface is possible
...
Closes gh-22939
2019-06-11 20:56:30 +02:00
Juergen Hoeller
dec6d69819
ReflectivePropertyAccessor uses interface methods if possible
...
Closes gh-22242
2019-06-11 20:54:29 +02:00
Juergen Hoeller
b63c853a7d
Upgrade to Tomcat 9.0.21, Undertow 2.0.21, RxJava 2.2.9, Checkstyle 8.21
...
Includes upgrade to Reactor Californium SR9 proper.
2019-06-11 20:53:56 +02:00
Rossen Stoyanchev
0757eaee9d
Clear ProducesRequestCondition attribute
...
Closes gh-23091
2019-06-11 13:55:20 -04:00
Juergen Hoeller
859923b732
Support for fine-grained by-type references and autowired properties
...
Closes gh-23032
2019-06-11 18:27:46 +02:00
Juergen Hoeller
eeb79c8dde
NamedParameterJdbcTemplate treats arrays/Iterables like Collections
...
Closes gh-22981
2019-06-11 18:26:40 +02:00
Juergen Hoeller
9f92b42d69
Upgrade to Tomcat 9.0.21, Undertow 2.0.21, RxJava 2.2.9, Checkstyle 8.21, Mockito 2.28.2, Hibernate ORM 5.4.3
...
Centralizes rsocketVersion declaration in build.gradle; also includes upgrade to Reactor Dysprosium M2 proper.
2019-06-11 18:26:13 +02:00
Sebastien Deleuze
1af43d7164
Rework @Value documentation
...
See gh-23052
2019-06-11 17:54:43 +02:00
Sam Brannen
44a00b58c8
Polish contribution
...
See gh-22383
2019-06-11 17:46:29 +03:00
Vedran Pavic
b51e553f55
Ensure indexer output is deterministic and repeatable
...
Closes gh-22383
2019-06-11 17:46:12 +03:00
Sam Brannen
a5828ca14e
Polish JavaDoc for AbstractView in spring-webflux
2019-06-11 16:28:25 +03:00
Sam Brannen
dfbf742547
Polishing
2019-06-11 13:54:11 +03:00
Sylvain Lemoine
74fcb0c5e8
Add proper @Value documentation
...
Closes gh-23052
2019-06-11 12:06:42 +02:00
Sam Brannen
59d070e12a
Test JUnit Jupiter 5.5 @Timeout support with Spring transactions
...
See gh-23076
2019-06-10 17:57:56 +03:00
Sam Brannen
809fc50036
Upgrade to JUnit Jupiter 5.5 RC1
...
See gh-23076
2019-06-10 16:51:47 +03:00
Sam Brannen
7a87d86b80
Fix documentation for FreeMarker bind macro in spring-webflux
...
See gh-23002
2019-06-10 16:39:54 +03:00
Sam Brannen
2f640fe205
Polish FreeMarker macro support in spring-webflux
...
See gh-23002
2019-06-10 16:13:20 +03:00
Sam Brannen
ac28de0dc1
Polish Javadoc for FreeMarker support
2019-06-10 16:03:16 +03:00
Issam EL-ATIF
b58f34d802
Add FreeMarker macro support in spring-webflux
...
Closes gh-23002
2019-06-09 16:30:05 +03:00
Sam Brannen
9b084bb3ea
Polish contribution
...
See gh-23073
2019-06-08 22:22:27 +03:00
Issam El-atif
ab36a0a82f
Improve FreeMarker tests in spring-webmvc and spring-context-support
...
This commit improves FreeMarkerConfigurerTests in spring-webmvc by
testing against FreeMarkerConfigurer instead of
FreeMarkerConfigurationFactoryBean and moves the original
FreeMarkerConfigurationFactoryBeanTests to spring-context-support in
the org.springframework.ui.freemarker package.
Closes gh-23073
2019-06-08 22:21:09 +03:00
Juergen Hoeller
662541a48e
Fix formatting
...
See gh-23068
2019-06-08 14:26:39 +02:00
陈其苗
ab8e388412
Fix duplicate invoke method of transformedBeanName
2019-06-07 22:48:19 +02:00
Rossen Stoyanchev
b296545af8
Handler StreamingHttpOutputMessage in XHR transport
...
Closes gh-23030
2019-06-07 16:40:58 -04:00
Rossen Stoyanchev
331463739d
Merge branch '5.1.x'
2019-06-07 16:26:00 -04:00
Rossen Stoyanchev
9ce5a18d96
Ignore null attributes in AbstractView
...
Consistent with ConcurrentModel and also with treatment of empty values
from async attributes.
Closes gh-23038
2019-06-07 16:25:47 -04:00
Rossen Stoyanchev
1f05bd4ef3
Merge branch '5.1.x'
2019-06-07 16:08:29 -04:00
Rossen Stoyanchev
9f8148419f
Separate "filtered" attribute for ERROR dispatch
...
Closes gh-22989
2019-06-07 16:07:56 -04:00
Sam Brannen
08afe5d22b
Polishing
2019-06-07 19:45:51 +03:00
Сергей Цыпанов
e352e9ddaa
Simplify comparison of primitives
...
Closes gh-23098
2019-06-07 18:14:04 +02:00
Sam Brannen
e903bf440b
Polishing
2019-06-06 17:57:14 +03:00
Sam Brannen
61bf45c86f
Merge branch '5.1.x'
2019-06-06 17:40:51 +03:00
Ilya Lukyanovich
2ed81be831
Fix MockHttpServletRequest.setCookies to produce single cookie header
...
Prior to this commit, MockHttpServletRequest.setCookies() produced one
Cookie header per supplied cookie, resulting in multiple Cookie headers
which violates the specification.
This commit fixes this by ensuring that all cookie name-value pairs are
stored under a single Cookie header, separated by a semicolon.
Closes gh-23074
2019-06-06 17:13:21 +03:00
Sebastien Deleuze
098ac0bbb8
Annotate Object#equals parameter with @Nullable
...
Closes gh-23093
2019-06-06 14:18:30 +02:00
Brian Clozel
33becd8258
Allow separator configuration in PathPatternParser
...
This commit allows to configure a custom path separator when parsing and
matching path patterns with `PathPatternParser`, but also when parsing
incoming paths as `PathContainer` instances.
Closes gh-23092
2019-06-06 11:39:53 +02:00
Rossen Stoyanchev
ec91934730
Use correct file options for transferTo
...
Similar to fix applied to Synchronoss implementation in #cef98e.
2019-06-05 10:54:56 -04:00
Sam Brannen
1259b7cb49
Polishing
2019-06-05 14:41:14 +03:00
Sam Brannen
2ed9a61ba0
Rename TransactionSynchronizationManager#currentTransaction()
...
This commit renames currentTransaction() to forCurrentTransaction() for
greater clarity.
Closes gh-23086
2019-06-05 14:15:07 +03:00
Sebastien Deleuze
044ea17bf9
Polishing
2019-06-05 12:13:36 +02:00
Sebastien Deleuze
23e617160f
Use a timeout != 0 in InvocableHandlerMethodTests
2019-06-05 11:52:08 +02:00
Sebastien Deleuze
2a19b8f7a5
Refine Coroutines adapter registration activation
...
Closes gh-23087
2019-06-05 11:52:00 +02:00
Sam Brannen
3b37989774
Apply De Morgan's law for greater clarity of purpose
2019-06-05 10:29:24 +03:00
Rossen Stoyanchev
1f35bb609b
Fix checkstyle warning
2019-06-04 17:38:30 -04:00
Rossen Stoyanchev
69eba32284
Improved Part support in MultipartBodyBuilder
...
1. Add contentType and filename options to PartBuilder.
2. Revert recently committed #44659f since asyncPart can't properly
support Publisher of Part (only Mono, can't support filename), and
replace that with support for Part in the regular part method.
Closes gh-23083
2019-06-04 17:21:39 -04:00
Rossen Stoyanchev
8781c01edf
Merge branch '5.1.x'
2019-06-04 16:42:13 -04:00
Rossen Stoyanchev
49e5c4dcf6
Polish MultipartBodyBuilder
...
Improve Javadoc
Consistently reject Publisher unless using asyncPart
Consistently set Content-Type when specified
2019-06-04 16:41:10 -04:00
Sam Brannen
2074afc87f
Polish Javadoc
...
See gh-23075
2019-06-04 16:55:51 +03:00
Arjen Poutsma
145610129b
Javadoc
...
Closes gh-23075
2019-06-04 15:31:27 +02:00
Sam Brannen
e92ace7301
Merge branch '5.1.x'
2019-06-04 16:22:08 +03:00
Sam Brannen
6eac141160
Restore non-null check for requiredType in BeanFactory methods
...
Beginning with Spring Framework 5.0, non-null checks for the
requiredType in the following methods were inadvertently removed with
the internal switch to ResolvableType.forRawClass(requiredType).
- BeanFactory.getBean(Class<T>, Object...)
- BeanFactory.getBeanProvider(Class<T>)
- AutowireCapableBeanFactory.resolveNamedBean(Class<T>)
This commit restores those non-null checks.
Closes gh-23045
2019-06-04 16:00:01 +03:00
Sam Brannen
410f204168
Support consistent ordering of string adapting properties
...
This commit introduces support for consistent ordering of Properties
created by CollectionFactory.createStringAdaptingProperties().
Specifically, the created Properties instance sorts properties
alphanumerically based on their keys.
Closes gh-23081
2019-06-04 14:47:43 +03:00
Sam Brannen
3a8388ec8d
Merge branch '5.1.x'
2019-06-04 12:01:58 +03:00
Jay Bryant
68333171b6
Reintroduce author list and copyright notice
...
Closes gh-23049
2019-06-04 11:54:58 +03:00
Rossen Stoyanchev
e89fd5c3be
Merge branch '5.1.x'
2019-06-03 16:34:58 -04:00
Rossen Stoyanchev
d2ec876f57
Consistently close connection after ERROR frame
...
Closes gh-23039
2019-06-03 16:22:43 -04:00
Rossen Stoyanchev
4f05da7fed
Support escape character in ContentDisposition
...
Closes gh-23077
2019-06-03 16:03:35 -04:00
Stephane Nicoll
cb97a1b371
Merge pull request #23071 from ielatif
...
* pr/23071:
Polish "Replace with 'Integer.compare()'"
Replace with 'Integer.compare()'
Closes gh-23071
2019-06-03 08:34:43 +02:00
Stephane Nicoll
0ef4349c4d
Polish "Replace with 'Integer.compare()'"
...
See gh-23071
2019-06-03 08:31:57 +02:00
Issam El-atif
7ce3792672
Replace with 'Integer.compare()'
...
See gh-23071
2019-06-03 08:31:19 +02:00
Sebastien Deleuze
e0bb712bfc
Update Kotlin documentation
2019-05-31 14:15:44 +02:00
Sam Brannen
3794a57651
Improve AnnotationProcessorPerformanceTests with Awaitility
2019-05-30 12:07:30 +02:00
Sam Brannen
f66eef1f88
Fix SortedPropertiesTests on JDK 9+
2019-05-30 10:41:49 +02:00
Rossen Stoyanchev
eacc531cf7
Add dataMimeType to RSocketRequestBuilder
...
Closes gh-23012
2019-05-29 17:08:46 -04:00
Rossen Stoyanchev
64f3dbbee8
Polish in rsocket package
2019-05-29 17:08:46 -04:00
Сергей Цыпанов
aaeabc3c85
Simplify iteration over maps
...
Closes gh-23053
2019-05-29 18:00:34 +02:00
Sebastien Deleuze
5b04b04b69
Merge branch '5.1.x'
2019-05-29 11:54:40 +02:00
Sebastien Deleuze
4523d01a50
Fix Javadoc for HttpHeaders#setContentLanguage
...
Closes gh-23051
2019-05-29 11:53:38 +02:00
Brian Clozel
4b8ce04bdc
Mark Spring web config classes as proxyBeanMethods=false
...
Closes gh-23004
2019-05-28 19:11:35 +02:00
Johnny Lim
83078eb6fd
Add constants for application/cbor to MediaType
...
Closes gh-23042
2019-05-28 18:51:25 +02:00
Sam Brannen
53597f90e9
Remove dependency on StringUtils in SortedProperties
...
See gh-23018, gh-22383
2019-05-28 18:31:54 +02:00
Brian Clozel
1cfedb20b8
Add new constructor to JettyClientHttpConnector
...
This commit adds a new constructor to `JettyClientHttpConnector` and
deprecates another one. Jetty is not creating `HttpClient` instances
using a builder API, but rather setting immutable configuration at
constructor time and using setters for the rest.
This commit addresses that by deprecating the constructor variant
accepting a `Consumer` and just delegating to Spring's implementation
for setting the client resources as needed.
Closes gh-22977
2019-05-28 16:59:51 +02:00
Сергей Цыпанов
7ef8cc9faf
Tiny improvements regarding ArrayList creation
...
Closes gh-23047
2019-05-28 16:08:58 +02:00
zyan
f492e37370
Fix typo
...
provices -> provides
See gh-23046
2019-05-28 16:00:35 +02:00
Sam Brannen
7c9c8220d8
Polish YAML tests
2019-05-28 15:27:11 +02:00
Sam Brannen
c6818fe15b
Polishing
...
See gh-23018
2019-05-28 14:53:24 +02:00
Sam Brannen
141ef9082f
Clean up Mockito usage
...
This commit migrates to the MockitoJUnitRunner where sensible, which
will later allow for an easier migration to Mockito's extension for
JUnit Jupiter.
In addition, this commit deletes unnecessary stubbing for various mocks
and polishes test fixture setup in various test classes.
2019-05-28 13:59:43 +02:00
Sam Brannen
d495902a9c
Polish Javadoc
2019-05-28 12:37:50 +02:00
Sam Brannen
c39c4211df
Introduce support for sorted Properties
...
This commit introduces an internal SortedProperties class that is a
specialization of java.util.Properties which sorts properties
alphanumerically based on their keys.
This can be useful when storing a java.util.Properties instance in a
properties file, since it allows such files to be generated in a
repeatable manner with consistent ordering of properties.
Comments in generated properties files can also be optionally omitted.
An instance of SortedProperties can be created via two new
createSortedProperties() factory methods in
org.springframework.core.CollectionFactory.
Closes gh-23018
2019-05-28 12:23:56 +02:00
Brian Clozel
98079a364d
Revert asciidoctorj-pdf upgrade
...
See gh-23006
2019-05-28 11:47:30 +02:00
Sebastien Deleuze
9905200f69
Merge branch '5.1.x'
2019-05-28 08:01:23 +02:00
Artsiom Chapialiou
0267bcb404
Fix broken asciidoc link to declarative transaction management
...
Closes gh-23041
2019-05-28 08:00:00 +02:00
Christoph Dreis
4e4145ac27
Avoid unnecessary call to get message type
...
Closes gh-23040
2019-05-28 07:21:08 +02:00
Sebastien Deleuze
bc205e0dbf
Remove charset parameter from Spring MVC JSON content type
...
This change is a follow-up to the ones done as part of gh-22788.
Closes gh-22954
2019-05-27 18:14:19 +02:00
Sam Brannen
30944ed2e2
Attempt to make AbstractSchedulingTaskExecutorTests more robust
2019-05-27 13:02:30 +02:00
Sam Brannen
bdf3960283
Suppress warnings in Gradle build
2019-05-27 12:15:50 +02:00
Sam Brannen
32277b74db
Attempt to make AbstractSchedulingTaskExecutorTests more robust
2019-05-27 12:01:34 +02:00
Sam Brannen
4b9f5a35a6
Polish contribution
2019-05-27 11:22:11 +02:00
Сергей Цыпанов
6964ed33bf
Allocate objects only when it's necessary
...
Closes gh-23036
2019-05-27 11:14:25 +02:00
Phillip Webb
6f2f5bb8c1
Fix annotation exceptions in tight memory
...
Update `AnnotationTypeMapping` so that instance comparisons are no
longer used when checking attribute methods. Prior to this commit,
in an environment with tightly constrained memory, the method cache
could be cleared and different method instances would be returned.
Closes gh-23010
2019-05-26 14:59:33 -07:00
Phillip Webb
e386e53f92
Use less confusing MergedAnnotation method names
...
Rename some `MergedAnnotation` methods to prevent using parent/child
terminology, specifically:
`getDepth()` has been renamed `getDistance()`
`getParent()` has been renamed `getMetaSource()`
`getTypeHierarchy()` has been renamed `getMetaTypes()`
The parent child naming was particularly confusing given that the
parent/child relationships were inverted from the way that a lot of
users think about meta-annotations. For example, a `@RequestMapping`
having a parent of `@GetMapping` feels odd given that `@GetMapping`
is the thing declaring the meta-annotation relationship.
The new method names are designed to align more closely with existing
terms. For example, `getMetaSource` hints at the relationship with
`isMetaAnnotated` and `getSource`.
Closes gh-22946
2019-05-26 13:15:59 -07:00
Sam Brannen
4f4427f550
Migrate TestNG assertions to AssertJ
...
Migrate all existing TestNG based assertions to AssertJ and add
Checkstyle rules to ensure they don't return.
See gh-23022
2019-05-26 18:29:39 +02:00
Sam Brannen
50cc23ca55
Use the JUnit Platform Test Kit in spring-test
2019-05-26 14:28:09 +02:00
Sam Brannen
43119deb08
Polishing
2019-05-26 14:28:09 +02:00
Sam Brannen
09db8881bb
Fix Checkstyle violation
2019-05-26 14:28:09 +02:00
stsypanov
4cc7b9b9fc
tiny simplifications regarding usage of Iterator
2019-05-25 20:32:43 +02:00
Juergen Hoeller
8f972a5a60
Merge branch '5.1.x'
2019-05-24 23:46:25 +02:00
Juergen Hoeller
80c6f2bcf9
Polishing
2019-05-24 23:31:32 +02:00
Juergen Hoeller
4d97a05fbc
SpringValidatorAdapter applies MessageFormat to {0}-containing message
...
Closes gh-23014
2019-05-24 23:31:06 +02:00
Juergen Hoeller
3c3d828e6c
Actually test LiteConfiguration arrangement
...
Closes gh-23013
2019-05-24 23:18:10 +02:00
Phillip Webb
6b9160b3ae
Restore transaction specific assertions
...
Revert 82d0e49d and instead create a `TransactionAssert` class.
Closes gh-23022
2019-05-24 11:09:44 -07:00
Sam Brannen
5a1217cafe
Migrate JUnit Jupiter assertions to AssertJ
...
Migrate all existing JUnit Jupiter based assertions to AssertJ and add
Checkstyle rules to ensure they don't return.
See gh-23022
2019-05-24 18:50:01 +02:00
Sam Brannen
f47481749b
Fix Checkstyle violation
2019-05-24 18:33:29 +02:00
Sam Brannen
ecf45edfb6
Upgrade to reactor Dysprosium snapshots
2019-05-24 18:19:35 +02:00
Sam Brannen
0aaf5785dd
Merge branch '5.1.x'
2019-05-24 18:18:21 +02:00
Sam Brannen
1e76e5086b
Upgrade to Reactor Californium snapshots
2019-05-24 18:05:53 +02:00
Stephane Nicoll
d106ae0d80
Upgrade to reactor Dysprosium snapshots
2019-05-24 14:22:55 +02:00
Stephane Nicoll
40c82d8871
Merge branch '5.1.x'
2019-05-24 14:22:19 +02:00
Stephane Nicoll
69080ade03
Upgrade to Reactor Californium snapshots
2019-05-24 14:21:37 +02:00
Sam Brannen
a4cd547b7e
Fix ScriptUtilsUnitTests
2019-05-24 10:46:50 +02:00
Sam Brannen
303216f4eb
Merge branch '5.1.x'
2019-05-24 10:18:25 +02:00
chrunchyjesus
771a05e878
Fix ScriptUtils for MS Windows line ending
...
Prior to this commit, ScriptUtils did not properly split SQL
scripts that contained line endings for MS Windows.
Closes gh-23019
2019-05-24 10:15:43 +02:00
Diego Castro
2f8aa368fe
Fix code example for validation on functional endpoints
...
Closes gh-23020
2019-05-24 09:41:17 +02:00
Phillip Webb
82d0e49de9
Inline methods from TransactionTestUtils
...
Delete `TransactionTestUtils` and inline AssertJ assertions
instead.
Closes gh-23022
2019-05-23 16:38:39 -07:00
Phillip Webb
9d74da006c
Migrate JUnit 4 assertions to AssertJ
...
Migrate all existing JUnit 4 `assert...` based assertions to AssertJ
and add a checkstyle rule to ensure they don't return.
See gh-23022
2019-05-23 15:52:49 -07:00
Phillip Webb
95a9d46a87
Migrate Hamcrest assertions to AssertJ
...
Migrate all existing `assertThat(..., Matcher)` assertions to AssertJ
and add checkstyle rules to ensure they don't return.
See gh-23022
2019-05-23 15:49:59 -07:00
Rossen Stoyanchev
2294625cf0
Exposes STOMP frame stats
...
Closes gh-23015
2019-05-23 18:32:11 -04:00
Rossen Stoyanchev
e09c5fd9e5
Use TaskExecutor instead of ThreadPoolTaskExecutor
...
Closes gh-22943
2019-05-23 14:26:51 -04:00
Rossen Stoyanchev
0b2fcbfe8a
Use TaskScheduler instead of ThreadPoolTaskScheduler
...
Closes gh-22943
2019-05-23 14:01:05 -04:00
Rossen Stoyanchev
d30778458a
Create SECURITY.md
2019-05-23 11:36:52 -04:00
Rossen Stoyanchev
31135cc2c4
Merge branch '5.1.x'
2019-05-23 10:41:33 -04:00
Rossen Stoyanchev
5f7541344a
Fix test failing after #99302f
2019-05-23 10:41:08 -04:00
Rossen Stoyanchev
3a5fb1fdf3
Fix test failing after #99302f
2019-05-23 10:38:08 -04:00
Rossen Stoyanchev
71396121a7
Merge branch '5.1.x'
2019-05-23 09:57:29 -04:00
Rossen Stoyanchev
99302fd6bd
AntPathMatcher#isPattern also checks URI vars
...
Closes gh-22959
2019-05-23 09:56:11 -04:00
D瓜哥
f39fde7460
Upgrade to asciidoctorj-pdf version 1.5.0-alpha.17
...
Closes gh-23006
2019-05-23 15:22:11 +02:00
Sam Brannen
f806594e60
Introduce getOrEmpty(String) convenience method in HttpHeaders
...
This commit introduces a getOrEmpty(String) method in HttpHeaders that
returns an immutable, empty list if no values are present for the
specified header name. This is provided as a convenience over the
existing get(String) method which returns null in such cases.
Closes gh-22949
2019-05-22 15:26:45 +02:00
Sam Brannen
9ca7354146
Polishing
2019-05-22 15:22:29 +02:00
Sam Brannen
819097a07a
Clean up warning in Gradle build
2019-05-22 14:48:40 +02:00
Juergen Hoeller
8a33ef2d14
Merge branch '5.1.x'
2019-05-21 21:06:38 +02:00
Juergen Hoeller
5aa0de7ac8
Upgrade to OkHttp 3.14.2, Joda-Time 2.10.2, OpenPDF 1.2.17, JRuby 9.2.7
2019-05-21 20:47:06 +02:00
Juergen Hoeller
701b7b8a18
Align ReactiveTypeDescriptor accessor methods
2019-05-21 20:46:27 +02:00
Rossen Stoyanchev
438d3710d3
Detect MimeType via ConnectionSetupPayload
...
Closes gh-23012
2019-05-21 14:07:59 -04:00
Juergen Hoeller
3645281c35
Polishing
2019-05-21 19:26:39 +02:00
Juergen Hoeller
ff838fd011
Consistently support CompletionStage in ReactiveAdapterRegistry
...
Aligns ReactiveAdapterRegistry with MVC/messaging handler methods in terms of recognizing CompletionStage as well as CompletableFuture. Includes consistent use of ReactiveAdapter for reactive transactions.
Closes gh-23011
2019-05-21 19:26:12 +02:00
Arjen Poutsma
9b3c92e8d2
Add leading slash for path predicate if not present
...
This commit adds a leading slash for path predicates in both
WebFlux.fn and WebMvc.fn.
Closes gh-22795
2019-05-21 12:09:36 +02:00
Juergen Hoeller
c329bad42a
Merge branch '5.1.x'
2019-05-21 00:16:35 +02:00
Juergen Hoeller
8cd3daad0d
Polishing
2019-05-21 00:15:40 +02:00
Juergen Hoeller
171e8f56a3
Merge branch '5.1.x'
2019-05-20 22:27:37 +02:00
Juergen Hoeller
75d751d968
Polishing
2019-05-20 22:19:11 +02:00
Juergen Hoeller
55e601c322
Revise system property replacement tests
...
See gh-22959
2019-05-20 22:19:03 +02:00
stsypanov
6f07a504b8
A couple of trivial simplifications
2019-05-20 21:41:15 +02:00
Phillip Webb
02850f357f
Migrate exception checking tests to use AssertJ
...
Migrate tests that use `@Test(expectedException=...)` or
`try...fail...catch` to use AssertJ's `assertThatException`
instead.
2019-05-20 10:47:53 -07:00
Phillip Webb
fb26fc3f94
Polishing
2019-05-20 10:46:20 -07:00
Juergen Hoeller
a363fed209
Merge branch '5.1.x'
2019-05-20 17:21:07 +02:00
Juergen Hoeller
515d627aec
Upgrade to Jackson 2.9.9
2019-05-20 17:19:34 +02:00
Juergen Hoeller
7edf8aca8e
Drop DefaultNamespaceHandlerResolverTests.testResolveInvalidHandler
...
Closes gh-22994
2019-05-20 17:19:18 +02:00
Juergen Hoeller
52e02deb53
Configurable connection recovery in SimpleMessageListenerContainer
...
Closes gh-22987
2019-05-20 17:19:00 +02:00
Juergen Hoeller
c5d6b74321
Fix stale-if-error xsd documentation
...
Closes gh-22983
2019-05-20 17:18:11 +02:00
Juergen Hoeller
4c334de850
Use Map.values() iteration within isMultipart check
...
Closes gh-22982
2019-05-20 17:17:51 +02:00
Johnny Lim
21e163e5da
Fix typo
2019-05-20 16:41:05 +02:00
Rossen Stoyanchev
bd910fc62b
Fix checkstyle errors
2019-05-16 20:49:49 -04:00
Rossen Stoyanchev
60e4649ff3
Merge branch '5.1.x'
2019-05-16 20:42:09 -04:00
Rossen Stoyanchev
da4430e27e
BindingResult for resolved async attributes
...
ViewResolutionResultHandler no longer adds BindingResult objects for
async model attributes. Instead AbstractView adds them later when
those attributes are resolved to concrete values.
Closes gh-22933
2019-05-16 20:41:37 -04:00
Rossen Stoyanchev
172afb510a
Polish AbstractView in WebFlux
2019-05-16 14:37:04 -04:00
Rossen Stoyanchev
ed2a3bd451
Take advantage of Encoder#encodeValue
...
EncoderHttpMessageWriter takes advantage of the Encoder#encodeValue
that's new in 5.2 in order to produce a Mono<DataBuffer> instead of
producing a Flux<DataBuffer> and then using flux.singleOrEmpty().
Closes gh-22952
2019-05-15 17:31:59 -04:00
Rossen Stoyanchev
013249757a
Merge branch '5.1.x'
2019-05-15 16:44:05 -04:00
Rossen Stoyanchev
ffd7cffa14
Fix typo in HttpHeaders
...
Closes gh-22976
2019-05-15 16:42:07 -04:00
Rossen Stoyanchev
e0b9ed6d72
Fix typo in reference
...
Closes gh-22975
2019-05-15 16:13:02 -04:00
Rossen Stoyanchev
0274752fe9
Use singleOrEmpty to avoid upstream cancel
...
Closes gh-22952
2019-05-15 16:02:28 -04:00
Arjen Poutsma
a30a134c23
Make StringDecoder use DataBufferUtils.split
...
* Added DataBufferUtils.split variant that takes multiple delimiters
as argument (instead of 1).
* Use this new split() variant from within StringDecoder, replacing
its inefficient algorithm with the Knuth-Morris-Pratt algorithm.
2019-05-15 16:07:28 +02:00
Rossen Stoyanchev
b1912f6acc
Fix checkstyle error
2019-05-15 08:29:41 -04:00
Rossen Stoyanchev
97c2de915a
Add RouteMatcher
...
Closes gh-22642
2019-05-14 21:44:39 -04:00
Rossen Stoyanchev
afc0ae3752
Add hasPatternSyntax method to PathPattern
2019-05-14 15:36:47 -04:00
Rossen Stoyanchev
ac6c96a391
Polish
2019-05-13 13:45:25 -04:00
Juergen Hoeller
e0654a5b3d
Merge branch '5.1.x'
2019-05-13 19:22:07 +02:00
Juergen Hoeller
d3110c452e
SpEL documentation refinements
2019-05-13 19:15:45 +02:00
Juergen Hoeller
9755b59197
Merge branch '5.1.x'
2019-05-13 18:05:07 +02:00
Juergen Hoeller
0796d9af0d
Upgrade to Groovy 2.5.7
2019-05-13 18:03:23 +02:00
Juergen Hoeller
4af94dfc5d
Clarify AbstractBeanDefinition.getBeanClass() return semantics
...
Closes gh-22960
2019-05-13 18:03:12 +02:00
Juergen Hoeller
5910d2d4dc
Add missing Nullable annotation to assertNotNull
...
See gh-22932
2019-05-13 18:03:01 +02:00
stsypanov
9ca8681f79
Iteration over a map using EntrySet
2019-05-13 15:38:13 +02:00
Sam Brannen
785e8d8116
Polish MergedAnnotation support
2019-05-13 14:11:29 +02:00
Juergen Hoeller
cfc4a59135
Merge branch '5.1.x'
2019-05-13 13:40:07 +02:00
Juergen Hoeller
daee6f5bd9
Avoid expensive assertions in web resource resolution
...
Closes gh-22955
2019-05-13 13:28:07 +02:00
Johnny Lim
9a6ce66bd9
Add a missing single quote in assertion message
2019-05-13 12:04:22 +02:00
Sam Brannen
73dbd06361
Enforces static imports for JUnit 4 assertions and assumptions
...
This commit configures Checkstyle to enforces static imports for JUnit 4
assertions and assumptions.
See gh-22932
2019-05-12 15:13:07 +02:00
Sam Brannen
deecab6311
Use assertThat from Hamcrest instead of JUnit 4
...
org.junit.Assert.assertThat() is deprecated as of JUnit 4.13.
See gh-22894
2019-05-12 14:46:55 +02:00
Sam Brannen
724c805211
Discontinue use of JUnit 3 APIs
...
This commit also ensures that the JSR-330 TCK is executed with the
normal build by adhering to naming conventions for test classes.
See gh-22894
2019-05-12 14:46:55 +02:00
Sam Brannen
5685e9dfa3
Add Checkstyle rules for deprecated JUnit APIs
...
This commit adds Checkstyle rules to disallow imports of the following.
- junit.framework.*
- org.junit.Assert.assertThat
- org.junit.Assume.assumeThat
See gh-22894
2019-05-12 14:46:55 +02:00
Sam Brannen
9e1ed6c771
Fix build on JDK 9+
2019-05-12 13:46:14 +02:00
Sam Brannen
da1b004254
Merge branch '5.1.x'
2019-05-11 18:21:44 +02:00
Sam Brannen
e1b0bf22bf
Polish Javadoc for AssertionErrors
...
See gh-22932
2019-05-11 18:21:06 +02:00
Sam Brannen
33fcde4c3e
Merge branch '5.1.x'
2019-05-11 18:04:48 +02:00
Sam Brannen
233b225b4f
Remove JUnit dependency from HeaderResultMatchers
...
Prior to this commit, HeaderResultMatchers had a direct dependency on
org.junit.Assert which forces JUnit 4 to be present on the classpath.
This commit fixes this by introducing assertNotNull() in
org.springframework.test.util.AssertionErrors and delegating to that
instead.
Fixes gh-22932
2019-05-11 18:03:42 +02:00
Sam Brannen
6ef7d7124e
Clean up warnings
2019-05-11 15:51:06 +02:00
Sam Brannen
64819bbc1d
Clean up warnings
2019-05-10 18:00:29 +02:00
Sam Brannen
0cff7eb32c
Fix Javadoc links
2019-05-10 17:40:03 +02:00
Sam Brannen
9b61316c2e
Clean up warnings in spring-web
2019-05-10 17:31:23 +02:00
Stephane Nicoll
f188aab5f2
Merge branch '5.1.x'
2019-05-10 10:49:59 +02:00
Stephane Nicoll
8c77d0b70d
Merge pull request #22941 from chenqimiao
...
* pr/22941:
Fix typo in package-info.java
2019-05-10 10:49:43 +02:00
chenqimiao
e3137f11df
Fix typo in package-info.java
...
Closes gh-22941
2019-05-10 10:49:13 +02:00
Stephane Nicoll
6d69a4e03a
Merge branch '5.1.x'
2019-05-10 09:57:25 +02:00
Stephane Nicoll
4430ec7d2d
Merge pull request #22938 from crewmanmud
...
* pr/22938:
Fix typo
2019-05-10 09:57:07 +02:00
Andrew McCallum
9294b1d7eb
Fix typo
...
Closes gh-22938
2019-05-10 09:56:47 +02:00
Stephane Nicoll
4606209ad4
Merge branch '5.1.x'
2019-05-09 17:09:54 +02:00
Spring Buildmaster
f4380e3040
Next Development Version
2019-05-09 14:55:58 +00:00
Sam Brannen
d8f1d56100
Fix broken test
2019-05-09 16:21:54 +02:00
Sam Brannen
1be29d5933
Document automatic constructor injection in JUnit Jupiter
...
Closes gh-22928
2019-05-09 16:16:32 +02:00
Sebastien Deleuze
c601ecf169
Merge branch '5.1.x'
2019-05-09 15:00:53 +02:00
Sebastien Deleuze
c8d49ed284
Fix EncoderHttpMessageWriter.isStreamingMediaType()
...
Closes gh-22936
2019-05-09 14:57:15 +02:00
Juergen Hoeller
0b50d1eff3
Merge branch '5.1.x'
2019-05-09 14:29:37 +02:00
Denis Zavedeev
484ec64305
Minor integration doc refinements
2019-05-09 14:27:22 +02:00
Denis Zavedeev
c80028b71e
Fix trivial errors in integration.adoc
2019-05-09 13:50:26 +02:00
Sam Brannen
8e29eca1eb
Merge branch '5.1.x'
2019-05-09 13:25:21 +02:00
Sam Brannen
59fdce1116
Fix bug in EncoderHttpMessageWriter.isStreamingMediaType()
2019-05-09 13:24:27 +02:00
Sam Brannen
e465f51d56
Suppress deprecation warnings
2019-05-09 13:21:42 +02:00
Sam Brannen
dc1c110288
Delete dead code
2019-05-09 13:21:27 +02:00
Rossen Stoyanchev
fd48bf1dbe
Merge branch '5.1.x'
2019-05-08 21:05:42 -04:00
Rossen Stoyanchev
c717d245bd
Upgrade to Californium-SR8
2019-05-08 21:04:45 -04:00
Rossen Stoyanchev
ed61f44545
Upgrade to Disprosium-M1
...
Closes gh-22930
2019-05-08 20:55:31 -04:00
Rossen Stoyanchev
06c3a058f4
Use most recent RSocket RC for M2 release
2019-05-08 20:34:22 -04:00
Juergen Hoeller
8b08b6812a
Merge branch '5.1.x'
2019-05-09 02:26:23 +02:00
Juergen Hoeller
190b751147
Support any HttpEntity implementing ResolvableTypeProvider
...
Closes gh-22931
2019-05-09 02:09:31 +02:00
Phillip Webb
798b51f4a3
Migrate to BDD Mockito
...
Migrate all tests to consistently use BDD Mockito. Also add
checksyle rule to enforce going forwards.
2019-05-08 13:46:13 -07:00
Phillip Webb
816bbee8de
Remove '.*' imports from tests
...
Organize test imports to expand all '.*' static imports into
fully qualified imports.
This update will allow us to use additional checkstyle rules in
the future, and will also help if we migrate fully to AssertJ.
2019-05-08 09:55:09 -07:00
Phillip Webb
1b985fb3da
Update static import limit in eclipse prefs
...
Update eclipse preferences so that static imports no longer use
`.*`.
2019-05-08 09:53:01 -07:00
Phillip Webb
66eb86f055
Delete unused Matchers class
...
Delete the `Matches` class since it's no longer being used.
2019-05-08 09:52:39 -07:00
Juergen Hoeller
c4a95c99e5
Upgrade to Reactor Californium SR7
2019-05-08 18:19:19 +02:00
Juergen Hoeller
d3b713d5f0
Upgrade to Protobuf 3.7.1 and HtmlUnit 2.35
2019-05-08 17:52:56 +02:00
Juergen Hoeller
fb29088670
Revise LinkedCaseInsensitiveMap's lazy key/value/entry collections
...
Closes gh-22926
2019-05-08 17:52:28 +02:00
Juergen Hoeller
82d32f0875
Remove unused import
2019-05-08 17:51:54 +02:00
Sam Brannen
4038d590a1
Suppress deprecation warning in Gradle build
2019-05-08 17:18:41 +02:00
Rossen Stoyanchev
44659f4945
Unwrap Part content in asyncPart builder method
...
Closes gh-22876
2019-05-08 10:59:58 -04:00
Sam Brannen
6a05b97df3
Log identity hash for ApplicationContext for context cache hits/misses
...
DefaultCacheAwareContextLoaderDelegate now logs the identity hash code
for an application context instance that was stored in or retrieved from
the context cache in the Spring TestContext Framework.
Closes gh-22925
2019-05-08 16:39:23 +02:00
Sam Brannen
4d1637a9b7
Avoid warnings in RequestMappingHandlerMappingTests
2019-05-08 16:29:31 +02:00
Phil Webb
d7320de871
Migrate away from ExpectedException ( #22922 )
...
* Add limited checkstyles to test code
Add a limited set of checkstyle rules to the test codebase to improve
code consistency.
* Fix checksyle violations in test code
* Organize imports to fix checkstyle for test code
* Migrate to assertThatExceptionOfType
Migrate aware from ExpectedException rules to AssertJ exception
assertions. Also include a checkstyle rules to ensure that the
the ExpectedException is not accidentally used in the future.
See gh-22894
2019-05-08 16:25:52 +02:00
Rossen Stoyanchev
7e6e3d7027
Switch writeAcceptCharset to false by default
...
Closes gh-22506
2019-05-08 09:56:52 -04:00
Rossen Stoyanchev
a9f0eae4ab
Merge branch '5.1.x'
2019-05-08 09:41:10 -04:00
Rossen Stoyanchev
6e0dfd6999
Check if Accept-Charset is present before adding it
...
Closes gh-22506
2019-05-08 09:40:32 -04:00
Sam Brannen
77eef47483
Support automatic constructor injection in JUnit Jupiter
...
Prior to this commit, dependency injection of all arguments in a test
class constructor invoked by JUnit Jupiter was only possible if the
constructor was explicitly annotated with @Autowired.
This commit introduces support for a configurable "test constructor
autowire" mode which defaults to false in order to remain backwards
compatible.
Specifically, this mode can be configured globally for an entire test
suite via a new "spring.test.constructor.autowire" JVM system property
that can alternatively be configured via the SpringProperties
mechanism. In addition, the global "test constructor autowire" mode can
be overridden locally on a per-class basis via the new @TestConstructor
annotation.
Closes gh-22286
2019-05-08 14:51:43 +02:00
Juergen Hoeller
eb16e853b1
Fix JDK 9+ generics compilation problem in TransactionAspectSupport
...
Includes consistent mentioning of ReactiveTransactionManager in javadoc.
Closes gh-22923
2019-05-08 14:01:12 +02:00
Arjen Poutsma
dc01917dae
Javadoc
2019-05-08 12:21:00 +02:00
Arjen Poutsma
2352688ccb
MultipartIntegrationTests should not bind to same part multiple times
...
DefaultMultipartMessageReader does not cache the part contents, so
binding to the same part multiple times does not work.
Rewrote this test to use separate HTTP request instead.
2019-05-08 12:10:20 +02:00
Arjen Poutsma
e7cca7792d
Add way to override default multipartReader
...
This commit introduces a way to override the default multipart reader,
for instance to the SynchronossPartHttpMessageReader.
2019-05-08 12:10:20 +02:00
Arjen Poutsma
32915d8bf5
Add logging to DefaultMultipartMessageReader
2019-05-08 12:10:20 +02:00
Arjen Poutsma
e625ace8c8
Add reference counting for UndertowDataBuffer
...
This commit adds proper reference counting to the UndertowDataBuffer.
2019-05-08 12:09:16 +02:00
Arjen Poutsma
cdd346222c
Add reference counting for UndertowDataBuffer
...
This commit adds proper reference counting to the UndertowDataBuffer.
2019-05-08 11:58:48 +02:00
Rossen Stoyanchev
45147c23c1
Empty body checks in ConsumesRequestCondition
...
Normally consumes matches the "Content-Type" header but what should be done if
there is no content? This commit adds checks for method parameters with
@RequestBody(required=false) and if "false" then also match requests with no content.
Closes gh-22010
2019-05-07 22:03:36 -04:00
Juergen Hoeller
cdf51c3d51
Nullability refinements and related polishing
2019-05-08 00:27:56 +02:00
Juergen Hoeller
c5b3848357
Nullability refinements and related polishing
...
Includes fix for typo in visitor class names.
See gh-22909
2019-05-08 00:27:47 +02:00
Phillip Webb
7031964e49
Deprecate StandardMetadata constructors
...
Deprecate the public `StandardMetadata` constructors to make it clearer
that these classes should not be instantiated directly. A new
`AnnotationMetadata.introspect` factory method has been added which
can now be used to obtain instances.
This change will allow use to make the constructors package private
and drop the `nestedAnnotationsAsMap` parameter in a future release.
Closes gh-22906
2019-05-07 23:12:42 +02:00
Phillip Webb
7fbf3f97cd
Add SimpleAnnotationMeta classes and readers
...
Replace the existing ASM based readers with new implementations that
also support MergedAnnotations. The meta-data classes themselves are
now immutable, and constructed via separate reader classes.
The `SimpleMetadataReader` class has been updated to return the new
classes, however the old ones remain since some of them are public
and might be being used directly.
Closes gh-22884
2019-05-07 23:12:42 +02:00
Phillip Webb
8c2ccfe6a3
Add MergedAnnotations support to meta-data classes
...
Add `AnnotatedTypeMetaData.getAnnotations()` that can be used to access
annotation details using the `MergedAnnotations` interface.
Where possible, the existing annotation methods have been migrated to
call `getAnnotation()`, rather than needing their own implementation.
The existing ASM based meta-data implementations have not been updated
since they will be deprecated and replaced in a subsequent commit.
See gh-22884
2019-05-07 23:12:42 +02:00
Phillip Webb
30ba80a3c3
Reduce meta-data code duplicate with default methods
...
Extract and pull-up some common method implementations and make them
default methods of the interface.
See gh-22884
2019-05-07 23:12:42 +02:00
Phillip Webb
f592c1f211
Add additional class/method meta-data tests
...
Add some additional tests to provide more coverage of class and method
meta-data support.
See gh-22884
2019-05-07 23:12:42 +02:00
Phillip Webb
9738e4886c
Use ReflectionUtils to get declared methods
...
Update `StandardAnnotationMetadata` to use `ReflectionUtils` when
obtaining declared methods. This update is primarily so that the common
method cache can be used.
Closes gh-22907
2019-05-07 23:12:42 +02:00
Phillip Webb
1fa5937834
Skip java.lang.annotations when reading metadata
...
Update `StandardAnnotationMetadata` and `AnnotationMetadataReadingVisitor`
so that `java.lang.annotation` annotations are consistently skipped.
Closes gh-22885
2019-05-07 23:12:42 +02:00
Phillip Webb
8a293f51a4
Don't expose RetentionPolicy.CLASS annotations
...
Update ASM based metadata readers so that only RetentionPolicy.RUNTIME
annotations are exposed. This aligned behavior with the reflection based
implementation.
Closes gh-22886
2019-05-07 23:12:42 +02:00
Phillip Webb
9d6cf57cb7
Add MergedAnnotations.of method
...
Add a factory method to `MergedAnnotation` that allows an instance to
be created for an explicit collection of root annotations. This method
will allow ASM based readers to expose a `MergedAnnotation` instance
that has root annotations loaded from bytecode, and meta-annotations
loaded using reflection.
See gh-22884
2019-05-07 23:12:42 +02:00
Phillip Webb
daec3531b3
Support String->Class adaptation in MergedAnnotation
...
Update TypeMappedAnnotation so that Strings can be used to represent
Class attribute values. This will allow ASM annotation readers to
present a `MergedAnnotation` instance without necessarily having the
actual class values on the classpath.
When the underlying value is a String, any calls to
`getValue(name, String.class)` or `asMap(Adapt.CLASS_TO_STRING)` will
simply return the original String. Calls that need the actual Class
result (such as `getClass`) will use `Class.forName` and may throw
a `ClassNotFoundException` at that point.
This commit also allows an empty Object[] to be used to represent
any empty primitive array.
See gh-22884
2019-05-07 23:12:42 +02:00
Phillip Webb
e11990e63d
Polishing MergedAnnotation code
2019-05-07 23:12:42 +02:00
Phillip Webb
d4a761abea
Rename some MergedAnnotation from methods to of
...
Rename `from` to `of` for the `MergedAnnotation` factory methods that
work with Maps. The previous name was a little confusing, especially
when an annotation source parameter was specified. The new method name
helps to make it clearer when the user is explicitly defining the
attributes of the annotation, as opposed to picking them up from the
source.
2019-05-07 23:12:42 +02:00
Phillip Webb
3b145a5a73
Add MergedAnnotation.getTypeHierarchy method
...
Add a `getTypeHierarchy()` method to `MergedAnnotation` that can be used
to return the full type hierarchy information. This method is
specifically designed to be used in combination with
`MergedAnnotationPredicates.unique`.
This update also allows us to delete the `parentAndType` method
from `AnnotatedElementUtils`.
Closes gh-22908
2019-05-07 23:12:42 +02:00
Phillip Webb
f86affe404
Extract integration test classes from package-info
...
Extract the inner classes from package-info into their own files to
prevent local build problems and to make them easier to find.
2019-05-07 23:12:42 +02:00
Juergen Hoeller
fff3813d75
Properly detect importing class metadata for lite configuration class
...
Closes gh-22920
2019-05-07 21:23:47 +02:00
Arjen Poutsma
00a5106bfa
Add route(RequestPredicate, HandlerFunction) to RouterFunctions builder
...
Closes gh-22701
2019-05-07 16:49:02 +02:00
Mark Paluch
bb002af8af
Fix suspend/resume in AbstractReactiveTransactionManager
...
We now correctly unwrap suspended resources instead capturing
the Mono emitting suspended resources.
We also properly continue resume by chaining resume Mono's
instead of terminating eagerly.
2019-05-07 15:51:27 +02:00
Arjen Poutsma
55b56b8c5c
Javadoc
...
Closes gh-22893
2019-05-07 15:24:33 +02:00
Arjen Poutsma
59f6044c09
Add route(RequestPredicate, HandlerFunction) to RouterFunctions builder
...
Closes gh-22701
2019-05-07 15:06:59 +02:00
Johnny Lim
49570ae2f3
Fix typo
2019-05-07 14:25:22 +02:00
Juergen Hoeller
e3fa4e1350
Merge branch '5.1.x'
2019-05-07 14:24:28 +02:00
Juergen Hoeller
ecc165a94f
Consistent spelling on index page
2019-05-07 13:46:27 +02:00
Nicofisi
0e980324e6
Add a space in the documentation index file
2019-05-07 13:29:59 +02:00
Juergen Hoeller
ba1c7192c9
Merge branch '5.1.x'
2019-05-07 13:09:44 +02:00
Juergen Hoeller
46e5dd6420
Consistent handling of empty List entries in LinkedMultiValueMap
...
Closes gh-22912
2019-05-07 13:08:42 +02:00
Sam Brannen
ccb01e663a
Merge branch '5.1.x'
2019-05-07 13:03:45 +02:00
Sam Brannen
4aaec942c4
Introduce HTTPS mappings in spring.schemas files
...
Closes gh-22903
2019-05-07 12:56:42 +02:00
Juergen Hoeller
7e5aacf8a2
Merge pull request #22421 from olszewskimichal/LinkedMultiValueMap-OutOfBoundException-When-EmptyList
...
LinkedMultiValueMap.getFirst - check that values is not empty
2019-05-07 12:44:05 +02:00
Juergen Hoeller
8eb9782ca2
Polishing
2019-05-07 12:43:36 +02:00
Arjen Poutsma
fb642ce723
Introduce DefaultMultipartMessageReader
...
This commit introduces the DefaultMultipartMessageReader, a fully
reactive multipart parser that does have any third party dependencies.
Closes gh-21659
2019-05-07 12:14:45 +02:00
Arjen Poutsma
f747ba282a
Add DataBufferUtils.matcher and split
...
Added two methods to DataBufferUtils:
* matcher(byte[]), which returns a Matcher object that can be used to
find a delimiter in a data buffer.
* split(Publisher<DataBuffer>, byte[] delimiter), which splits a given
stream of data buffers around a given delimiter.
2019-05-07 12:14:45 +02:00
Arjen Poutsma
b74c09d12e
Add DataBuffer.retainedSlice
...
Add method retainedSlice to the DataBuffer, defaulting to using
DataBufferUtils for retain, but allowing for ByteBuf specific override.
2019-05-07 12:14:45 +02:00
Mark Paluch
1d80cbea35
Replace signal materialization in TransactionAspectSupport with usingWhen
...
We now use Flux.usingWhen() instead materialize/dematerialize operators
to reuse Reactor's resource closure.
Until usingWhen() accepts a BiFunction to consume error signals,
we need to map error signals outside of usingWhen which requires
re-wrapping of the ReactiveTransaction object.
Also, reuse the current TransactionContext to leave Transaction
creation/propagation entirely to ReactiveTransactionManager instead
of creating new TransactionContexts.
2019-05-07 11:23:20 +02:00
Juergen Hoeller
28c5d7b586
Merge branch '5.1.x'
2019-05-07 02:12:11 +02:00
Juergen Hoeller
053b95ceeb
Refer to non-deprecated Jackson 2.5+ addMixIn method in javadoc
2019-05-07 02:06:40 +02:00
Stephane Maldini
d45f7c4828
Use explicit onErrorMap(class.java) instead of reactor kotlin extension
2019-05-06 16:45:01 -07:00
Juergen Hoeller
d16beb0e55
Polishing
...
See gh-22900
2019-05-07 01:40:53 +02:00
Juergen Hoeller
85cecb66e5
Consistent parameter retrieval across InvocableHandlerMethod variants
...
See gh-22900
2019-05-07 01:33:07 +02:00
Juergen Hoeller
f56c70d2f0
Merge branch '5.1.x'
2019-05-07 01:23:16 +02:00
Stephane Maldini
fd36d1efe6
Use explicit expectError(class.java) instead of reactor kotlin extension
2019-05-06 16:22:25 -07:00
Juergen Hoeller
c841b62bb0
Consistent parameter retrieval across InvocableHandlerMethod variants
...
See gh-22900
2019-05-07 01:20:05 +02:00
Stephane Maldini
3f8be3416e
Use explicit cast to avoid dependency on reactor-core kotlin extension
2019-05-06 16:13:05 -07:00
Juergen Hoeller
30a1f6fed5
Consistent exception naming across InvocableHandlerMethod variants
...
See gh-22900
2019-05-07 01:00:45 +02:00
Juergen Hoeller
4b06d8e511
Merge branch '5.1.x'
2019-05-07 00:59:56 +02:00
Juergen Hoeller
3f85a7db1b
Consistent exception naming across InvocableHandlerMethod variants
...
See gh-22900
2019-05-07 00:48:27 +02:00
Juergen Hoeller
379d81da74
Consistent thread-safe handling of manualSingletonNames Set
...
Closes gh-22896
2019-05-07 00:47:59 +02:00
Ippei Nawate
47ff92873b
Add null check
2019-05-07 00:23:48 +02:00
Sebastien Deleuze
2b3df1fa30
Merge branch '5.1.x'
2019-05-06 22:11:11 +02:00
Sebastien Deleuze
4b31feb243
Clarify Jackson2ObjectMapper.modules(ToInstall) semantics
...
Closes gh-22747
2019-05-06 22:09:56 +02:00
Rossen Stoyanchev
53cadf15e7
Deferred handling of Flux error in Spring MVC
...
This commit defers flushing of the response until the first item is
emitted that needs to be written (and flushed) to the response.
This makes Spring MVC consistent with WebFlux in this regard.
Closes gh-21972
2019-05-06 12:26:25 -04:00
Rossen Stoyanchev
15e1af2281
Protected methods to determine payload target type
...
Closes gh-22035
2019-05-06 09:34:21 -04:00
Sebastien Deleuze
e16a134075
Refine WebFlux Kotlin extensions
...
ServerRequest:
- awaitPrincipalOrNull is renamed to awaitPrincipal since
there is no non-nullable variant
ServerResponse:
- new BodyBuilder.sse() extension
- BodyBuilder.bodyToServerSentEvents is deprecated in favor
of sse().body()
- BodyBuilder.bodyAndAwait(flow: Flow<T>) is renamed to
bodyFlowAndAwait to avoid shadowing of
BodyBuilder.bodyAndAwait(body: Any)
- BodyBuilder.bodyToServerSentEventsAndAwait is removed,
sse().bodyAndAwait() should be used instead
Closes gh-22899
2019-05-06 11:00:58 +02:00
Sam Brannen
d616e10dca
Use assertThat from Hamcrest instead of JUnit 4
...
org.junit.Assert.assertThat() is deprecated as of JUnit 4.13.
See gh-22894
2019-05-05 19:26:04 +02:00
Sam Brannen
47c39304af
Use assertThat from Hamcrest instead of JUnit 4
...
org.junit.Assert.assertThat() is deprecated as of JUnit 4.13.
See gh-22894
2019-05-05 18:27:38 +02:00
Sam Brannen
c79fdfb668
Use assertThat from Hamcrest instead of JUnit 4
...
org.junit.Assert.assertThat() is deprecated as of JUnit 4.13.
See gh-22894
2019-05-05 18:09:11 +02:00
Sam Brannen
d4379630e2
Use assertThat from Hamcrest instead of JUnit 4
...
org.junit.Assert.assertThat() is deprecated as of JUnit 4.13.
See gh-22894
2019-05-05 17:31:31 +02:00
Sam Brannen
0aeb7d1e02
Delete dead code in TransactionSynchronizationManager
2019-05-05 17:29:54 +02:00
Sam Brannen
1928167d5d
Delete dead code in ReactiveTransactionInterceptorTests
2019-05-05 17:21:15 +02:00
Sam Brannen
772ef40920
Upgrade to JUnit 4.13-beta-3
...
See gh-22894
2019-05-05 16:56:48 +02:00
Sam Brannen
7ed4df20a8
Ensure AbstractReactiveTransactionManager compiles in Eclipse IDE
2019-05-05 16:46:11 +02:00
Sam Brannen
3dc38a08c8
Add missing return in AbstractReactiveTransactionManager.processCommit()
2019-05-05 16:30:26 +02:00
Sam Brannen
21864c80d7
Suppress warning
2019-05-05 16:28:45 +02:00
Stephane Nicoll
0b97cc9ebd
Polish
2019-05-05 09:13:09 +02:00
Stephane Nicoll
7d0a49474e
Merge pull request #22891 from rewolf
...
* pr/22891:
Polish contribution
Polish CONTRIBUTING.md
2019-05-05 09:08:58 +02:00
Stephane Nicoll
1542d97dab
Polish contribution
...
Closes gh-22891
2019-05-05 09:08:21 +02:00
Andrew Flower
6eb4ac60ab
Polish CONTRIBUTING.md
...
See gh-22891
2019-05-05 09:08:06 +02:00
Juergen Hoeller
28039057fd
Consistent naming of HandlerMethodArgumentResolver implementations
...
Includes combined imports of assertion methods and related polishing.
Closes #22889
2019-05-04 18:30:56 +02:00
Juergen Hoeller
30bbf91dba
Rename PayloadArgumentResolver to PayloadMethodArgumentResolver
...
Closes gh-22888
2019-05-04 17:35:34 +02:00
Juergen Hoeller
57984c5705
Move package annotation.support.reactive to annotation.reactive
...
Aligned with invocation.reactive and transaction.reactive packages.
Closes gh-22887
2019-05-04 17:34:32 +02:00
Juergen Hoeller
9eb095d921
Merge branch '5.1.x'
2019-05-04 12:04:48 +02:00
Juergen Hoeller
293188c797
Consistent non-use of firstIndex 0 in PatternMatchUtils
...
Closes gh-22837
2019-05-04 12:01:54 +02:00
Juergen Hoeller
9674ce4906
Avoid HashSet/StringBuilder allocation for non-placeholder values
...
Closes gh-22870
2019-05-04 12:00:22 +02:00
Johnny Lim
d489227874
Use HttpHeaders constants where possible
2019-05-04 11:14:08 +02:00
Juergen Hoeller
ffbecf1427
Fix Checkstyle violation
2019-05-03 18:24:30 +02:00
Juergen Hoeller
f0f6af2926
Merge branch '5.1.x'
2019-05-03 18:13:12 +02:00
Juergen Hoeller
ea4a174583
Polishing
2019-05-03 18:10:41 +02:00
Juergen Hoeller
3d6476da46
Polishing
2019-05-03 17:29:22 +02:00
Juergen Hoeller
a7949ac84a
Consistent use of StringUtils.hasLength(String) vs isEmpty(Object)
2019-05-03 17:29:14 +02:00
Mark Paluch
83046531da
Replace signal materialization in TransactionalOperator with usingWhen
...
We now use Flux.usingWhen() instead materialize/dematerialize operators
to reuse Reactor's resource closure.
Until usingWhen() accepts a BiFunction to consume error signals,
we need to map error signals outside of usingWhen which requires
re-wrapping of the ReactiveTransaction object.
2019-05-03 16:13:37 +02:00
Mark Paluch
9cff07ce35
Fix doCleanupAfterCompletion invocation
...
doCleanupAfterCompletion gets now subscribed to when processing
cleanup after a new transaction.
2019-05-03 16:13:37 +02:00
Juergen Hoeller
ec8689d1fc
Merge branch '5.1.x'
2019-05-03 14:23:59 +02:00
Juergen Hoeller
84266d71e9
Polishing
2019-05-03 14:08:20 +02:00
Juergen Hoeller
4e10735e8f
MockHttpServletRequest restores default locale for empty accept header
...
Closes gh-22877
2019-05-03 14:08:12 +02:00
Sebastien Deleuze
fc8d5c068c
Support final @Configuration(proxyBeanMethods = false) classes
...
Closes gh-22869
2019-05-03 13:45:14 +02:00
Juergen Hoeller
a2a6bc3d47
Introduce TransactionDefinition.withDefaults() shortcut
...
Such a static unmodifiable TransactionDefinition with defaults can be used for getTransaction(null) calls, now also possible for getReactiveTransaction. Furthermore, it can be used for a simple TransactionalOperator.create(ReactiveTransactionManager) method without an internal dependency on the transaction.support package.
See gh-22646
2019-05-03 12:28:41 +02:00
Juergen Hoeller
eaa9a78d5d
Merge branch '5.1.x'
2019-05-03 00:23:57 +02:00
Juergen Hoeller
7aa61d9ee0
Upgrade to Jetty 9.4.18 and Netty 4.1.36
2019-05-03 00:12:03 +02:00
Juergen Hoeller
5b1b1bae37
Consistent use of try-with-resources for local resource closing
2019-05-03 00:11:47 +02:00
Juergen Hoeller
31c3b8a291
Avoid unguarded String concatenation for debug/trace logging
...
Closes gh-22874
2019-05-03 00:10:56 +02:00
Juergen Hoeller
ce9162065c
Merge branch '5.1.x'
2019-05-02 17:52:12 +02:00
Juergen Hoeller
f359c117d3
Polishing
2019-05-02 17:28:32 +02:00
Juergen Hoeller
8158b6fd86
Update postProcessBeforeInstantiation comment on factory methods
...
Closes gh-22867
2019-05-02 17:28:11 +02:00
Juergen Hoeller
18f6739be4
Allow null operands in compiled SpEL numeric operator expressions
...
Closes gh-22358
2019-05-02 17:27:49 +02:00
Juergen Hoeller
8a57997d21
Avoid use of Objects.requireNonNull plus related polishing
2019-05-02 16:32:47 +02:00
Juergen Hoeller
0be610b0ee
Support for reactive transactions in TransactionInterceptor
...
Introduces TransactionManager marker interface for PlatformTransactionManager as well as ReactiveTransactionManager, allowing for a common configuration type in TransactionAspectSupport and TransactionManagementConfigurer.
Closes gh-22590
2019-05-02 16:23:48 +02:00
Juergen Hoeller
8dabb3e626
Shorter class names for common reactive transaction API types
...
Introduces TransactionExecution base interface for TransactionStatus as well as ReactiveTransaction. Renames getTransaction method to getReactiveTransaction, allowing for combined implementations of PlatformTransactionManager and ReactiveTransactionManager.
See gh-22646
2019-05-02 16:23:37 +02:00
Juergen Hoeller
b5e5e33078
Remove legacy config options from AbstractReactiveTransactionManager
...
Includes general revision of reactive transaction sources.
See gh-22646
2019-05-02 12:04:25 +02:00
Mark Paluch
beea83b9d2
Add reactive transaction support SPI
...
This commit adds SPI interfaces to support reactive transactions
through spring-tx with optional dependencies to Project Reactor and
supportive implementations for TransactionalOperator and
AbstractReactiveTransactionManager.
2019-05-02 11:59:09 +02:00
Juergen Hoeller
cee7d09e40
Add is*Enabled methods for log level checks to LogAccessor
...
Closes gh-22862
2019-05-02 11:57:48 +02:00
Andy Clement
0f553661a6
Allow null operands in compiled SpEL numeric operator expressions
...
Prior to this when SpEL compiled an expression using the numeric
operators <, >, <= or >= then it would not create code that handled
nulls. Nulls can occur if a boxed numeric operand is used prior
to compilation, then it is nulled out. SpEL now creates null
handling bytecode.
Closes gh-22358
2019-05-01 15:36:19 -07:00
Rossen Stoyanchev
bd8d71be0e
canWrite uses actual return value type if known
...
Closes gh-22803
2019-05-01 16:52:23 -04:00
Rossen Stoyanchev
07c9a0e1f5
Merge branch '5.1.x'
2019-05-01 04:03:21 -04:00
Rossen Stoyanchev
b398216191
Fail proactively if lookupPath not in requestUri
...
Closes gh-22851
2019-05-01 03:57:44 -04:00
Rossen Stoyanchev
b5327ef60f
Fix regression in ProducesRequestCondition
...
Closes gh-22853
2019-05-01 02:59:19 -04:00
Juergen Hoeller
52657b68ea
Merge branch '5.1.x'
2019-04-30 18:55:34 +02:00
Juergen Hoeller
a8f845c944
Upgrade to Checkstyle 8.20 and CGLIB 3.2.11
...
Includes dependency management plugin 1.0.7.
2019-04-30 18:44:08 +02:00
Juergen Hoeller
90d4e9090c
Polishing
2019-04-30 18:43:16 +02:00
Juergen Hoeller
e0423fbdc2
Revise inline comment for logException call
...
Closes gh-22794
2019-04-30 18:42:53 +02:00
Juergen Hoeller
359c4f091e
Add rejectInvalidCookies flag to CookieLocaleResolver
...
Closes gh-22861
2019-04-30 18:39:58 +02:00
Sebastien Deleuze
2259ab7ff3
Polishing
2019-04-30 16:21:32 +02:00
Sebastien Deleuze
89454e69c3
Deprecate MediaType.APPLICATION_JSON_UTF8
...
This commit deprecates MediaType.APPLICATION_JSON_UTF8 and
MediaType.APPLICATION_PROBLEM_JSON_UTF8 in favor of
MediaType.APPLICATION_JSON and MediaType.APPLICATION_PROBLEM_JSON since
UTF-8 encoding is now handled correctly by most browsers
(related bug has been fixed in Chrome since September 2017).
MediaType.APPLICATION_JSON is now used as the default JSON content type.
Closes gh-22788
2019-04-30 16:11:50 +02:00
Sebastien Deleuze
2e6059f6b0
Add coroutines support to RSocket @MessageMapping
...
Closes gh-22780
2019-04-30 15:48:18 +02:00
Sebastien Deleuze
842e7e5ef7
Add RSocketRequester coroutines extensions
...
See gh-22780
2019-04-30 09:36:35 +02:00
Rossen Stoyanchev
089fb5737d
Replace create with wrap in RSocketRequester
2019-04-29 17:12:28 -04:00
Rossen Stoyanchev
a1ad0285ca
Default MimeType selection for RSocketRequester
...
Remove the dataMimeType argument on connect methods. Applications can
still configure it through the ClientRSocketFactory but it shouldn't
be necessary as we now choose a default MimeType from the supported
encoders and decoders.
Add an option to provide the RSocketStrategies instance (vs customizing
it) which is expected in Spring config where an RSocketStrategies
instance may be shared between client and server setups.
2019-04-29 15:22:01 -04:00
Rossen Stoyanchev
8888a65079
Polish RSocketRequester
2019-04-29 12:03:49 -04:00
Sebastien Deleuze
5cd6763193
Add CBOR codec (single value only)
...
This commit adds CBOR reactive support for single value only in
order to allow CBOR usage in RSocket. Notice that no CBOR support
is configured on WebFlux, this will require gh-20513 to be resolved.
Closes gh-22767
2019-04-29 13:13:37 +02:00
Juergen Hoeller
3d502d90e2
Add missing nullable declarations
...
See gh-22821
2019-04-26 23:10:18 +02:00
Juergen Hoeller
f8dc8523da
Merge branch '5.1.x'
2019-04-26 23:00:40 +02:00
Phillip Webb
87dba5a4df
Fix MergedAnnotations javadoc
2019-04-26 13:59:16 -07:00
Juergen Hoeller
1f473261a8
Polishing
2019-04-26 22:56:23 +02:00
Phillip Webb
55ac110f7b
Fix LinkedCaseInsensitiveMap collection methods
...
Ensure that results returned from keySet, entrySet & values are tracked
to remove case insensitive keys from the source map.
Closes gh-22821
2019-04-26 11:17:51 -07:00
Juergen Hoeller
c4bd5abc3b
Nullability refinements and related polishing
2019-04-26 17:41:43 +02:00
Juergen Hoeller
55418b256d
Merge branch '5.1.x'
2019-04-26 16:56:04 +02:00
Juergen Hoeller
e5e2d2d661
Polishing (includes minor performance refinements from master)
2019-04-26 16:51:18 +02:00
Juergen Hoeller
bdd9a557a5
Streamline ReactiveAdapterRegistry.getAdapter usage
...
Closes gh-22842
2019-04-26 16:49:16 +02:00
Sebastien Deleuze
0016f58a80
Upgrade dependency management plugin to 1.0.7
2019-04-26 13:34:47 +02:00
Sebastien Deleuze
f5816c9219
Upgrade Gradle to 5.4.1
2019-04-26 13:33:51 +02:00
Sebastien Deleuze
c59acde34e
Upgrade Kotlin plugin to 1.3.31
2019-04-26 13:32:25 +02:00
Sebastien Deleuze
5221c3000e
Upgrade to Coroutines 1.2.1
2019-04-26 11:44:57 +02:00
Sebastien Deleuze
92c190fabf
Upgrade to Kotlin 1.3.31
2019-04-26 11:44:39 +02:00
Phillip Webb
83cb51aec6
Add MergedAnnotation.getRoot() method
...
Update `MergedAnnotation` with a `getRoot()` method that allows the
root direct annotation to be retrieved easily.
Closes gh-22818
2019-04-25 14:14:03 -07:00
Stephane Nicoll
7cc132b2a9
Merge pull request #22836 from izeye
...
* pr/22836:
Add missing fail() calls in MockRestServiceServerTests
2019-04-25 17:35:19 +03:00
Johnny Lim
33ac14f099
Add missing fail() calls in MockRestServiceServerTests
...
Closes gh-22836
2019-04-25 17:34:50 +03:00
Juergen Hoeller
ad497c259a
Merge branch '5.1.x'
2019-04-25 14:55:04 +02:00
Juergen Hoeller
42fda0ba15
Upgrade to Tomcat 9.0.19, Jetty 9.4.17, Netty 4.1.35, OkHttp 3.14.1
...
Includes upgrade to Hibernate ORM 5.3.10 (for branch 5.1.x)
2019-04-25 14:32:37 +02:00
Juergen Hoeller
168a5159b8
Log ClassCastException from lambda-defined listener at trace level
...
Closes gh-22834
2019-04-25 14:31:57 +02:00
Juergen Hoeller
0cfab87b1f
Revise isEligibleValue javadoc towards BeanUtils.isSimpleValueType
...
See gh-22816
2019-04-25 14:31:09 +02:00
Christoph Dreis
29d021ae3c
Avoid possible memory leak in ResolvableType
2019-04-23 21:07:35 +02:00
Sebastien Deleuze
cd5dc84832
Improve WebFlux suspending handler method support
...
This commit leverages Flux instead of Flow to support suspending
handler methods returning Flow in order to avoid multiple invocations
of the suspending function on every collect().
See gh-22820
2019-04-23 17:20:40 +02:00
Brian Clozel
b33d2f4634
Fix checkstyle errors
2019-04-23 15:10:11 +02:00
Brian Clozel
02904121a3
Add RSocketRequest.Builder in Spring Messaging
...
Prior to this commit, `RSocketRequester` would have a single
`RSocketRequester.create` static method taking a fully built
`RSocket` as an argument. Developers need to build an `RSocket`
instance using the `RSocketFactory` and then use it to create
a requester.
To help developers set up a requester, this commit adds a new
`RSocketRequester.Builder` interface and implementation. The
`RSocket` building phase and codecs configuration are part of a
single call chain. Subscribing to the returned
`Mono<RSocketRequester>` will configure and connect to the remote
RSocket server.
This design should be improved in gh-22798, since we will need to
support metadata in a broader fashion.
Closes gh-22806
2019-04-23 14:06:15 +02:00
Yanming Zhou
900abfce47
Temporal should be simple value type like Date
2019-04-23 12:55:18 +02:00
水木今山
574dffb60b
Some trivial optimization in method populateBean() ( #22792 )
...
Optimize the number of getResolvedAutowireMode() method calls
2019-04-23 12:48:21 +02:00
Sebastien Deleuze
aee2df8919
Improve WebFlux suspending handler method support
...
Support for suspending handler methods introduced in Spring
Framework 5.2 M1 does not detect types correctly and does not
support suspending handler methods returning Flow which is a
common use case with WebClient.
This commit fixes these issues and adds Coroutines integration
tests.
Closes gh-22820
Closes gh-22827
2019-04-23 11:32:32 +02:00
Sam Brannen
dab90cb7cc
Test status quo for MergedAnnotation.getParent()
...
See gh-22818
2019-04-21 16:32:09 +02:00
Sam Brannen
e5d64e6680
Remove dead code in HttpHeadersTests
2019-04-21 15:33:53 +02:00
Sam Brannen
4a090922d7
Polish Javadoc
2019-04-21 15:33:53 +02:00
Sam Brannen
e187a42bfc
Introduce failing tests for HttpHeaders
...
See gh-22821
2019-04-21 15:20:24 +02:00
Rossen Stoyanchev
fe92486cca
Expose status in SubProtocolWebSocketHandler
...
Closes gh-22807
2019-04-18 23:11:08 -04:00
Rossen Stoyanchev
87dd62a4a3
Merge branch '5.1.x'
2019-04-18 22:49:35 -04:00
Rossen Stoyanchev
42fc4a35d5
Ensure flush after StreamingResponseBody
...
Closes gh-22813
2019-04-18 22:49:23 -04:00
Rossen Stoyanchev
c09e711eb2
Unwrap Optional for @RequestParam reverse resolution
...
Closes gh-22656
2019-04-18 22:40:12 -04:00
Rossen Stoyanchev
4e63153886
Upgrade RSocket snapshot version
2019-04-18 12:49:36 -04:00
Rossen Stoyanchev
dbc45319b3
Merge branch '5.1.x'
2019-04-18 11:51:34 -04:00
Rossen Stoyanchev
1a97a26eb7
Disable response caching when controller resolves ETag
...
See gh-22797
2019-04-18 11:50:43 -04:00
Rossen Stoyanchev
86835e8e5a
Merge branch '5.1.x'
2019-04-17 14:23:44 -04:00
Rossen Stoyanchev
13c746ae9d
Follow-up fix for #5b711a
...
Not only do we need to preserve Mono in writeWith in the base class
but also in ReactorServerHttpResponse where buffers are mapped.
See gh-22800
2019-04-17 13:18:01 -04:00
Rossen Stoyanchev
60d6b5a922
Add mutate method to RSocketStrategies
...
Closes gh-22799
2019-04-17 13:11:34 -04:00
Сергей Цыпанов
18af3892dd
Make inner classes static where possible
...
Closes gh-22804
2019-04-17 19:05:24 +02:00
Rossen Stoyanchev
261dcab8ce
Merge branch '5.1.x'
2019-04-17 12:34:22 -04:00
Sam Brannen
52b6f9b56d
Align Javadoc for Base64Utils.encodeToString() with implementation
...
Closes gh-22812
2019-04-17 12:33:22 -04:00
Rossen Stoyanchev
30dbff340a
Upgrade to Reactor Dysprosium snapshots
2019-04-17 12:30:02 -04:00
Stephane Nicoll
2cfd2a33c8
Merge branch '5.1.x'
2019-04-17 11:49:51 +02:00
Stephane Nicoll
fa848805fb
Merge pull request #22809 from johnlinp
...
* pr/22809:
Polish "Remove PROPAGATION_ prefix in Javadoc"
Remove PROPAGATION_ prefix in Javadoc
2019-04-17 11:49:30 +02:00
Stephane Nicoll
b7415ec92c
Polish "Remove PROPAGATION_ prefix in Javadoc"
...
Closes gh-22809
2019-04-17 11:49:04 +02:00
John Lin
c0252f8758
Remove PROPAGATION_ prefix in Javadoc
...
See gh-22809
2019-04-17 11:48:54 +02:00
Rossen Stoyanchev
de3238dbea
Merge branch '5.1.x'
2019-04-16 21:08:54 -04:00
Rossen Stoyanchev
5b711a964b
Pass Mono to Reactor Netty when feasible
...
Closes gh-22800
2019-04-16 20:52:19 -04:00
Rossen Stoyanchev
15b2fb1210
Polish
...
Replacing a couple of calls to Mono.fromCallable with Mono.just which
seems to work with doOnDiscard except when nested inside Flux.defer.
2019-04-16 20:52:19 -04:00
Rossen Stoyanchev
375090bb7c
LeakAwareDataBuffer related fixes
...
Following on 3ebbfa2191 where the local
refCount was removed in favor of using the internal refCount of the
native data buffer, this commit ensures that LeakAwareDataBufferFactory
uses a PooledDataBufferFactory delegate by default.
There are also fixes for test issues with eager allocation uncovered by
these changes in StringDecoder and ResourceDecoder.
2019-04-16 20:52:19 -04:00
Rossen Stoyanchev
ed650891ca
Add filter to add exchange to Reactor Context
...
Closes gh-21746
2019-04-16 10:08:20 -04:00
Sam Brannen
c99d904665
Upgrade to Gradle 5.4
...
Closes gh-22805
2019-04-16 14:46:02 +02:00
Rossen Stoyanchev
e4da7cb47f
Merge branch '5.1.x'
2019-04-15 08:41:27 -04:00
Rossen Stoyanchev
0109231d8e
Ensure Jackson generator flushed
...
Closes gh-22771
2019-04-15 08:40:19 -04:00
Sebastien Deleuze
e131815bab
Upgrade to Coroutines 1.2.0
2019-04-13 13:15:51 +02:00
Juergen Hoeller
44df98c82d
Merge branch '5.1.x'
2019-04-12 11:37:07 +02:00
Sebastien Deleuze
e84347554e
Ignore Kotlin script templating tests
...
Ignore these tests for the time being since they trigger
a NoClassDefFoundError exception with Kotlin 1.3.30.
2019-04-12 11:17:19 +02:00
Juergen Hoeller
722cd179cf
Clean up property values registration in SimpleWebApplicationContext
...
Closes gh-22787
2019-04-12 11:10:11 +02:00
Juergen Hoeller
b07d46da99
MockCookie compares attributes in case-insensitive manner
...
Closes gh-22786
2019-04-12 11:10:02 +02:00
Juergen Hoeller
49557471a9
Upgrade to AspectJ 1.9.3, Mockito 2.27, OpenPDF 1.2.16, POI 4.1
2019-04-12 11:03:43 +02:00
Juergen Hoeller
f9903bbf69
Upgrade to Kotlin 1.3.30, Mockito 2.27, MockK 1.9.3, AssertJ 3.12.2
...
This commit removes quartzVersion since it is only used once.
2019-04-12 10:28:15 +02:00
Juergen Hoeller
07738b9529
Recent fine-tuning from ASM master
...
See gh-22503
2019-04-12 10:26:42 +02:00
Rossen Stoyanchev
e27e54317f
Merge messaging related codec updates
2019-04-11 19:02:48 -04:00
Rossen Stoyanchev
5fc18064f2
Use encode with an Object value where feasible
...
Closes gh-22782
2019-04-11 19:00:28 -04:00
Rossen Stoyanchev
181482fa15
Add option to encode with an Object value
...
See gh-22782
2019-04-11 19:00:28 -04:00
Rossen Stoyanchev
f89d2ac148
Use decode from a DataBuffer where feasible
...
See gh-22782
2019-04-11 19:00:28 -04:00
Rossen Stoyanchev
a912d8de1e
Add option to decode from a DataBuffer
...
See gh-22782
2019-04-11 19:00:28 -04:00
Rossen Stoyanchev
2aae81ef0c
Join buffers in decodeToMono for Jackson and Jaxb2
...
Closes gh-22783
2019-04-11 19:00:28 -04:00
Sam Brannen
3d0ec509ab
Document mock JNDI support deprecation in the Reference Manual
...
See gh-22779
2019-04-11 16:46:50 +02:00
Sam Brannen
7f58e395d3
Remove @Deprecated from org.springframework.mock.jndi package
...
This commit removes the @Deprecated declaration on the
org.springframework.mock.jndi package, since such usage results in a
compiler warning on JDK 9+ which breaks Spring's JDK 9 and JDK 11 CI
builds.
https://bugs.openjdk.java.net/browse/JDK-6481080
See gh-22779
2019-04-11 16:17:58 +02:00
Rossen Stoyanchev
6e7da62085
Switch to Reactor snapshots and remove workaround
...
Following the 5.2 M1 release we can switch back to Reactor snapshots
and remove the workaround for a fix coming in Reactor Core 3.2.9.
2019-04-10 16:09:28 -04:00
Rossen Stoyanchev
bb28477587
Merge branch '5.1.x'
2019-04-10 15:37:02 -04:00
Rossen Stoyanchev
bd2c213b47
Remove buffer release used as workaround
...
The extra buffer release was used as a workaround for a reactor core
issue and should have already been removed as part of
b3bc2d9253 .
2019-04-10 15:36:36 -04:00
Rossen Stoyanchev
3ebbfa2191
Fix refCount issue in LeakAwareDataBuffer
...
LeakAwareDataBuffer was keeping its own refCount rather than checking
through the delegate. This leads to false leak reports in a sequence
where an allocated buffer is retained and then sliced since it is not
aware of the changes to the refCount through the slice.
2019-04-10 15:33:19 -04:00
Sam Brannen
88e3b84164
Deprecate mock JNDI support in the spring-test module
...
Closes gh-22779
2019-04-10 16:00:05 +02:00
Sam Brannen
6d7bf8050f
Polishing
2019-04-10 13:15:16 +02:00
Brian Clozel
0f76acc945
Update project page URL
2019-04-10 10:04:29 +02:00
Rossen Stoyanchev
d707d382b4
Merge branch '5.1.x'
2019-04-09 22:38:15 -04:00
Rossen Stoyanchev
28e206a946
Apply doOnDiscard for streaming mode
...
Use of Flux.just is problematic in that if the Flux is cancelled before
demand, the item may never be read, nor freed. Flux#just does not
even delegate cancellation signals.
Closes gh-22731
2019-04-09 22:30:26 -04:00
Rossen Stoyanchev
b11e7feff6
Polish during review of DataBuffer handling
2019-04-09 22:19:05 -04:00
Sebastien Deleuze
849a848f23
Polishing
2019-04-10 00:32:20 +02:00
Sebastien Deleuze
66c95dc241
Clear spring-core-coroutines artifacts
2019-04-09 23:54:22 +02:00
Sebastien Deleuze
ff1f368751
Improve Kotlin documentation
2019-04-09 23:54:22 +02:00
Rossen Stoyanchev
bd956ed75a
DataBuffer fixes in Protobuf codecs
...
Closes gh-22731
2019-04-09 17:00:26 -04:00
Brian Clozel
cd69a4a03b
Support DestinationVariable on RSocket handlers
...
Prior to this commit, the pattern destination variables were not set in
the message headers prior to calling the handler. In this case, the
`DestinationVariableMethodArgumentResolver` could not get the
destination variables from the message headers and resolve those as
handler arguments.
This commit mutates the message headers if the message destination
contains patterns.
Fixes gh-22776
2019-04-09 22:56:08 +02:00
Rossen Stoyanchev
a0826a20c3
CorsInterceptor at the front of the chain
...
Closes gh-22459
2019-04-09 15:43:43 -04:00
Rossen Stoyanchev
d1f888a7a9
Empty path mapping behaves consistently
...
An empty path mapping in an @RequestMapping now consistently matches to
empty paths regardless of whether there are both type and method level,
annotations, or method-level only.
Closes gh-22543
2019-04-09 15:03:43 -04:00
Rossen Stoyanchev
f839c1f9cd
Remove warning about empty @RequestMapping path
...
See gh-22543
2019-04-09 15:03:43 -04:00
Sam Brannen
5b17bb2e14
Polish Javadoc for @Scheduled
2019-04-09 19:12:06 +02:00
P. Ottlinger
85597f29f2
Improve @Scheduled Javadoc regarding cron element order
...
Closes gh-22777
2019-04-09 19:03:30 +02:00
Juergen Hoeller
eb971690d2
Merge branch '5.1.x'
2019-04-09 18:09:20 +02:00
Juergen Hoeller
2835424f9d
Jackson2Tokenizer creates fully configured DeserializationContext
...
Closes gh-22510
2019-04-09 17:59:10 +02:00
stsypanov
604361ee1f
Use concatenation instead of torn StringBuilder::append chain
2019-04-09 13:23:22 +02:00
Sebastien Deleuze
cd0b517abf
Improve Kotlin documentation
2019-04-09 12:28:00 +02:00
Sam Brannen
80ad60e91b
Fix Javadoc for @Value
2019-04-09 11:30:59 +02:00
Sam Brannen
85f05023c6
Pull WebFlux getMappingPathPatterns() implementation up in the hierarchy
...
This commit moves the WebFlux getMappingPathPatterns() implementation
from RequestMappingHandlerMapping to
RequestMappingInfoHandlerMapping so that subclasses of the latter no
longer need to re-implement the method.
See gh-22543
2019-04-09 10:58:04 +02:00
Juergen Hoeller
dc14ea86eb
Fix regression for nested AnnotationAttributes.annotationType() result
...
See gh-22738
2019-04-09 09:40:53 +02:00
Rossen Stoyanchev
0a03d8e248
Upgrade to RSocket 0.12.1-RC3 and update tests
...
1) Tests use a timeout to avoid hanging issues
2) Some tests adjusted to work around potential rsocket-java issue
https://github.com/rsocket/rsocket-java/issues/613
2019-04-08 23:52:04 -04:00
Juergen Hoeller
c8609b83b6
Merge branch '5.1.x'
2019-04-08 20:19:03 +02:00
Juergen Hoeller
1cd1e936c2
Upgrade to Checkstyle 8.19, Mockito 2.26, Undertow 2.0.20
2019-04-08 19:59:24 +02:00
Juergen Hoeller
4ec9aff01d
Polishing
2019-04-08 19:59:06 +02:00
Juergen Hoeller
d1303affc8
Avoid expensive Stream API usage in HttpRange
...
See gh-22742
2019-04-08 19:42:21 +02:00
ladislav-bozek
4d17eb4f0e
Fix typo in JavaDoc for UrlPathHelper.setUrlDecode()
...
Closes gh22768
2019-04-08 17:37:59 +02:00
Sam Brannen
b115789fd3
Polishing
2019-04-08 17:28:44 +02:00
Sam Brannen
9a93615ec4
Configure Kotlin plugin support for Eclipse in Gradle build
...
This commit configures the Kotlin plugin for Eclipse in the
spring-core-coroutines Gradle project so that users no longer have to
manually "Configure Kotlin / Add Kotlin Nature" within the Eclipse IDE
after importing projects.
This change is currently limited to the spring-core-coroutines project
since it is the only project in which Java code depends on compiled
Kotlin code; however, this change may later be applied to additional
projects if desirable.
2019-04-08 17:20:24 +02:00
Sam Brannen
bd414df944
Remove JMXMP from TestGroup
...
Due to the changes in a7425c81c0 , we no
longer need to execute tests using the JMXMP protocol in PERFORMANCE
builds.
This commit removes the JMXMP constant from the TestGroup enum and
updates affected tests, thereby effectively including such tests in
the standard build from now on.
See gh-22757
2019-04-08 17:05:16 +02:00
Juergen Hoeller
fd8fa301a6
Consistent non-exposure of inherited annotations in AnnotationMetadata
...
Closes gh-22766
2019-04-08 15:59:06 +02:00
Sebastien Deleuze
2e7ed915cd
Merge branch '5.1.x'
2019-04-08 15:46:47 +02:00
Sebastien Deleuze
a089027e7d
Fix a regression in Jackson builder module registration
...
This commit brings back the support for registration of multiple
Jackson modules with a null typeId.
Closes gh-22740
2019-04-08 15:37:10 +02:00
Juergen Hoeller
43cb1af26a
Polishing
2019-04-08 15:33:26 +02:00
Juergen Hoeller
a1efe3cfe5
Avoid MessageFormat processing for default Bean Validation messages
...
Closes gh-22761
2019-04-08 15:33:04 +02:00
Juergen Hoeller
fc9ce7cd99
Skip plain Java annotations in SourceClass.getAnnotations() upfront
...
Includes direct reflective introspection of annotations when possible.
Closes gh-22750
2019-04-08 15:32:52 +02:00
Sam Brannen
cf5d0e6aa9
Introduce publishEvent() convenience method in TestContext
...
This commit introduces a publishEvent() method in the TestContext API
as a convenience for publishing an ApplicationEvent to the test's
ApplicationContext but only if the ApplicationContext is currently
available and with lazy creation of the ApplicationEvent.
For example, the beforeTestClass() method in
EventPublishingTestExecutionListener is now implemented as follows.
public void beforeTestClass(TestContext testContext) {
testContext.publishEvent(BeforeTestClassEvent::new);
}
Closes gh-22765
2019-04-08 15:14:39 +02:00
Sam Brannen
a7425c81c0
Add dependency on opendmk_jmxremote_optional_jar for performance builds
...
Although the jmxremote_optional JAR has been added to the build agents
on the Bamboo CI server for the latest JDK 8 installation, that
solution is brittle since it has to be manually installed in every new
JDK installation. In addition, this approach will not work with JDK 9+
since the "Extension Mechanism" has been removed beginning with JDK 9.
https://docs.oracle.com/javase/10/migrate/toc.htm#JSMIG-GUID-2C896CA8-927C-4381-A737-B1D81D964B7B
This commit addresses this issue by adding the following dependency to
spring-context.
// Substitute for "javax.management:jmxremote_optional:1.0.1_04" which
// is not available on Maven Central
testRuntime("org.glassfish.external:opendmk_jmxremote_optional_jar:1.0-b01-ea")
With this change, the Spring PERFORMANCE builds now execute on JDK 8,
9, and 11.
See gh-22757
2019-04-08 13:22:30 +02:00
Sam Brannen
8f5d2d65a1
Upgrade to JUnit Jupiter 5.4.2
...
See gh-22308
2019-04-07 22:05:33 +02:00
Sam Brannen
353e092bf6
Register EventPublishingTestExecutionListener by default (round 2)
...
This commit registers the EventPublishingTestExecutionListener as a
default TestExecutionListener with an order of 10,000. This registers
the EventPublishingTestExecutionListener as the last listener provided
by the Spring Framework.
With EventPublishingTestExecutionListener registered with an order of
10,000, it is effectively wrapped by all other Spring listeners,
including support for @DirtiesContext and test-managed transactions.
Furthermore, this commit revises the implementation of
EventPublishingTestExecutionListener to take advantage of the new
TestContext#hasApplicationContext() support which allows the
EventPublishingTestExecutionListener to publish events only if the
test's ApplicationContext is currently available. This avoids
undesirable side-effects such as eager loading of the
ApplicationContext before it is needed or re-loading of the
ApplicationContext after it has been intentionally closed.
Closes gh-18490
2019-04-06 16:39:26 +02:00
Sam Brannen
c3d0459a4e
Add support to query if ApplicationContext is available in the TCF
...
This commit introduces support in the Spring TestContext Framework
(TCF) to query whether the test's ApplicationContext is available.
Specifically, this commit introduces the following two `default`
methods along with corresponding implementations in DefaultTestContext
and DefaultCacheAwareContextLoaderDelegate.
- `boolean hasApplicationContext()` in the TestContext API
- `boolean isContextLoaded(MergedContextConfiguration)` in the
CacheAwareContextLoaderDelegate API
Closes gh-22756
2019-04-06 16:00:33 +02:00
Sam Brannen
ab1b8dee58
Ensure XmlEventDecoder compiles on JDK 9 and 11
2019-04-06 16:00:33 +02:00
Sam Brannen
55b764bac3
Remove unused import
...
See gh-22543
2019-04-06 12:14:46 +02:00
Sam Brannen
164ee2a4e1
Polishing
...
See gh-22543
2019-04-06 11:25:44 +02:00
Sam Brannen
021909dac2
Merge branch '5.1.x'
2019-04-06 11:22:15 +02:00
Sam Brannen
a1668ad1c2
Fix Javadoc for PathPattern
2019-04-06 11:21:39 +02:00
Sam Brannen
510c0c5ef7
Return Set<PathPattern> from AbstractHandlerMethodMapping.getMappingPathPatterns
...
This commit revises the signature of getMappingPathPatterns() in
AbstractHandlerMethodMapping to return a set of PathPatterns instead of
a set of Strings.
See gh-22543
2019-04-06 11:18:25 +02:00
Tadaya Tsuyukubo
dacda5859a
Fix broken asciidoc heading
2019-04-06 11:02:45 +02:00
Rossen Stoyanchev
02da8486a3
Merge branch '5.1.x'
2019-04-05 21:53:55 -04:00
Rossen Stoyanchev
57558a481a
DataBuffer fixes in View implementations
...
Closes gh-22754
2019-04-05 21:42:12 -04:00
Rossen Stoyanchev
6cabb79f0f
Decode resourcePath for classpath locations
...
Closes gh-22272
2019-04-05 16:23:33 -04:00
Phillip Webb
e905f1712e
Refine MergedAnnotation.asMap
...
Add a convenience method that allows a `MergedAnnotation` to be
converted into an `AnnotationAttributes` instance. Also rename
the `MapValues` enum to `Adapt` which generally seems to read
better.
Closes gh-22738
2019-04-05 13:22:18 -07:00
Phillip Webb
ef151f578d
Polishing
2019-04-05 13:22:18 -07:00
Phillip Webb
1221b0650b
Add MissingMergedAnnotation Tests
...
Add tests for `MissingMergedAnnotation`
See gh-21697
2019-04-05 13:21:46 -07:00
Phillip Webb
8bc74ad18d
Delete AnnotationAttributeExtractor
...
Delete `AnnotationAttributeExtractor` which is package private and
no longer used.
Closes gh-22753
2019-04-05 13:20:47 -07:00
Sam Brannen
72027b1746
Log warning if @RequestMapping method has no explicit mapping
...
Commit c0b52d09f5 introduced support for
throwing an exception if a @RequestMapping handler method in a Spring
MVC controller was mapped to an empty path. This had negative side
effects for applications that intentionally mapped to an empty path,
potentially alongside a mapping to an explicit path for the same
handler method.
This commit addresses this by logging a warning (instead of throwing an
exception) if a @RequestMapping method is mapped only to empty paths.
This commit also introduces the same support for WebFlux-based
@RequestMapping handler methods.
Closes gh-22543
2019-04-05 19:55:22 +02:00
Sam Brannen
e4525cf4c1
Modify ByteArrayEncoder so that it works in Eclipse IDE
2019-04-05 19:55:22 +02:00
Sam Brannen
898494a538
Polish AbstractHandlerMethodMapping
...
See gh-22543
2019-04-05 14:03:10 +02:00
Sam Brannen
d04a640baf
Polish Javadoc for @RequestMapping
2019-04-05 14:03:10 +02:00
Juergen Hoeller
9de83674cd
Complete set of registerBean methods on AnnotatedBeanDefinitionReader
...
Includes bringing registerBean constructor-vararg variants up to GenericApplicationContext, making AnnotationConfigApplicationContext a straightforward subclass with a single template method to override.
See gh-22457
2019-04-05 13:56:33 +02:00
Juergen Hoeller
b90e6ef8a0
Merge branch '5.1.x'
2019-04-05 12:48:34 +02:00
Juergen Hoeller
da557e7415
Avoid expensive assertions in HttpRange
...
Closes gh-22742
2019-04-05 12:47:02 +02:00
Rossen Stoyanchev
279508a0f0
Merge pull request #22705 from jhaeyaert/22371
2019-04-04 17:15:18 -04:00
Rossen Stoyanchev
e0c2a1c59d
Polish
...
Closes gh-22705
2019-04-04 17:13:57 -04:00
Jeoffrey Haeyaert
9976783639
WebClient uri method with uriTemplate and UriBuilder
...
See gh-22705
2019-04-04 17:13:57 -04:00
Rossen Stoyanchev
ed70978071
verify() fails if there are failed requests
...
Normally failed requests fail the test but they're suppressed for some
reason (e.g. in async callback) then verify should still correctly
report the failures.
Closes gh-21799
2019-04-04 16:49:46 -04:00
Sam Brannen
4be605eb1e
Revert "Fix tests"
...
This reverts commit 07e9f802f2 .
2019-04-04 19:10:58 +02:00
Sam Brannen
d6ba5259d8
Revert "Register EventPublishingTestExecutionListener by default"
...
This reverts commit 86fb7362b1 .
2019-04-04 19:10:58 +02:00
Sam Brannen
a66e6d3231
Revert "Fix tests"
...
This reverts commit 65365d91c8 .
2019-04-04 19:10:58 +02:00
Sam Brannen
f7a5b3013e
Revert "Register EventPublishingTestExecutionListener by default"
...
This reverts commit 13543f5e0f .
2019-04-04 19:10:58 +02:00
Sebastien Deleuze
a8d6ba9965
Add support for Coroutines Flow
...
Flow is a Kotlin Coroutines related cold asynchronous
stream of the data, that emits from zero to N (where N
can be unbounded) values and completes normally or with
an exception.
It is conceptually the Coroutines equivalent of Flux with
an extension oriented API design, easy custom operator
capabilities and some suspending methods.
This commit leverages Flow <-> Flux interoperability
to support Flow on controller handler method parameters
or return values, and also adds Flow based extensions to
WebFlux.fn. It allows to reach a point when we can consider
Spring Framework officially supports Coroutines even if some
additional work remains to be done like adding
interoperability between Reactor and Coroutines contexts.
Flow is currently an experimental API that is expected to
become final before Spring Framework 5.2 GA.
Close gh-19975
2019-04-04 19:06:32 +02:00
Sam Brannen
a5e297a161
Polishing
2019-04-04 18:41:57 +02:00
Sam Brannen
df15b64e86
Document @Autowired support on parameters
...
Closes gh-21118
2019-04-04 18:31:04 +02:00
Sam Brannen
e1080f8b5f
Polish Javadoc for @Autowired
2019-04-04 18:18:35 +02:00
Sam Brannen
3a9262ca1e
Fix Javadoc warnings in Gradle build
2019-04-04 17:49:33 +02:00
Sam Brannen
c0b52d09f5
Require explicit path mappings for @RequestMapping methods
...
Prior to this commit, handler methods in Spring MVC controllers were
not required to provide explicit path mappings via @RequestMapping (or
any of its specializations such as @GetMapping). Such handler methods
were effectively mapped to all paths. Consequently, developers may have
unwittingly mapped all requests to a single handler method.
This commit addresses this by enforcing that @RequestMapping methods
are mapped to an explicit path. Note, however, that this is enforced
after type-level and method-level @RequestMapping information has been
merged.
Developers wishing to map to all paths should now add an explicit path
mapping to "/**" or "**".
Closes gh-22543
2019-04-04 17:33:59 +02:00
Sam Brannen
de69871354
Removed unused import
2019-04-04 17:13:08 +02:00
Sam Brannen
1a2e372186
Removed unused import
2019-04-04 16:56:03 +02:00
Juergen Hoeller
23b8f471dc
Upgrade to Quartz 2.3.1
2019-04-04 16:43:40 +02:00
Juergen Hoeller
1741b6dcd9
Merge branch '5.1.x'
2019-04-04 16:12:07 +02:00
stsypanov
383f18e214
Use StringJoiner where possible to simplify String joining
2019-04-04 16:11:32 +02:00
Juergen Hoeller
95232d5bf8
Upgrade to Apache HttpClient 4.5.8 and Jetty Reactive HttpClient 1.0.3
2019-04-04 16:10:16 +02:00
Juergen Hoeller
97b83a3e4a
Revised documentation on constructor autowiring semantics
...
Closes gh-22735
2019-04-04 16:09:51 +02:00
Sam Brannen
07e9f802f2
Fix tests
...
See gh-18490
2019-04-04 12:55:55 +02:00
Sam Brannen
86fb7362b1
Register EventPublishingTestExecutionListener by default
...
See gh-18490
2019-04-04 12:55:06 +02:00
Sebastien Deleuze
40e4c8068d
Polishing
2019-04-04 12:16:18 +02:00
Sebastien Deleuze
9217f0b63e
Convert CoRouterFunctionDsl indents to tabs
2019-04-04 12:14:27 +02:00
Sebastien Deleuze
2eb631aaad
Avoid exposing (Co)RouterFunctionDsl#invoke
...
WebFlux.fn RouterFunctionDsl#invoke and CoRouterFunctionDsl#invoke
were wrongly exposed on public API and have never been designed to
be used by end users, but rather only invoked from router { } or
coRouter { } builders.
To fix that, avoiding this method being accessible from the DSL and
for the sake of consistency with WebMvc.fn RouterFunctionDsl,
Spring Framework 5.2 turns public fun invoke() method to
an internal fun build() one.
As a consequence RouterFunctionDsl and CoRouterFunctionDsl are not
open anymore, they are expected to be extended via Kotlin
extensions if needed.
Closes gh-22736
2019-04-04 12:14:27 +02:00
Sebastien Deleuze
e6171fb47d
Add Kotlin router DSL and extensions for WebMvc.fn
...
Closes gh-22697
2019-04-04 12:14:27 +02:00
Sebastien Deleuze
92d5f6395e
Rename awaitPrincipal to awaitPrincipalOrNull
...
See gh-19975
2019-04-04 12:14:27 +02:00
Arjen Poutsma
b3d3778269
Do not resolve DTDs in Stax Tests
2019-04-04 12:10:10 +02:00
Brian Clozel
65365d91c8
Fix tests
...
See gh-18490
2019-04-04 11:19:31 +02:00
Juergen Hoeller
52f90c303e
Rename LogMessage.lazy(Supplier) to LogMessage.of(Supplier)
...
See gh-22726
2019-04-04 10:39:42 +02:00
Juergen Hoeller
9080ae24f9
First-class support for printf-style format strings in LogMessage
...
LogMessage is an abstract class now: with internal subclasses for Supplier bindings as well as printf-style format strings with a variable number of arguments (some fixed for efficiency, varargs array as fallback), created through corresponding static factory methods.
Closes gh-22726
2019-04-04 01:52:51 +02:00
Rossen Stoyanchev
5616eb2e8e
Merge branch '5.1.x'
2019-04-03 19:38:21 -04:00
Rossen Stoyanchev
325fb5d97e
Unwrap CompletionException in return value handler
...
See gh-22476
2019-04-03 19:37:13 -04:00
Rossen Stoyanchev
88a7a68a71
Revert to Californium-SR6 for M1 release
2019-04-03 19:25:34 -04:00
Rossen Stoyanchev
2c28e4e972
Merge branch '5.1.x'
2019-04-03 16:29:28 -04:00
Rossen Stoyanchev
b3bc2d9253
Remove workaround for reactor-core issue
2019-04-03 16:27:02 -04:00
Rossen Stoyanchev
1c5aa6a8d3
Merge changes for 22644
2019-04-03 14:56:39 -04:00
Rossen Stoyanchev
72119ac076
ProducesRequestCondition caches accepted media types
...
Closes gh-22644
2019-04-03 14:56:30 -04:00
Rossen Stoyanchev
254f06e1a1
Request attribute cache for resolved lookupPath
...
See gh-22644
2019-04-03 14:56:30 -04:00
Rossen Stoyanchev
bb9fcad58a
RequestCondition implementations minor refactoring
...
Reduce object creation by pre-computing instances that can be re-used,
and eliminating collection copying and sorting where not needed.
See gh-22644
2019-04-03 14:56:30 -04:00
Juergen Hoeller
8f967129b9
Merge branch '5.1.x'
2019-04-03 19:05:42 +02:00
Sam Brannen
13543f5e0f
Register EventPublishingTestExecutionListener by default
...
Closes gh-18490
2019-04-03 18:31:16 +02:00
Juergen Hoeller
0cc6a9ef11
Avoid getDeclaredMethod check in ReflectionUtils.isObjectMethod
...
Closes gh-22730
2019-04-03 18:21:26 +02:00
Sam Brannen
d6173512fe
Document test execution event support in the Reference Manual
...
Closes gh-18490
2019-04-03 18:18:39 +02:00
Sebastien Deleuze
a63d23492a
Optimize Jackson2Tokenizer
...
See gh-22727
2019-04-03 18:02:27 +02:00
Sam Brannen
807828b2b7
Polish Javadoc for MergedAnnotation support
...
See gh-21697
2019-04-03 16:55:34 +02:00
Sam Brannen
a4279c5d00
Rename MergedAnnotations.SearchStrategy.SUPER_CLASS to SUPERCLASS
...
For consistency within the framework, this commit renames the SUPER_CLASS enum constant
to SUPERCLASS.
See gh-21697
2019-04-03 16:44:36 +02:00
Juergen Hoeller
d39e3cc0ba
Merge branch '5.1.x'
2019-04-03 14:43:22 +02:00
Juergen Hoeller
9ea02c6dfa
Revised javadoc
2019-04-03 14:34:11 +02:00
Juergen Hoeller
abbe61b9f8
Consistent internal use of getMergedLocalBeanDefinition
2019-04-03 14:33:57 +02:00
Juergen Hoeller
e0fe32af05
Detect factory method annotations in getBeanNamesForAnnotation and co
...
As of 5.2, ListableBeanFactory.findAnnotationOnBean and its retrieval companions getBeanNamesForAnnotation and getBeansWithAnnotation detect annotations on @Bean methods as well.
Closes gh-22541
2019-04-03 13:07:47 +02:00
Juergen Hoeller
dee88d931a
Common constant for DefaultBeanNameGenerator as well
...
Closes gh-22591
2019-04-03 12:58:13 +02:00
Brian Clozel
47c8d1de7b
Avoid calling other bean methods in web config
...
This commit changes the main configuration classes for Spring MVC and
Spring WebFlux to not call other bean methods when setting up the web
infrastructure. This allows configuration classes extending
`DelegatingWebFluxConfiguration` and `DelegatingWebMvcConfiguration`
to opt-in the lite-mode, as introduced in gh-22461.
2019-04-03 10:16:41 +02:00
Brian Clozel
83ce8ad79a
Fix checkstyle
2019-04-03 10:16:11 +02:00
Juergen Hoeller
e2e91e2196
Switch LogAccessor argument order to have message supplier last
...
Closes gh-22726
2019-04-02 21:01:56 +02:00
Sam Brannen
5922642333
Document exception handling and async support for test events
...
This commit updates the class-level Javadoc for
EventPublishingTestExecutionListener in order to provide explicit
documentation for exception handling and async support.
See gh-18490
2019-04-02 20:31:58 +02:00
Juergen Hoeller
2e63c66b0d
Merge branch '5.1.x'
2019-04-02 20:13:29 +02:00
Juergen Hoeller
0babc1fb64
Polishing
2019-04-02 20:04:07 +02:00
Juergen Hoeller
95a84bbad1
Clarify case-insensitive nature of HttpHeaders
...
Closes gh-22723
2019-04-02 20:04:00 +02:00
Juergen Hoeller
3ac88bed23
Introduce LogAccessor and LogMessage as convenient logging utilities
...
Closes gh-22726
2019-04-02 19:13:05 +02:00
Rossen Stoyanchev
208a1ae0ea
Sync ChannelSendOperator copy in spring-messaging
...
See gh-22720
2019-04-02 11:06:11 -04:00
Rossen Stoyanchev
89a29598d5
Merge branch '5.1.x'
2019-04-02 11:05:30 -04:00
Rossen Stoyanchev
4c08863776
Add test case for writeFunction error signal
...
See gh-22720
2019-04-02 11:00:58 -04:00
Juergen Hoeller
c366e205e5
Common constants for default AnnotationBeanNameGenerator instances
...
Closes gh-22591
2019-04-02 16:52:36 +02:00
Sebastien Deleuze
b2dbefcfc5
Prevent spring-core-coroutines deployment
...
See gh-19975
2019-04-02 16:05:18 +02:00
Sebastien Deleuze
d2fa5536db
Use more efficient Reactor operators
...
Use handle/flatMapIterable instead of flatMap/flatMapMany
when possible.
Closes gh-22727
2019-04-02 15:49:59 +02:00
Violeta Georgieva
9bd0ec33f8
Release cached item in ChannelSendOperator when server error
...
Related to gh-22720
2019-04-02 16:42:52 +03:00
Juergen Hoeller
b1231de062
Fix formatting
...
See gh-21855
2019-04-02 15:17:34 +02:00
Matthias Kurz
6899624155
Correctly parse property name in path "map[key[foo]]"
2019-04-02 15:09:13 +02:00
liguoxiong
7b11c3b599
Transform the beanName in method isPrimary
...
Transform the beanName in method DefaultListableBeanFactory.isPrimary.
Add the corresponding test cases.
Fixes #22675 .
2019-04-02 15:06:12 +02:00
Juergen Hoeller
a11a592734
AbstractSqlParameterSource enumerates parameter values in toString()
...
Closes gh-2080
2019-04-02 14:56:38 +02:00
Juergen Hoeller
4a5b9d39d4
Consistent java.time setters on HttpHeaders and CorsConfiguration
...
Closes gh-22546
2019-04-02 14:56:20 +02:00
Juergen Hoeller
d6c1a65737
JtaTransactionManagerFactoryBean fully initializes its JTM instance
...
Closes gh-22605
2019-04-02 14:55:56 +02:00
Juergen Hoeller
271445b89e
Public createMarshaller/Unmarshaller methods on Jaxb2Marshaller
...
Closes gh-22708
2019-04-02 14:55:39 +02:00
Juergen Hoeller
c1a74de48d
Boolean getLazyInit accessor indicating no explicit flag set
...
Closes gh-22694
2019-04-02 14:55:27 +02:00
Juergen Hoeller
03bda29032
Revert "AnnotationConfigRegistry exposes registerBean with supplier/qualifiers"
...
This reverts commit 18f2e6a1
2019-04-02 14:55:13 +02:00
Rossen Stoyanchev
a94868158e
Sync ChannelSendOperator copy in spring-messaging
...
See gh-22720
2019-04-01 17:22:54 -04:00
Rossen Stoyanchev
20742c74dc
Merge branch '5.1.x'
2019-04-01 17:16:17 -04:00
Rossen Stoyanchev
9c48d63082
Release cached item in ChannelSendOperator
...
1. If the write Subscriber cancels with the item cached, release it.
2. If the write Publisher emits an error while the item is cached, when
the write Subscriber subscribes, release the cached item and emit the
error signal.
Closes gh-22720
2019-04-01 17:15:16 -04:00
Sebastien Deleuze
eb75367934
Remove deprecated AbstractHandlerMapping#getCorsConfigurations
...
Closes gh-22719
2019-04-01 17:43:20 +02:00
Sebastien Deleuze
d27b5d0ab6
Improve CORS handling
...
This commit improves CORS support by:
- Using CORS processing only for CORS-enabled endpoints
- Skipping CORS processing for same-origin requests
- Adding Vary headers for non-CORS requests
It introduces an AbstractHandlerMapping#hasCorsConfigurationSource
method in order to be able to check CORS endpoints efficiently.
Closes gh-22273
Closes gh-22496
2019-04-01 17:42:51 +02:00
Stephane Nicoll
8714710170
Merge branch '5.1.x'
2019-04-01 14:02:23 +02:00
Stephane Nicoll
de2a01eee4
Polish
...
Closes gh-22717
2019-04-01 14:01:41 +02:00
Stephane Nicoll
4b5c370701
Merge branch '5.1.x'
2019-04-01 13:55:44 +02:00
Stephane Nicoll
7882a33e07
Merge pull request #22718 from jKiler
...
* pr/22718:
Polish contribution
Polish
2019-04-01 13:55:30 +02:00
Stephane Nicoll
db64286589
Polish contribution
...
Closes gh-22718
2019-04-01 13:55:00 +02:00
Jerzy
ee1322ccbb
Polish
...
See gh-22718
2019-04-01 13:54:45 +02:00
Sam Brannen
085cb1dd92
Clean up warnings
2019-03-31 14:36:35 +02:00
Sam Brannen
e8cfc4df45
Disable verbose JiBX logging in Gradle build
2019-03-31 13:26:38 +02:00
Stephane Nicoll
7625fc0262
Merge branch '5.1.x'
2019-03-31 10:59:30 +02:00
Sebastien Deleuze
beb491b840
Use Dispatchers.Unconfined for Coroutines
...
As of Coroutines 1.2.0-alpha, Dispatchers.Unconfined
is a stable API so we can leverage it in order to get
better performances in our Reactive to Coroutines
bridge.
See gh-19975
2019-03-31 10:56:05 +02:00
Sebastien Deleuze
3387d3ec89
Upgrade to Coroutines 1.2.0-alpha
...
This commit also switches on kotlin-compiler-embeddable to
improve isolation of its dependencies
See gh-19975
2019-03-31 10:55:13 +02:00
Spring Buildmaster
d6088fa64e
Next Development Version
2019-03-31 08:42:44 +00:00
Juergen Hoeller
76e5a2a53b
Remove superfluous empty lines
2019-03-30 00:26:58 +01:00
Juergen Hoeller
2e832c03ae
Merge branch '5.1.x'
2019-03-30 00:25:10 +01:00
Juergen Hoeller
c6619006eb
Polishing
2019-03-30 00:20:32 +01:00
Juergen Hoeller
3ba0a79a57
Upgrade to OpenPDF 1.2.12
2019-03-30 00:13:29 +01:00
Juergen Hoeller
462d047f72
Typo fixes and formatting
2019-03-29 23:44:00 +01:00
Stephane Nicoll
43004328c8
Merge pull request #22709 from armansimonyan13
...
* pr/22709:
Polish contribution
Polish
2019-03-29 22:42:05 +01:00
Stephane Nicoll
2156a1bbd5
Polish contribution
...
Closes gh-22709
2019-03-29 22:40:40 +01:00
arman simonyan
257772c61e
Polish
...
See gh-22709
2019-03-29 22:40:04 +01:00
Rossen Stoyanchev
8dc535c15c
Match declared parameters on produces condition
...
Closes gh-21670
2019-03-29 17:03:40 -04:00
Rossen Stoyanchev
c0be1c5100
Polish
2019-03-29 16:01:22 -04:00
Rossen Stoyanchev
6c33af0a1c
Merge branch '5.1.x'
2019-03-29 15:56:07 -04:00
Rossen Stoyanchev
85332c7a49
Polish
2019-03-29 15:53:45 -04:00
Rossen Stoyanchev
81f95efdbb
Call onDispose before first read
...
The cancellation callback in asynchronousReadFileChannel must be called
before the first read I/O or otherwise if cancellation signals happens
immediately the onDispose callback may be missed.
The DefaultBufferFactory workaround however remains in place until an
expected additional fix arrives with Reactor Core 3.2.9.
See gh-22107
2019-03-29 15:43:06 -04:00
Rossen Stoyanchev
9a1bba5b67
NettyDataBufferFactory.wrap(ByteBuf) calls touch()
...
Closes gh-21960
2019-03-29 15:25:28 -04:00
Juergen Hoeller
57de2e0900
Deprecate ClassUtils.isCglibProxy methods in favor of AOP-level checks
...
Closes gh-22706
2019-03-29 11:12:49 +01:00
Phillip Webb
f273fa990c
Use RepeatableContainers.none() in AnnotationUtils
...
Update `AnnotationUtils` so that `RepeatableContainers.none()` is used
when performing an exhaustive search for merged annotations. These
parameters were accidentally removed in commit 210b1789 and weren't
caught earlier because we were missing a test.
Closes gh-22702
2019-03-28 14:39:29 -07:00
Phillip Webb
800cbf2524
Ignore 'value' attribute in AnnotationTypeMapping
...
Update `addConventionAnnotationValues` so that `value` attributes
do not override existing annotation values. The aligns the new
`MergedAnnotations` API with the previous `AnnotatedElementUtils`
logic.
Closes gh-22703
2019-03-28 14:39:29 -07:00
Rossen Stoyanchev
45e42214b2
Merge branch '5.1.x'
2019-03-28 17:37:21 -04:00
Rossen Stoyanchev
57d006b3ff
Fix checkstyle warning
2019-03-28 17:37:12 -04:00
Rossen Stoyanchev
52b109ae68
Merge branch '5.1.x'
2019-03-28 17:19:51 -04:00
Rossen Stoyanchev
beae1fbb12
Uncomment buffer leak tests in DataBufferUtils
...
Following a response on
https://github.com/reactor/reactor-core/issues/1634 apparently
FluxSink is respecting doOnDiscard but there is a race condition
in DataBufferUtils with file reading.
This commit makes two changes:
1) Add more checks for onDispose to detect cancellation signals
as well as to deal with potentially concurrent such signal.
2) Do not close the channel through the Flux.using callback but
rather allow the current I/O callback to take place and only then
close the channel or else the buffer is left hanging.
Despite this tests still can fail due to a suspected issue in Reactor
itself with the doOnDiscard callback for FluxSink. That's tracked under
the same issue https://github.com/reactor/reactor-core/issues/1634
and for now the use of DefaultDataBufferFactory is enforced as a
workaround until the issue is resolved.
See gh-22107
2019-03-28 17:18:40 -04:00
Sam Brannen
3f85530efd
URL Cleanup - polishing
2019-03-28 17:23:13 +01:00
Sam Brannen
faa3bde991
Merge branch '5.1.x'
2019-03-28 17:05:35 +01:00
Arjen Poutsma
e09d6e2efd
Javadoc
2019-03-28 16:47:25 +01:00
Arjen Poutsma
2950958f35
Fix ConcurrentModificationException on Undertow
...
This commit fixes a ConcurrentModificationException that occurs when
requesting a nonexistant route.
Closes gh-22698
2019-03-28 16:19:57 +01:00
Juergen Hoeller
49fccfb158
Consistent retrieval of javax annotation types (e.g. JSR-305)
...
Closes gh-22696
2019-03-28 14:38:55 +01:00
Sam Brannen
f9d59570de
URL Cleanup - polishing
2019-03-28 14:05:21 +01:00
Sam Brannen
eec183ef28
Ensure spring-test test tasks are UP-TO-DATE
...
Prior to this commit, the three `test` tasks in the spring-test module
shared the same output directory for test reports. This had the
negative side effect of causing Gradle to believe that the tasks were
not UP-TO-DATE. Consequently, all three `test` tasks in the spring-test
module were executed for every build even if there were zero changes in
the spring-test module.
This commit fixes this issue by allowing Gradle to use the default test
results output directory for each `test` task. Thanks to @marcphilipp
for providing the tip.
In addition, the Artifactory Gradle task in the Default Job of the
Bamboo build plan for the Spring Framework (SPR-PUB) has been updated
to use the following custom test results directory pattern:
`**/build/test-results/**/*.xml`.
See: https://guides.gradle.org/using-build-cache/#concepts_overlapping_outputs
2019-03-28 13:47:33 +01:00
Sam Brannen
7e6a5f5875
URL Cleanup - license.txt
2019-03-28 13:04:33 +01:00
Sam Brannen
025eaf688f
Clean up warnings in Gradle build output
2019-03-28 12:32:58 +01:00
Sam Brannen
09690f2750
Upgrade to Gradle 5.3.1
...
See gh-22347
2019-03-28 12:02:35 +01:00
Sebastien Deleuze
c5c4ac164b
Refine WebFlux Coroutines API
...
This commit provides both nullable and non-nullable variants for
awaitBody, makes awaitPrincipal return type nullable and rename
awaitResponse to awaitExchange for better consistency with Java API.
See gh-19975
2019-03-28 10:22:50 +01:00
Sebastien Deleuze
811f315440
Refine PropertyResolver extensions null-safety
...
See gh-22687
2019-03-28 09:01:20 +01:00
Sam Brannen
3cf2c04406
URL Cleanup - polishing
...
See gh-22680
2019-03-27 22:05:38 +01:00
Sam Brannen
c90b6ea0bb
URL Cleanup - upgrade to more modern Xalan namespace
...
See gh-22680
2019-03-27 22:05:38 +01:00
Sam Brannen
83293b39df
URL Cleanup - fix undesirable code change
...
Namespace handlers are mapped based on the canonical names for XML
namespaces which in Spring do not use "https" as the scheme.
See gh-22680
2019-03-27 22:05:38 +01:00
Sam Brannen
5dc9c4c527
URL Cleanup - Fix broken tests
...
See gh-22680
2019-03-27 22:05:38 +01:00
Spring Operator
3db08c6b7a
URL Cleanup
...
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).
These URLs were unable to be fixed. Please review them to see if they can be manually resolved.
* [ ] http://aopalliance.sourceforge.net (200) with 1 occurrences could not be migrated:
([https](https://aopalliance.sourceforge.net ) result AnnotatedConnectException).
* [ ] http://cglib.sourceforge.net (200) with 2 occurrences could not be migrated:
([https](https://cglib.sourceforge.net ) result AnnotatedConnectException).
* [ ] http://classdoc.sourceforge.net (200) with 1 occurrences could not be migrated:
([https](https://classdoc.sourceforge.net ) result AnnotatedConnectException).
* [ ] http://code.jquery.com:80/jquery.js (200) with 1 occurrences could not be migrated:
([https](https://code.jquery.com:80/jquery.js ) result SSLException).
* [ ] http://dbunit.sourceforge.net/ (200) with 1 occurrences could not be migrated:
([https](https://dbunit.sourceforge.net/ ) result AnnotatedConnectException).
* [ ] http://docs.groovy-lang.org/docs/next/html/documentation/template-engines.html (200) with 1 occurrences could not be migrated:
([https](https://docs.groovy-lang.org/docs/next/html/documentation/template-engines.html ) result SSLProtocolException).
* [ ] http://domain3.com (200) with 6 occurrences could not be migrated:
([https](https://domain3.com ) result ConnectTimeoutException).
* [ ] http://forum.thymeleaf.org/Thymeleaf-3-0-8-JUST-PUBLISHED-td4030687.html (200) with 1 occurrences could not be migrated:
([https](https://forum.thymeleaf.org/Thymeleaf-3-0-8-JUST-PUBLISHED-td4030687.html ) result SSLHandshakeException).
* [ ] http://gregfranko.com/jquery.tocify.js/ (200) with 1 occurrences could not be migrated:
([https](https://gregfranko.com/jquery.tocify.js/ ) result SSLHandshakeException).
* [ ] http://grinder.sourceforge.net/ (200) with 1 occurrences could not be migrated:
([https](https://grinder.sourceforge.net/ ) result AnnotatedConnectException).
* [ ] http://groovy-lang.org/templating.html (200) with 3 occurrences could not be migrated:
([https](https://groovy-lang.org/templating.html ) result SSLProtocolException).
* [ ] http://hsqldb.org (200) with 1 occurrences could not be migrated:
([https](https://hsqldb.org ) result SSLHandshakeException).
* [ ] http://htmlunit.sourceforge.net/ (200) with 3 occurrences could not be migrated:
([https](https://htmlunit.sourceforge.net/ ) result AnnotatedConnectException).
* [ ] http://htmlunit.sourceforge.net/gettingStarted.html (200) with 1 occurrences could not be migrated:
([https](https://htmlunit.sourceforge.net/gettingStarted.html ) result AnnotatedConnectException).
* [ ] http://htmlunit.sourceforge.net/javascript.html (200) with 1 occurrences could not be migrated:
([https](https://htmlunit.sourceforge.net/javascript.html ) result AnnotatedConnectException).
* [ ] http://javadiff.cvs.sourceforge.net/ (200) with 3 occurrences could not be migrated:
([https](https://javadiff.cvs.sourceforge.net/ ) result SSLHandshakeException).
* [ ] http://jibx.sourceforge.net/ (200) with 2 occurrences could not be migrated:
([https](https://jibx.sourceforge.net/ ) result AnnotatedConnectException).
* [ ] http://joda-time.sourceforge.net (200) with 1 occurrences could not be migrated:
([https](https://joda-time.sourceforge.net ) result AnnotatedConnectException).
* [ ] http://jotm.objectweb.org/ (200) with 1 occurrences could not be migrated:
([https](https://jotm.objectweb.org/ ) result NotSslRecordException).
* [ ] http://json-b.net/ (200) with 1 occurrences could not be migrated:
([https](https://json-b.net/ ) result SSLHandshakeException).
* [ ] http://mx4j.sourceforge.net (200) with 1 occurrences could not be migrated:
([https](https://mx4j.sourceforge.net ) result AnnotatedConnectException).
* [ ] http://mx4j.sourceforge.net/ (200) with 1 occurrences could not be migrated:
([https](https://mx4j.sourceforge.net/ ) result AnnotatedConnectException).
* [ ] http://mydomain3.com (200) with 9 occurrences could not be migrated:
([https](https://mydomain3.com ) result ConnectTimeoutException).
* [ ] http://objenesis.org (200) with 1 occurrences could not be migrated:
([https](https://objenesis.org ) result SSLHandshakeException).
* [ ] http://objenesis.org/tutorial.html (200) with 1 occurrences could not be migrated:
([https](https://objenesis.org/tutorial.html ) result SSLHandshakeException).
* [ ] http://other.com/ (200) with 2 occurrences could not be migrated:
([https](https://other.com/ ) result SSLHandshakeException).
* [ ] http://reactivex.io/ (200) with 1 occurrences could not be migrated:
([https](https://reactivex.io/ ) result SSLHandshakeException).
* [ ] http://reactivex.io/documentation/operators.html (200) with 1 occurrences could not be migrated:
([https](https://reactivex.io/documentation/operators.html ) result SSLHandshakeException).
* [ ] http://url.somewhereelse.com (200) with 4 occurrences could not be migrated:
([https](https://url.somewhereelse.com ) result SSLHandshakeException).
* [ ] http://www.beanshell.org (200) with 1 occurrences could not be migrated:
([https](https://www.beanshell.org ) result SSLHandshakeException).
* [ ] http://www.beanshell.org/ (200) with 1 occurrences could not be migrated:
([https](https://www.beanshell.org/ ) result SSLHandshakeException).
* [ ] http://www.doclet.com (200) with 1 occurrences could not be migrated:
([https](https://www.doclet.com ) result AnnotatedConnectException).
* [ ] http://www.gebish.org/ (200) with 1 occurrences could not be migrated:
([https](https://www.gebish.org/ ) result SSLHandshakeException).
* [ ] http://www.gebish.org/manual/current/ (200) with 3 occurrences could not be migrated:
([https](https://www.gebish.org/manual/current/ ) result SSLHandshakeException).
* [ ] http://www.groovy-lang.org/ (200) with 2 occurrences could not be migrated:
([https](https://www.groovy-lang.org/ ) result SSLProtocolException).
* [ ] http://www.groovy-lang.org/operators.html (200) with 2 occurrences could not be migrated:
([https](https://www.groovy-lang.org/operators.html ) result SSLProtocolException).
* [ ] http://www.hsqldb.org (200) with 1 occurrences could not be migrated:
([https](https://www.hsqldb.org ) result SSLHandshakeException).
* [ ] http://www.jensgulden.de (200) with 1 occurrences could not be migrated:
([https](https://www.jensgulden.de ) result AnnotatedConnectException).
* [ ] http://www.mockobjects.com (200) with 2 occurrences could not be migrated:
([https](https://www.mockobjects.com ) result ClosedChannelException).
* [ ] http://www.mockobjects.com/ (200) with 1 occurrences could not be migrated:
([https](https://www.mockobjects.com/ ) result ClosedChannelException).
* [ ] http://xmlunit.sourceforge.net/ (200) with 2 occurrences could not be migrated:
([https](https://xmlunit.sourceforge.net/ ) result AnnotatedConnectException).
* [ ] http://192.168.0.1/mvc-showcase (301) with 1 occurrences could not be migrated:
([https](https://192.168.0.1/mvc-showcase ) result ConnectTimeoutException).
* [ ] http://www.easymock.org (301) with 2 occurrences could not be migrated:
([https](https://www.easymock.org ) result SSLHandshakeException).
* [ ] http://www.easymock.org/ (301) with 1 occurrences could not be migrated:
([https](https://www.easymock.org/ ) result SSLHandshakeException).
* [ ] http://www.jmock.org/ (301) with 1 occurrences could not be migrated:
([https](https://www.jmock.org/ ) result SSLHandshakeException).
* [ ] http://foo.com (301) with 4 occurrences could not be migrated:
([https](https://foo.com ) result SSLHandshakeException).
* [ ] http://foo.com/ (301) with 1 occurrences could not be migrated:
([https](https://foo.com/ ) result SSLHandshakeException).
* [ ] http://foo.com/a (301) with 1 occurrences could not be migrated:
([https](https://foo.com/a ) result SSLHandshakeException).
* [ ] http://foo.com/a?foo=bar&foo=baz (301) with 4 occurrences could not be migrated:
([https](https://foo.com/a?foo=bar&foo=baz ) result SSLHandshakeException).
* [ ] http://foo.com/bar (301) with 5 occurrences could not be migrated:
([https](https://foo.com/bar ) result SSLHandshakeException).
* [ ] http://foo.com/baz (301) with 1 occurrences could not be migrated:
([https](https://foo.com/baz ) result SSLHandshakeException).
* [ ] http://foo.com/rest/books/6.json (301) with 1 occurrences could not be migrated:
([https](https://foo.com/rest/books/6.json ) result SSLHandshakeException).
* [ ] http://foo.com/rest/books/6/pages/1.json (301) with 1 occurrences could not be migrated:
([https](https://foo.com/rest/books/6/pages/1.json ) result SSLHandshakeException).
* [ ] http://foo.com/v1 (301) with 1 occurrences could not be migrated:
([https](https://foo.com/v1 ) result SSLHandshakeException).
* [ ] http://foo.com/v1/123 (301) with 1 occurrences could not be migrated:
([https](https://foo.com/v1/123 ) result SSLHandshakeException).
* [ ] http://foo.com/v1/bar (301) with 1 occurrences could not be migrated:
([https](https://foo.com/v1/bar ) result SSLHandshakeException).
* [ ] http://foo.com/v1?id=123 (301) with 2 occurrences could not be migrated:
([https](https://foo.com/v1?id=123 ) result SSLHandshakeException).
* [ ] http://foo.com/wrong (301) with 1 occurrences could not be migrated:
([https](https://foo.com/wrong ) result SSLHandshakeException).
* [ ] http://mydomain4.com (301) with 3 occurrences could not be migrated:
([https](https://mydomain4.com ) result SSLHandshakeException).
* [ ] http://www.caucho.com/hessian (302) with 6 occurrences could not be migrated:
([https](https://www.caucho.com/hessian ) result SSLHandshakeException).
* [ ] http://mydomain2.com (302) with 22 occurrences could not be migrated:
([https](https://mydomain2.com ) result ConnectTimeoutException).
* [ ] http://www.jdiff.org (302) with 1 occurrences could not be migrated:
([https](https://www.jdiff.org ) result ConnectTimeoutException).
* [ ] http://example.com:80/test/this/here (404) with 3 occurrences could not be migrated:
([https](https://example.com:80/test/this/here ) result NotSslRecordException).
* [ ] http://www.foo.com/schema/component/component.xsd (404) with 1 occurrences could not be migrated:
([https](https://www.foo.com/schema/component/component.xsd ) result SSLHandshakeException).
* [ ] http://www.foo.com/schema/jcache (404) with 2 occurrences could not be migrated:
([https](https://www.foo.com/schema/jcache ) result SSLHandshakeException).
* [ ] http://www.mycompany.com/schema/myns/myns.xsd (404) with 1 occurrences could not be migrated:
([https](https://www.mycompany.com/schema/myns/myns.xsd ) result ConnectTimeoutException).
* [ ] http://xunitpatterns.com/Test%20Spy.html (404) with 1 occurrences could not be migrated:
([https](https://xunitpatterns.com/Test%20Spy.html ) result AnnotatedConnectException).
These URLs were fixed, but the https status was not OK. However, the https status was the same as the http request or http redirected to an https URL, so they were migrated. Your review is recommended.
* [ ] http://bugs.sun.com/view_bug.do?bug_id=6342411 (302) with 1 occurrences migrated to:
https://bugs.java.com/view_bug.do?bug_id=6342411 ([https](https://bugs.sun.com/view_bug.do?bug_id=6342411 ) result SSLHandshakeException).
* [ ] http://bugs.sun.com/view_bug.do?bug_id=7023180 (302) with 2 occurrences migrated to:
https://bugs.java.com/view_bug.do?bug_id=7023180 ([https](https://bugs.sun.com/view_bug.do?bug_id=7023180 ) result SSLHandshakeException).
* [ ] http://www.freemarker.org (301) with 5 occurrences migrated to:
https://freemarker.apache.org/ ([https](https://www.freemarker.org ) result ConnectTimeoutException).
* [ ] http://sockjs.org (303) with 2 occurrences migrated to:
https://github.com/sockjs/sockjs-client ([https](https://sockjs.org ) result AnnotatedConnectException).
* [ ] http://network.pivotal.io/open-source (301) with 1 occurrences migrated to:
https://network.pivotal.io/open-source ([https](https://network.pivotal.io/open-source ) result ReadTimeoutException).
* [ ] http://projects.eclipse.org/projects/tools.buildship (301) with 1 occurrences migrated to:
https://projects.eclipse.org/projects/tools.buildship ([https](https://projects.eclipse.org/projects/tools.buildship ) result SSLException).
* [ ] http://aaa.org:8080/a (301) with 1 occurrences migrated to:
https://www.aaa.org/articles/ ([https](https://aaa.org:8080/a ) result NotSslRecordException).
* [ ] http://aaa.org:8080/b/c/d (301) with 1 occurrences migrated to:
https://www.aaa.org/b/c/d ([https](https://aaa.org:8080/b/c/d ) result ReadTimeoutException).
* [ ] http://www.caucho.com (302) with 1 occurrences migrated to:
https://www.caucho.com/ ([https](https://www.caucho.com ) result SSLHandshakeException).
* [ ] http://jruby.org (301) with 4 occurrences migrated to:
https://www.jruby.org ([https](https://jruby.org ) result SSLHandshakeException).
* [ ] http://jruby.org/ (301) with 1 occurrences migrated to:
https://www.jruby.org ([https](https://jruby.org/ ) result SSLHandshakeException).
* [ ] http://bbb.org:9090/b (AnnotatedConnectException) with 2 occurrences migrated to:
https://bbb.org:9090/b ([https](https://bbb.org:9090/b ) result AnnotatedConnectException).
* [ ] http://192.168.28.42/1.jsp (ConnectTimeoutException) with 3 occurrences migrated to:
https://192.168.28.42/1.jsp ([https](https://192.168.28.42/1.jsp ) result ConnectTimeoutException).
* [ ] http://example.com:8080/ (ConnectTimeoutException) with 1 occurrences migrated to:
https://example.com:8080/ ([https](https://example.com:8080/ ) result ConnectTimeoutException).
* [ ] http://example.com:8080/bar (ConnectTimeoutException) with 5 occurrences migrated to:
https://example.com:8080/bar ([https](https://example.com:8080/bar ) result ConnectTimeoutException).
* [ ] http://example.org:9090 (ConnectTimeoutException) with 2 occurrences migrated to:
https://example.org:9090 ([https](https://example.org:9090 ) result ConnectTimeoutException).
* [ ] http://example.org:9090/base (ConnectTimeoutException) with 12 occurrences migrated to:
https://example.org:9090/base ([https](https://example.org:9090/base ) result ConnectTimeoutException).
* [ ] http://example.org:9090/base/people (ConnectTimeoutException) with 2 occurrences migrated to:
https://example.org:9090/base/people ([https](https://example.org:9090/base/people ) result ConnectTimeoutException).
* [ ] http://example.org:9090/base/something/1/foo (ConnectTimeoutException) with 2 occurrences migrated to:
https://example.org:9090/base/something/1/foo ([https](https://example.org:9090/base/something/1/foo ) result ConnectTimeoutException).
* [ ] http://example.org:9090/base/something/else (ConnectTimeoutException) with 2 occurrences migrated to:
https://example.org:9090/base/something/else ([https](https://example.org:9090/base/something/else ) result ConnectTimeoutException).
* [ ] http://example.org:9999/base (ConnectTimeoutException) with 1 occurrences migrated to:
https://example.org:9999/base ([https](https://example.org:9999/base ) result ConnectTimeoutException).
* [ ] http://example.org:9999/base/api/people/123/addresses (ConnectTimeoutException) with 1 occurrences migrated to:
https://example.org:9999/base/api/people/123/addresses ([https](https://example.org:9999/base/api/people/123/addresses ) result ConnectTimeoutException).
* [ ] http://example.org:9999/base/api/people/123/addresses/DE (ConnectTimeoutException) with 1 occurrences migrated to:
https://example.org:9999/base/api/people/123/addresses/DE ([https](https://example.org:9999/base/api/people/123/addresses/DE ) result ConnectTimeoutException).
* [ ] http://example.org:9999/base/people/123/addresses/DE (ConnectTimeoutException) with 1 occurrences migrated to:
https://example.org:9999/base/people/123/addresses/DE ([https](https://example.org:9999/base/people/123/addresses/DE ) result ConnectTimeoutException).
* [ ] http://example.org:9999/next (ConnectTimeoutException) with 1 occurrences migrated to:
https://example.org:9999/next ([https](https://example.org:9999/next ) result ConnectTimeoutException).
* [ ] http://example.org:9999/path?q=foo (ConnectTimeoutException) with 1 occurrences migrated to:
https://example.org:9999/path?q=foo ([https](https://example.org:9999/path?q=foo ) result ConnectTimeoutException).
* [ ] http://foo.com:8080/v1/bar?id=123 (ConnectTimeoutException) with 1 occurrences migrated to:
https://foo.com:8080/v1/bar?id=123 ([https](https://foo.com:8080/v1/bar?id=123 ) result ConnectTimeoutException).
* [ ] http://mydomain1.com:123 (ConnectTimeoutException) with 1 occurrences migrated to:
https://mydomain1.com:123 ([https](https://mydomain1.com:123 ) result ConnectTimeoutException).
* [ ] http://site1.com (ConnectTimeoutException) with 13 occurrences migrated to:
https://site1.com ([https](https://site1.com ) result ConnectTimeoutException).
* [ ] http://wwws.sun.com/software/xml/developers/diffmk/ (ConnectTimeoutException) with 1 occurrences migrated to:
https://wwws.sun.com/software/xml/developers/diffmk/ ([https](https://wwws.sun.com/software/xml/developers/diffmk/ ) result ConnectTimeoutException).
* [ ] http://www.w3.org/TR/html4/loose.dtd (ReadTimeoutException) with 5 occurrences migrated to:
https://www.w3.org/TR/html4/loose.dtd ([https](https://www.w3.org/TR/html4/loose.dtd ) result ReadTimeoutException).
* [ ] http://DOMAIN2.com (UnknownHostException) with 2 occurrences migrated to:
https://DOMAIN2.com ([https](https://DOMAIN2.com ) result UnknownHostException).
* [ ] http://a.example.org/mvc-showcase (UnknownHostException) with 1 occurrences migrated to:
https://a.example.org/mvc-showcase ([https](https://a.example.org/mvc-showcase ) result UnknownHostException).
* [ ] http://arjen:foobar@java.sun.com:80 (UnknownHostException) with 1 occurrences migrated to:
https://arjen:foobar@java.sun.com:80 ([https](https://arjen:foobar@java.sun.com:80 ) result UnknownHostException).
* [ ] http://dev.bar.com (UnknownHostException) with 3 occurrences migrated to:
https://dev.bar.com ([https](https://dev.bar.com ) result UnknownHostException).
* [ ] http://domain1.com (UnknownHostException) with 25 occurrences migrated to:
https://domain1.com ([https](https://domain1.com ) result UnknownHostException).
* [ ] http://domain1.com/test.html (UnknownHostException) with 4 occurrences migrated to:
https://domain1.com/test.html ([https](https://domain1.com/test.html ) result UnknownHostException).
* [ ] http://domain2.com (UnknownHostException) with 98 occurrences migrated to:
https://domain2.com ([https](https://domain2.com ) result UnknownHostException).
* [ ] http://example.com",HttpMethod.GET (UnknownHostException) with 6 occurrences migrated to:
https://example.com",HttpMethod.GET ([https](https://example.com",HttpMethod.GET ) result UnknownHostException).
* [ ] http://foo.bar.com (UnknownHostException) with 4 occurrences migrated to:
https://foo.bar.com ([https](https://foo.bar.com ) result UnknownHostException).
* [ ] http://joe.openid.example.org/ (UnknownHostException) with 2 occurrences migrated to:
https://joe.openid.example.org/ ([https](https://joe.openid.example.org/ ) result UnknownHostException).
* [ ] http://myserver/logo.png (UnknownHostException) with 1 occurrences migrated to:
https://myserver/logo.png ([https](https://myserver/logo.png ) result UnknownHostException).
* [ ] http://samples.springframework.org/order (UnknownHostException) with 2 occurrences migrated to:
https://samples.springframework.org/order ([https](https://samples.springframework.org/order ) result UnknownHostException).
* [ ] http://url.somewhere.com (UnknownHostException) with 25 occurrences migrated to:
https://url.somewhere.com ([https](https://url.somewhere.com ) result UnknownHostException).
* [ ] http://url.somewhere.com/path (UnknownHostException) with 1 occurrences migrated to:
https://url.somewhere.com/path ([https](https://url.somewhere.com/path ) result UnknownHostException).
* [ ] http://url.somewhere.com/path?id=1 (UnknownHostException) with 1 occurrences migrated to:
https://url.somewhere.com/path?id=1 ([https](https://url.somewhere.com/path?id=1 ) result UnknownHostException).
* [ ] http://url.somewhere.com/test.htm (UnknownHostException) with 2 occurrences migrated to:
https://url.somewhere.com/test.htm ([https](https://url.somewhere.com/test.htm ) result UnknownHostException).
* [ ] http://url.somewhere.com?a=b&c=d (UnknownHostException) with 1 occurrences migrated to:
https://url.somewhere.com?a=b&c=d ([https](https://url.somewhere.com?a=b&c=d ) result UnknownHostException).
* [ ] http://url.somewhere.com?foo= (UnknownHostException) with 2 occurrences migrated to:
https://url.somewhere.com?foo= ([https](https://url.somewhere.com?foo= ) result UnknownHostException).
* [ ] http://url.somewhere.com?foo=bar (UnknownHostException) with 4 occurrences migrated to:
https://url.somewhere.com?foo=bar ([https](https://url.somewhere.com?foo=bar ) result UnknownHostException).
* [ ] http://url.somewhere.com?foo=bar&a=b&c=d (UnknownHostException) with 2 occurrences migrated to:
https://url.somewhere.com?foo=bar&a=b&c=d ([https](https://url.somewhere.com?foo=bar&a=b&c=d ) result UnknownHostException).
* [ ] http://wiki.fasterxml.com/JacksonHome (UnknownHostException) with 3 occurrences migrated to:
https://wiki.fasterxml.com/JacksonHome ([https](https://wiki.fasterxml.com/JacksonHome ) result UnknownHostException).
* [ ] http://wiki.fasterxml.com/JacksonJsonViews (UnknownHostException) with 4 occurrences migrated to:
https://wiki.fasterxml.com/JacksonJsonViews ([https](https://wiki.fasterxml.com/JacksonJsonViews ) result UnknownHostException).
* [ ] http://x.y.z (UnknownHostException) with 2 occurrences migrated to:
https://x.y.z ([https](https://x.y.z ) result UnknownHostException).
* [ ] http://abc.com/v1 (301) with 1 occurrences migrated to:
https://abc.go.com/v1 ([https](https://abc.com/v1 ) result 404).
* [ ] http://abc.com/v1/accounts/43 (301) with 1 occurrences migrated to:
https://abc.go.com/v1/accounts/43 ([https](https://abc.com/v1/accounts/43 ) result 404).
* [ ] http://abc.com/v1/accounts?q=12 (301) with 1 occurrences migrated to:
https://abc.go.com/v1/accounts?q=12 ([https](https://abc.com/v1/accounts?q=12 ) result 404).
* [ ] http://abc.com/v2/accounts?q=12 (301) with 1 occurrences migrated to:
https://abc.go.com/v2/accounts?q=12 ([https](https://abc.com/v2/accounts?q=12 ) result 404).
* [ ] http://docs.spring.io/v1/bar (301) with 1 occurrences migrated to:
https://docs.spring.io/v1/bar ([https](https://docs.spring.io/v1/bar ) result 404).
* [ ] http://example.com/-foo (404) with 2 occurrences migrated to:
https://example.com/-foo ([https](https://example.com/-foo ) result 404).
* [ ] http://example.com/1 (404) with 1 occurrences migrated to:
https://example.com/1 ([https](https://example.com/1 ) result 404).
* [ ] http://example.com/1/2 (404) with 2 occurrences migrated to:
https://example.com/1/2 ([https](https://example.com/1/2 ) result 404).
* [ ] http://example.com/2 (404) with 1 occurrences migrated to:
https://example.com/2 ([https](https://example.com/2 ) result 404).
* [ ] http://example.com/a%20b?q=a%2Bb (404) with 1 occurrences migrated to:
https://example.com/a%20b?q=a%2Bb ([https](https://example.com/a%20b?q=a%2Bb ) result 404).
* [ ] http://example.com/abc/ (404) with 1 occurrences migrated to:
https://example.com/abc/ ([https](https://example.com/abc/ ) result 404).
* [ ] http://example.com/abc/x/y (404) with 1 occurrences migrated to:
https://example.com/abc/x/y ([https](https://example.com/abc/x/y ) result 404).
* [ ] http://example.com/abc/x/y/z (404) with 3 occurrences migrated to:
https://example.com/abc/x/y/z ([https](https://example.com/abc/x/y/z ) result 404).
* [ ] http://example.com/app/login/authenticate (404) with 1 occurrences migrated to:
https://example.com/app/login/authenticate ([https](https://example.com/app/login/authenticate ) result 404).
* [ ] http://example.com/arbitrary/path (404) with 1 occurrences migrated to:
https://example.com/arbitrary/path ([https](https://example.com/arbitrary/path ) result 404).
* [ ] http://example.com/bar (404) with 6 occurrences migrated to:
https://example.com/bar ([https](https://example.com/bar ) result 404).
* [ ] http://example.com/context.xml (404) with 4 occurrences migrated to:
https://example.com/context.xml ([https](https://example.com/context.xml ) result 404).
* [ ] http://example.com/example (404) with 6 occurrences migrated to:
https://example.com/example ([https](https://example.com/example ) result 404).
* [ ] http://example.com/example/?name (404) with 1 occurrences migrated to:
https://example.com/example/?name ([https](https://example.com/example/?name ) result 404).
* [ ] http://example.com/example/?name= (404) with 1 occurrences migrated to:
https://example.com/example/?name= ([https](https://example.com/example/?name= ) result 404).
* [ ] http://example.com/example/?name=%20 (404) with 1 occurrences migrated to:
https://example.com/example/?name=%20 ([https](https://example.com/example/?name=%20 ) result 404).
* [ ] http://example.com/example/?name=row%5B0%5D (404) with 1 occurrences migrated to:
https://example.com/example/?name=row%5B0%5D ([https](https://example.com/example/?name=row%5B0%5D ) result 404).
* [ ] http://example.com/example/?name=value (404) with 1 occurrences migrated to:
https://example.com/example/?name=value ([https](https://example.com/example/?name=value ) result 404).
* [ ] http://example.com/example/?name=value¶m2=value+2 (404) with 1 occurrences migrated to:
https://example.com/example/?name=value¶m2=value+2 ([https](https://example.com/example/?name=value¶m2=value+2 ) result 404).
* [ ] http://example.com/example/?row%5B0%5D=value (404) with 1 occurrences migrated to:
https://example.com/example/?row%5B0%5D=value ([https](https://example.com/example/?row%5B0%5D=value ) result 404).
* [ ] http://example.com/foo (404) with 6 occurrences migrated to:
https://example.com/foo ([https](https://example.com/foo ) result 404).
* [ ] http://example.com/foo/../bar (404) with 1 occurrences migrated to:
https://example.com/foo/../bar ([https](https://example.com/foo/../bar ) result 404).
* [ ] http://example.com/foo/foo2?bar (404) with 1 occurrences migrated to:
https://example.com/foo/foo2?bar ([https](https://example.com/foo/foo2?bar ) result 404).
* [ ] http://example.com/foo?bar (404) with 4 occurrences migrated to:
https://example.com/foo?bar ([https](https://example.com/foo?bar ) result 404).
* [ ] http://example.com/foo?bar= (404) with 2 occurrences migrated to:
https://example.com/foo?bar= ([https](https://example.com/foo?bar= ) result 404).
* [ ] http://example.com/foo?bar=baz (404) with 2 occurrences migrated to:
https://example.com/foo?bar=baz ([https](https://example.com/foo?bar=baz ) result 404).
* [ ] http://example.com/foo?baz=42 (404) with 1 occurrences migrated to:
https://example.com/foo?baz=42 ([https](https://example.com/foo?baz=42 ) result 404).
* [ ] http://example.com/foo?foo=bar&baz=qux (404) with 2 occurrences migrated to:
https://example.com/foo?foo=bar&baz=qux ([https](https://example.com/foo?foo=bar&baz=qux ) result 404).
* [ ] http://example.com/hotel (404) with 3 occurrences migrated to:
https://example.com/hotel ([https](https://example.com/hotel ) result 404).
* [ ] http://example.com/hotel%20list (404) with 1 occurrences migrated to:
https://example.com/hotel%20list ([https](https://example.com/hotel%20list ) result 404).
* [ ] http://example.com/hotel%20list/Z (404) with 1 occurrences migrated to:
https://example.com/hotel%20list/Z ([https](https://example.com/hotel%20list/Z ) result 404).
* [ ] http://example.com/hotel%20list/Z%C3%BCrich (404) with 3 occurrences migrated to:
https://example.com/hotel%20list/Z%C3%BCrich ([https](https://example.com/hotel%20list/Z%C3%BCrich ) result 404).
* [ ] http://example.com/hotels (404) with 3 occurrences migrated to:
https://example.com/hotels ([https](https://example.com/hotels ) result 404).
* [ ] http://example.com/hotels/ (404) with 15 occurrences migrated to:
https://example.com/hotels/ ([https](https://example.com/hotels/ ) result 404).
* [ ] http://example.com/hotels/1/bookings/42 (404) with 1 occurrences migrated to:
https://example.com/hotels/1/bookings/42 ([https](https://example.com/hotels/1/bookings/42 ) result 404).
* [ ] http://example.com/hotels/1/pic/pics%2Flogo.png/size/150x150 (404) with 2 occurrences migrated to:
https://example.com/hotels/1/pic/pics%2Flogo.png/size/150x150 ([https](https://example.com/hotels/1/pic/pics%2Flogo.png/size/150x150 ) result 404).
* [ ] http://example.com/hotels/1/pic/pics/logo.png (404) with 1 occurrences migrated to:
https://example.com/hotels/1/pic/pics/logo.png ([https](https://example.com/hotels/1/pic/pics/logo.png ) result 404).
* [ ] http://example.com/hotels/42/bookings/21 (404) with 1 occurrences migrated to:
https://example.com/hotels/42/bookings/21 ([https](https://example.com/hotels/42/bookings/21 ) result 404).
* [ ] http://example.com/hotels/42/bookings/42 (404) with 1 occurrences migrated to:
https://example.com/hotels/42/bookings/42 ([https](https://example.com/hotels/42/bookings/42 ) result 404).
* [ ] http://example.com/hotels/Rest%20%26%20Relax/bookings/42 (404) with 2 occurrences migrated to:
https://example.com/hotels/Rest%20%26%20Relax/bookings/42 ([https](https://example.com/hotels/Rest%20%26%20Relax/bookings/42 ) result 404).
* [ ] http://example.com/info (404) with 2 occurrences migrated to:
https://example.com/info ([https](https://example.com/info ) result 404).
* [ ] http://example.com/invalid (404) with 1 occurrences migrated to:
https://example.com/invalid ([https](https://example.com/invalid ) result 404).
* [ ] http://example.com/jquery-1.11.0.min.js (404) with 2 occurrences migrated to:
https://example.com/jquery-1.11.0.min.js ([https](https://example.com/jquery-1.11.0.min.js ) result 404).
* [ ] http://example.com/match (404) with 1 occurrences migrated to:
https://example.com/match ([https](https://example.com/match ) result 404).
* [ ] http://example.com/myFileUpload (404) with 1 occurrences migrated to:
https://example.com/myFileUpload ([https](https://example.com/myFileUpload ) result 404).
* [ ] http://example.com/myForm (404) with 1 occurrences migrated to:
https://example.com/myForm ([https](https://example.com/myForm ) result 404).
* [ ] http://example.com/path (404) with 4 occurrences migrated to:
https://example.com/path ([https](https://example.com/path ) result 404).
* [ ] http://example.com/path?query (404) with 2 occurrences migrated to:
https://example.com/path?query ([https](https://example.com/path?query ) result 404).
* [ ] http://example.com/path?query=foo (404) with 1 occurrences migrated to:
https://example.com/path?query=foo ([https](https://example.com/path?query=foo ) result 404).
* [ ] http://example.com/people (404) with 1 occurrences migrated to:
https://example.com/people ([https](https://example.com/people ) result 404).
* [ ] http://example.com/people/ (404) with 1 occurrences migrated to:
https://example.com/people/ ([https](https://example.com/people/ ) result 404).
* [ ] http://example.com/prefix/path (404) with 2 occurrences migrated to:
https://example.com/prefix/path ([https](https://example.com/prefix/path ) result 404).
* [ ] http://example.com/resource (404) with 5 occurrences migrated to:
https://example.com/resource ([https](https://example.com/resource ) result 404).
* [ ] http://example.com/resource?access_token=123 (404) with 1 occurrences migrated to:
https://example.com/resource?access_token=123 ([https](https://example.com/resource?access_token=123 ) result 404).
* [ ] http://example.com/spaces (404) with 1 occurrences migrated to:
https://example.com/spaces ([https](https://example.com/spaces ) result 404).
* [ ] http://example.com/spaces%20and%20%E2%82%AC (404) with 3 occurrences migrated to:
https://example.com/spaces%20and%20%E2%82%AC ([https](https://example.com/spaces%20and%20%E2%82%AC ) result 404).
* [ ] http://example.com/spring/ (404) with 1 occurrences migrated to:
https://example.com/spring/ ([https](https://example.com/spring/ ) result 404).
* [ ] http://example.com/test/this/here (404) with 1 occurrences migrated to:
https://example.com/test/this/here ([https](https://example.com/test/this/here ) result 404).
* [ ] http://example.com/upload (404) with 1 occurrences migrated to:
https://example.com/upload ([https](https://example.com/upload ) result 404).
* [ ] http://example.com/user (404) with 1 occurrences migrated to:
https://example.com/user ([https](https://example.com/user ) result 404).
* [ ] http://example.org/fonts/css (404) with 6 occurrences migrated to:
https://example.org/fonts/css ([https](https://example.org/fonts/css ) result 404).
* [ ] http://example.org/foo/page.html (404) with 1 occurrences migrated to:
https://example.org/foo/page.html ([https](https://example.org/foo/page.html ) result 404).
* [ ] http://example.org/image.png (404) with 4 occurrences migrated to:
https://example.org/image.png ([https](https://example.org/image.png ) result 404).
* [ ] http://example.org/music/people (404) with 4 occurrences migrated to:
https://example.org/music/people ([https](https://example.org/music/people ) result 404).
* [ ] http://example.org/page.cache.html (404) with 1 occurrences migrated to:
https://example.org/page.cache.html ([https](https://example.org/page.cache.html ) result 404).
* [ ] http://example.org/path (404) with 3 occurrences migrated to:
https://example.org/path ([https](https://example.org/path ) result 404).
* [ ] http://springframework.org/oxm-test (404) with 2 occurrences migrated to:
https://springframework.org/oxm-test ([https](https://springframework.org/oxm-test ) result 404).
* [ ] http://aaa.org:8080/app/b/c/d (301) with 1 occurrences migrated to:
https://www.aaa.org/app/b/c/d ([https](https://aaa.org:8080/app/b/c/d ) result 404).
* [ ] http://www.example.com/favicon.ico (404) with 2 occurrences migrated to:
https://www.example.com/favicon.ico ([https](https://www.example.com/favicon.ico ) result 404).
* [ ] http://www.example.com/foo/bar (404) with 1 occurrences migrated to:
https://www.example.com/foo/bar ([https](https://www.example.com/foo/bar ) result 404).
* [ ] http://www.example.com/hotels (404) with 2 occurrences migrated to:
https://www.example.com/hotels ([https](https://www.example.com/hotels ) result 404).
* [ ] http://www.example.com/user/ (404) with 4 occurrences migrated to:
https://www.example.com/user/ ([https](https://www.example.com/user/ ) result 404).
* [ ] http://www.example.com/user/john%3Bdoe/dashboard (404) with 4 occurrences migrated to:
https://www.example.com/user/john%3Bdoe/dashboard ([https](https://www.example.com/user/john%3Bdoe/dashboard ) result 404).
* [ ] http://www.example.com/user/john;doe/dashboard (404) with 2 occurrences migrated to:
https://www.example.com/user/john;doe/dashboard ([https](https://www.example.com/user/john;doe/dashboard ) result 404).
* [ ] http://www.ibm.com/developerworks/websphere/library/techarticles/0404_tang/0404_tang.html (301) with 1 occurrences migrated to:
https://www.ibm.com/developerworks/websphere/library/techarticles/0404_tang/0404_tang.html ([https](https://www.ibm.com/developerworks/websphere/library/techarticles/0404_tang/0404_tang.html ) result 404).
* [ ] http://mydomain1.com:80/path (301) with 2 occurrences migrated to:
https://www.mydomain1.com/path ([https](https://mydomain1.com:80/path ) result 404).
* [ ] http://www.quartz-scheduler.org/documentation/quartz-2.1.x/tutorials/tutorial-lesson-03 (404) with 1 occurrences migrated to:
https://www.quartz-scheduler.org/documentation/quartz-2.1.x/tutorials/tutorial-lesson-03 ([https](https://www.quartz-scheduler.org/documentation/quartz-2.1.x/tutorials/tutorial-lesson-03 ) result 404).
* [ ] http://www.utoronto.ca/webdocs/HTMLdocs/Book/Book-3ed/appb/mimetype.html (301) with 1 occurrences migrated to:
https://www.utoronto.ca/webdocs/HTMLdocs/Book/Book-3ed/appb/mimetype.html ([https](https://www.utoronto.ca/webdocs/HTMLdocs/Book/Book-3ed/appb/mimetype.html ) result 404).
* [ ] http://xml.apache.org/xslt (404) with 3 occurrences migrated to:
https://xml.apache.org/xslt ([https](https://xml.apache.org/xslt ) result 404).
* [ ] http://myhost.com/resource/path/myTemplate.txt (500) with 1 occurrences migrated to:
https://myhost.com/resource/path/myTemplate.txt ([https](https://myhost.com/resource/path/myTemplate.txt ) result 500).
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.
* [ ] http://activemq.apache.org/delete-inactive-destinations.html with 1 occurrences migrated to:
https://activemq.apache.org/delete-inactive-destinations.html ([https](https://activemq.apache.org/delete-inactive-destinations.html ) result 200).
* [ ] http://activemq.apache.org/stomp.html with 1 occurrences migrated to:
https://activemq.apache.org/stomp.html ([https](https://activemq.apache.org/stomp.html ) result 200).
* [ ] http://ant.apache.org with 1 occurrences migrated to:
https://ant.apache.org ([https](https://ant.apache.org ) result 200).
* [ ] http://asciidoctor.org/ with 1 occurrences migrated to:
https://asciidoctor.org/ ([https](https://asciidoctor.org/ ) result 200).
* [ ] http://asciidoctor.org/docs/editing-asciidoc-with-live-preview/ with 2 occurrences migrated to:
https://asciidoctor.org/docs/editing-asciidoc-with-live-preview/ ([https](https://asciidoctor.org/docs/editing-asciidoc-with-live-preview/ ) result 200).
* [ ] http://beanvalidation.org/ with 1 occurrences migrated to:
https://beanvalidation.org/ ([https](https://beanvalidation.org/ ) result 200).
* [ ] http://caniuse.com/ with 2 occurrences migrated to:
https://caniuse.com/ ([https](https://caniuse.com/ ) result 200).
* [ ] http://castor-data-binding.github.io/castor/reference-guides/1.3.3/html-single/index.html with 2 occurrences migrated to:
https://castor-data-binding.github.io/castor/reference-guides/1.3.3/html-single/index.html ([https](https://castor-data-binding.github.io/castor/reference-guides/1.3.3/html-single/index.html ) result 200).
* [ ] http://cbor.io/ with 1 occurrences migrated to:
https://cbor.io/ ([https](https://cbor.io/ ) result 200).
* [ ] http://code.jquery.com/jquery-1.11.0.min.js with 2 occurrences migrated to:
https://code.jquery.com/jquery-1.11.0.min.js ([https](https://code.jquery.com/jquery-1.11.0.min.js ) result 200).
* [ ] http://code.jquery.com/jquery.js with 1 occurrences migrated to:
https://code.jquery.com/jquery.js ([https](https://code.jquery.com/jquery.js ) result 200).
* [ ] http://commons.apache.org/proper/commons-lang/ with 2 occurrences migrated to:
https://commons.apache.org/proper/commons-lang/ ([https](https://commons.apache.org/proper/commons-lang/ ) result 200).
* [ ] http://docs.oracle.com/javase/6/docs/api/java/lang/instrument/package-summary.html with 1 occurrences migrated to:
https://docs.oracle.com/javase/6/docs/api/java/lang/instrument/package-summary.html ([https](https://docs.oracle.com/javase/6/docs/api/java/lang/instrument/package-summary.html ) result 200).
* [ ] http://docs.oracle.com/javase/8/docs/api/java/beans/package-summary.html with 1 occurrences migrated to:
https://docs.oracle.com/javase/8/docs/api/java/beans/package-summary.html ([https](https://docs.oracle.com/javase/8/docs/api/java/beans/package-summary.html ) result 200).
* [ ] http://docs.oracle.com/javase/8/docs/api/java/lang/instrument/package-summary.html with 1 occurrences migrated to:
https://docs.oracle.com/javase/8/docs/api/java/lang/instrument/package-summary.html ([https](https://docs.oracle.com/javase/8/docs/api/java/lang/instrument/package-summary.html ) result 200).
* [ ] http://docs.oracle.com/javase/8/docs/api/javax/script/ScriptEngineFactory.html with 2 occurrences migrated to:
https://docs.oracle.com/javase/8/docs/api/javax/script/ScriptEngineFactory.html ([https](https://docs.oracle.com/javase/8/docs/api/javax/script/ScriptEngineFactory.html ) result 200).
* [ ] http://docs.oracle.com/javase/tutorial/javabeans/advanced/customization.html with 1 occurrences migrated to:
https://docs.oracle.com/javase/tutorial/javabeans/advanced/customization.html ([https](https://docs.oracle.com/javase/tutorial/javabeans/advanced/customization.html ) result 200).
* [ ] http://docs.oracle.com/javase/tutorial/javabeans/writing/properties.html with 1 occurrences migrated to:
https://docs.oracle.com/javase/tutorial/javabeans/writing/properties.html ([https](https://docs.oracle.com/javase/tutorial/javabeans/writing/properties.html ) result 200).
* [ ] http://docs.seleniumhq.org/ with 1 occurrences migrated to:
https://docs.seleniumhq.org/ ([https](https://docs.seleniumhq.org/ ) result 200).
* [ ] http://docs.seleniumhq.org/projects/webdriver/ with 1 occurrences migrated to:
https://docs.seleniumhq.org/projects/webdriver/ ([https](https://docs.seleniumhq.org/projects/webdriver/ ) result 200).
* [ ] http://docs.spring.io/spring-framework/docs/current/javadoc-api/ with 1 occurrences migrated to:
https://docs.spring.io/spring-framework/docs/current/javadoc-api/ ([https](https://docs.spring.io/spring-framework/docs/current/javadoc-api/ ) result 200).
* [ ] http://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/web/servlet/view/script/ScriptTemplateView.html with 1 occurrences migrated to:
https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/web/servlet/view/script/ScriptTemplateView.html ([https](https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/web/servlet/view/script/ScriptTemplateView.html ) result 200).
* [ ] http://docs.spring.io/spring-framework/docs/current/spring-framework-reference/ with 1 occurrences migrated to:
https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/ ([https](https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/ ) result 200).
* [ ] http://docs.spring.io/spring-session/docs/current/reference/html5/ with 1 occurrences migrated to:
https://docs.spring.io/spring-session/docs/current/reference/html5/ ([https](https://docs.spring.io/spring-session/docs/current/reference/html5/ ) result 200).
* [ ] http://en.wikipedia.org/wiki/Adapter_pattern with 1 occurrences migrated to:
https://en.wikipedia.org/wiki/Adapter_pattern ([https](https://en.wikipedia.org/wiki/Adapter_pattern ) result 200).
* [ ] http://en.wikipedia.org/wiki/Halting_Problem with 1 occurrences migrated to:
https://en.wikipedia.org/wiki/Halting_Problem ([https](https://en.wikipedia.org/wiki/Halting_Problem ) result 200).
* [ ] http://en.wikipedia.org/wiki/List_of_HTTP_status_codes with 1 occurrences migrated to:
https://en.wikipedia.org/wiki/List_of_HTTP_status_codes ([https](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes ) result 200).
* [ ] http://en.wikipedia.org/wiki/MIME with 1 occurrences migrated to:
https://en.wikipedia.org/wiki/MIME ([https](https://en.wikipedia.org/wiki/MIME ) result 200).
* [ ] http://en.wikipedia.org/wiki/Mock_Object with 1 occurrences migrated to:
https://en.wikipedia.org/wiki/Mock_Object ([https](https://en.wikipedia.org/wiki/Mock_Object ) result 200).
* [ ] http://en.wikipedia.org/wiki/Polyfill with 2 occurrences migrated to:
https://en.wikipedia.org/wiki/Polyfill ([https](https://en.wikipedia.org/wiki/Polyfill ) result 200).
* [ ] http://example.com with 132 occurrences migrated to:
https://example.com ([https](https://example.com ) result 200).
* [ ] http://example.com/ with 16 occurrences migrated to:
https://example.com/ ([https](https://example.com/ ) result 200).
* [ ] http://example.com?foo with 2 occurrences migrated to:
https://example.com?foo ([https](https://example.com?foo ) result 200).
* [ ] http://example.com?foo=bar with 8 occurrences migrated to:
https://example.com?foo=bar ([https](https://example.com?foo=bar ) result 200).
* [ ] http://example.com?foo=bar@baz with 1 occurrences migrated to:
https://example.com?foo=bar@baz ([https](https://example.com?foo=bar@baz ) result 200).
* [ ] http://example.org with 18 occurrences migrated to:
https://example.org ([https](https://example.org ) result 200).
* [ ] http://example.org/ with 1 occurrences migrated to:
https://example.org/ ([https](https://example.org/ ) result 200).
* [ ] http://fasterxml.github.io/jackson-databind/javadoc/2.6/com/fasterxml/jackson/databind/DeserializationFeature.html with 2 occurrences migrated to:
https://fasterxml.github.io/jackson-databind/javadoc/2.6/com/fasterxml/jackson/databind/DeserializationFeature.html ([https](https://fasterxml.github.io/jackson-databind/javadoc/2.6/com/fasterxml/jackson/databind/DeserializationFeature.html ) result 200).
* [ ] http://fasterxml.github.io/jackson-databind/javadoc/2.6/com/fasterxml/jackson/databind/MapperFeature.html with 2 occurrences migrated to:
https://fasterxml.github.io/jackson-databind/javadoc/2.6/com/fasterxml/jackson/databind/MapperFeature.html ([https](https://fasterxml.github.io/jackson-databind/javadoc/2.6/com/fasterxml/jackson/databind/MapperFeature.html ) result 200).
* [ ] http://h2database.com with 1 occurrences migrated to:
https://h2database.com ([https](https://h2database.com ) result 200).
* [ ] http://handlebarsjs.com with 2 occurrences migrated to:
https://handlebarsjs.com ([https](https://handlebarsjs.com ) result 200).
* [ ] http://handlebarsjs.com/ with 2 occurrences migrated to:
https://handlebarsjs.com/ ([https](https://handlebarsjs.com/ ) result 200).
* [ ] http://hc.apache.org/httpcomponents-asyncclient-dev/ with 1 occurrences migrated to:
https://hc.apache.org/httpcomponents-asyncclient-dev/ ([https](https://hc.apache.org/httpcomponents-asyncclient-dev/ ) result 200).
* [ ] http://hc.apache.org/httpcomponents-client-ga/ with 2 occurrences migrated to:
https://hc.apache.org/httpcomponents-client-ga/ ([https](https://hc.apache.org/httpcomponents-client-ga/ ) result 200).
* [ ] http://hc.apache.org/httpcomponents-client-ga/httpclient/ with 1 occurrences migrated to:
https://hc.apache.org/httpcomponents-client-ga/httpclient/ ([https](https://hc.apache.org/httpcomponents-client-ga/httpclient/ ) result 200).
* [ ] http://www.hibernate.org/ (301) with 1 occurrences migrated to:
https://hibernate.org/ ([https](https://www.hibernate.org/ ) result 200).
* [ ] http://www.hibernate.org (301) with 1 occurrences migrated to:
https://hibernate.org/ ([https](https://www.hibernate.org ) result 200).
* [ ] http://jcp.org/aboutJava/communityprocess/final/jsr003/index3.html with 1 occurrences migrated to:
https://jcp.org/aboutJava/communityprocess/final/jsr003/index3.html ([https](https://jcp.org/aboutJava/communityprocess/final/jsr003/index3.html ) result 200).
* [ ] http://jcp.org/aboutJava/communityprocess/final/jsr160/index.html with 1 occurrences migrated to:
https://jcp.org/aboutJava/communityprocess/final/jsr160/index.html ([https](https://jcp.org/aboutJava/communityprocess/final/jsr160/index.html ) result 200).
* [ ] http://jcp.org/en/jsr/detail?id=107 with 1 occurrences migrated to:
https://jcp.org/en/jsr/detail?id=107 ([https](https://jcp.org/en/jsr/detail?id=107 ) result 200).
* [ ] http://joel-costigliola.github.io/assertj/ with 3 occurrences migrated to:
https://joel-costigliola.github.io/assertj/ ([https](https://joel-costigliola.github.io/assertj/ ) result 200).
* [ ] http://jsonassert.skyscreamer.org with 1 occurrences migrated to:
https://jsonassert.skyscreamer.org ([https](https://jsonassert.skyscreamer.org ) result 200).
* [ ] http://jsonassert.skyscreamer.org/ with 5 occurrences migrated to:
https://jsonassert.skyscreamer.org/ ([https](https://jsonassert.skyscreamer.org/ ) result 200).
* [ ] http://junit.org/junit5/docs/current/user-guide/ with 2 occurrences migrated to:
https://junit.org/junit5/docs/current/user-guide/ ([https](https://junit.org/junit5/docs/current/user-guide/ ) result 200).
* [ ] http://kotlinlang.org/ with 2 occurrences migrated to:
https://kotlinlang.org/ ([https](https://kotlinlang.org/ ) result 200).
* [ ] http://kotlinlang.org/docs/reference/ with 1 occurrences migrated to:
https://kotlinlang.org/docs/reference/ ([https](https://kotlinlang.org/docs/reference/ ) result 200).
* [ ] http://kotlinlang.org/docs/reference/classes.html with 3 occurrences migrated to:
https://kotlinlang.org/docs/reference/classes.html ([https](https://kotlinlang.org/docs/reference/classes.html ) result 200).
* [ ] http://mydomain.com with 5 occurrences migrated to:
https://mydomain.com ([https](https://mydomain.com ) result 200).
* [ ] http://netty.io/ with 1 occurrences migrated to:
https://netty.io/ ([https](https://netty.io/ ) result 200).
* [ ] http://openjdk.java.net/jeps/290 with 1 occurrences migrated to:
https://openjdk.java.net/jeps/290 ([https](https://openjdk.java.net/jeps/290 ) result 200).
* [ ] http://openjdk.java.net/projects/nashorn/ with 10 occurrences migrated to:
https://openjdk.java.net/projects/nashorn/ ([https](https://openjdk.java.net/projects/nashorn/ ) result 200).
* [ ] http://poi.apache.org with 3 occurrences migrated to:
https://poi.apache.org ([https](https://poi.apache.org ) result 200).
* [ ] http://projects.spring.io/spring-boot/ with 1 occurrences migrated to:
https://projects.spring.io/spring-boot/ ([https](https://projects.spring.io/spring-boot/ ) result 200).
* [ ] http://projects.spring.io/spring-data/ with 1 occurrences migrated to:
https://projects.spring.io/spring-data/ ([https](https://projects.spring.io/spring-data/ ) result 200).
* [ ] http://projects.spring.io/spring-framework/ with 1 occurrences migrated to:
https://projects.spring.io/spring-framework/ ([https](https://projects.spring.io/spring-framework/ ) result 200).
* [ ] http://projects.spring.io/spring-integration/ with 1 occurrences migrated to:
https://projects.spring.io/spring-integration/ ([https](https://projects.spring.io/spring-integration/ ) result 200).
* [ ] http://projects.spring.io/spring-security/ with 3 occurrences migrated to:
https://projects.spring.io/spring-security/ ([https](https://projects.spring.io/spring-security/ ) result 200).
* [ ] http://repo1.maven.org/maven2/javax/inject/javax.inject/1/ with 2 occurrences migrated to:
https://repo1.maven.org/maven2/javax/inject/javax.inject/1/ ([https](https://repo1.maven.org/maven2/javax/inject/javax.inject/1/ ) result 200).
* [ ] http://schema.spring.io/mvc/spring-mvc.xsd with 1 occurrences migrated to:
https://schema.spring.io/mvc/spring-mvc.xsd ([https](https://schema.spring.io/mvc/spring-mvc.xsd ) result 200).
* [ ] http://search.maven.org/ with 2 occurrences migrated to:
https://search.maven.org/ ([https](https://search.maven.org/ ) result 200).
* [ ] http://sockjs.github.io/sockjs-protocol/sockjs-protocol-0.3.3.html with 3 occurrences migrated to:
https://sockjs.github.io/sockjs-protocol/sockjs-protocol-0.3.3.html ([https](https://sockjs.github.io/sockjs-protocol/sockjs-protocol-0.3.3.html ) result 200).
* [ ] http://sourceforge.net with 1 occurrences migrated to:
https://sourceforge.net ([https](https://sourceforge.net ) result 200).
* [ ] http://sourceforge.net/projects/javadiff/ with 1 occurrences migrated to:
https://sourceforge.net/projects/javadiff/ ([https](https://sourceforge.net/projects/javadiff/ ) result 200).
* [ ] http://sourceforge.net/sflogo.php?group_id=37160 with 1 occurrences migrated to:
https://sourceforge.net/sflogo.php?group_id=37160 ([https](https://sourceforge.net/sflogo.php?group_id=37160 ) result 200).
* [ ] http://spring.io/blog/ with 1 occurrences migrated to:
https://spring.io/blog/ ([https](https://spring.io/blog/ ) result 200).
* [ ] http://spring.io/blog/category/news with 1 occurrences migrated to:
https://spring.io/blog/category/news ([https](https://spring.io/blog/category/news ) result 200).
* [ ] http://square.github.io/okhttp/ with 1 occurrences migrated to:
https://square.github.io/okhttp/ ([https](https://square.github.io/okhttp/ ) result 200).
* [ ] http://stackoverflow.com/questions/1481251/what-does-document-domain-document-domain-do with 1 occurrences migrated to:
https://stackoverflow.com/questions/1481251/what-does-document-domain-document-domain-do ([https](https://stackoverflow.com/questions/1481251/what-does-document-domain-document-domain-do ) result 200).
* [ ] http://stackoverflow.com/questions/19394570/java-jre-7u45-breaks-classloader-getresources with 2 occurrences migrated to:
https://stackoverflow.com/questions/19394570/java-jre-7u45-breaks-classloader-getresources ([https](https://stackoverflow.com/questions/19394570/java-jre-7u45-breaks-classloader-getresources ) result 200).
* [ ] http://stackoverflow.com/questions/22986109/testing-spring-managed-servlet with 1 occurrences migrated to:
https://stackoverflow.com/questions/22986109/testing-spring-managed-servlet ([https](https://stackoverflow.com/questions/22986109/testing-spring-managed-servlet ) result 200).
* [ ] http://stackoverflow.com/questions/24725438/what-could-cause-a-class-implementing-applicationlistenercontextrefreshedevent with 1 occurrences migrated to:
https://stackoverflow.com/questions/24725438/what-could-cause-a-class-implementing-applicationlistenercontextrefreshedevent ([https](https://stackoverflow.com/questions/24725438/what-could-cause-a-class-implementing-applicationlistenercontextrefreshedevent ) result 200).
* [ ] http://stackoverflow.com/questions/35733344/can-contextconfiguration-in-a-custom-annotation-be-merged with 1 occurrences migrated to:
https://stackoverflow.com/questions/35733344/can-contextconfiguration-in-a-custom-annotation-be-merged ([https](https://stackoverflow.com/questions/35733344/can-contextconfiguration-in-a-custom-annotation-be-merged ) result 200).
* [ ] http://start.spring.io/ with 2 occurrences migrated to:
https://start.spring.io/ ([https](https://start.spring.io/ ) result 200).
* [ ] http://stas-blogspot.blogspot.com/2010/03/java-bridge-methods-explained.html with 1 occurrences migrated to:
https://stas-blogspot.blogspot.com/2010/03/java-bridge-methods-explained.html ([https](https://stas-blogspot.blogspot.com/2010/03/java-bridge-methods-explained.html ) result 200).
* [ ] http://stomp.github.io/stomp-specification-1.2.html with 9 occurrences migrated to:
https://stomp.github.io/stomp-specification-1.2.html ([https](https://stomp.github.io/stomp-specification-1.2.html ) result 200).
* [ ] http://struts.apache.org with 1 occurrences migrated to:
https://struts.apache.org ([https](https://struts.apache.org ) result 200).
* [ ] http://struts.apache.org/ with 1 occurrences migrated to:
https://struts.apache.org/ ([https](https://struts.apache.org/ ) result 200).
* [ ] http://tapestry.apache.org/ with 2 occurrences migrated to:
https://tapestry.apache.org/ ([https](https://tapestry.apache.org/ ) result 200).
* [ ] http://tiles.apache.org with 4 occurrences migrated to:
https://tiles.apache.org ([https](https://tiles.apache.org ) result 200).
* [ ] http://tiles.apache.org/framework/dependency-management.html with 1 occurrences migrated to:
https://tiles.apache.org/framework/dependency-management.html ([https](https://tiles.apache.org/framework/dependency-management.html ) result 200).
* [ ] http://tools.ietf.org/html/rfc1945 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc1945 ([https](https://tools.ietf.org/html/rfc1945 ) result 200).
* [ ] http://tools.ietf.org/html/rfc2109 with 2 occurrences migrated to:
https://tools.ietf.org/html/rfc2109 ([https](https://tools.ietf.org/html/rfc2109 ) result 200).
* [ ] http://tools.ietf.org/html/rfc2295 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc2295 ([https](https://tools.ietf.org/html/rfc2295 ) result 200).
* [ ] http://tools.ietf.org/html/rfc2324 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc2324 ([https](https://tools.ietf.org/html/rfc2324 ) result 200).
* [ ] http://tools.ietf.org/html/rfc2518 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc2518 ([https](https://tools.ietf.org/html/rfc2518 ) result 200).
* [ ] http://tools.ietf.org/html/rfc2616 with 3 occurrences migrated to:
https://tools.ietf.org/html/rfc2616 ([https](https://tools.ietf.org/html/rfc2616 ) result 200).
* [ ] http://tools.ietf.org/html/rfc2774 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc2774 ([https](https://tools.ietf.org/html/rfc2774 ) result 200).
* [ ] http://tools.ietf.org/html/rfc2817 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc2817 ([https](https://tools.ietf.org/html/rfc2817 ) result 200).
* [ ] http://tools.ietf.org/html/rfc2965 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc2965 ([https](https://tools.ietf.org/html/rfc2965 ) result 200).
* [ ] http://tools.ietf.org/html/rfc3229 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc3229 ([https](https://tools.ietf.org/html/rfc3229 ) result 200).
* [ ] http://tools.ietf.org/html/rfc3986 with 3 occurrences migrated to:
https://tools.ietf.org/html/rfc3986 ([https](https://tools.ietf.org/html/rfc3986 ) result 200).
* [ ] http://tools.ietf.org/html/rfc4918 with 5 occurrences migrated to:
https://tools.ietf.org/html/rfc4918 ([https](https://tools.ietf.org/html/rfc4918 ) result 200).
* [ ] http://tools.ietf.org/html/rfc5842 with 2 occurrences migrated to:
https://tools.ietf.org/html/rfc5842 ([https](https://tools.ietf.org/html/rfc5842 ) result 200).
* [ ] http://tools.ietf.org/html/rfc5988 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc5988 ([https](https://tools.ietf.org/html/rfc5988 ) result 200).
* [ ] http://tools.ietf.org/html/rfc6202 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc6202 ([https](https://tools.ietf.org/html/rfc6202 ) result 200).
* [ ] http://tools.ietf.org/html/rfc6266 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc6266 ([https](https://tools.ietf.org/html/rfc6266 ) result 200).
* [ ] http://tools.ietf.org/html/rfc6454 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc6454 ([https](https://tools.ietf.org/html/rfc6454 ) result 200).
* [ ] http://tools.ietf.org/html/rfc6455 with 2 occurrences migrated to:
https://tools.ietf.org/html/rfc6455 ([https](https://tools.ietf.org/html/rfc6455 ) result 200).
* [ ] http://tools.ietf.org/html/rfc6585 with 4 occurrences migrated to:
https://tools.ietf.org/html/rfc6585 ([https](https://tools.ietf.org/html/rfc6585 ) result 200).
* [ ] http://tools.ietf.org/html/rfc7230 with 10 occurrences migrated to:
https://tools.ietf.org/html/rfc7230 ([https](https://tools.ietf.org/html/rfc7230 ) result 200).
* [ ] http://tools.ietf.org/html/rfc7231 with 56 occurrences migrated to:
https://tools.ietf.org/html/rfc7231 ([https](https://tools.ietf.org/html/rfc7231 ) result 200).
* [ ] http://tools.ietf.org/html/rfc7232 with 8 occurrences migrated to:
https://tools.ietf.org/html/rfc7232 ([https](https://tools.ietf.org/html/rfc7232 ) result 200).
* [ ] http://tools.ietf.org/html/rfc7233 with 12 occurrences migrated to:
https://tools.ietf.org/html/rfc7233 ([https](https://tools.ietf.org/html/rfc7233 ) result 200).
* [ ] http://tools.ietf.org/html/rfc7234 with 5 occurrences migrated to:
https://tools.ietf.org/html/rfc7234 ([https](https://tools.ietf.org/html/rfc7234 ) result 200).
* [ ] http://tools.ietf.org/html/rfc7235 with 6 occurrences migrated to:
https://tools.ietf.org/html/rfc7235 ([https](https://tools.ietf.org/html/rfc7235 ) result 200).
* [ ] http://tools.ietf.org/html/rfc7238 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc7238 ([https](https://tools.ietf.org/html/rfc7238 ) result 200).
* [ ] http://tools.ietf.org/html/rfc7239 with 7 occurrences migrated to:
https://tools.ietf.org/html/rfc7239 ([https](https://tools.ietf.org/html/rfc7239 ) result 200).
* [ ] http://tools.ietf.org/rfcdiff?difftype=--hwdiff&url2=draft-ietf-webdav-protocol-06.txt with 3 occurrences migrated to:
https://tools.ietf.org/rfcdiff?difftype=--hwdiff&url2=draft-ietf-webdav-protocol-06.txt ([https](https://tools.ietf.org/rfcdiff?difftype=--hwdiff&url2=draft-ietf-webdav-protocol-06.txt ) result 200).
* [ ] http://unlicense.org with 1 occurrences migrated to:
https://unlicense.org ([https](https://unlicense.org ) result 200).
* [ ] http://www.amazon.com/exec/obidos/tg/detail/-/0764543857/ with 10 occurrences migrated to:
https://www.amazon.com/exec/obidos/tg/detail/-/0764543857/ ([https](https://www.amazon.com/exec/obidos/tg/detail/-/0764543857/ ) result 200).
* [ ] http://www.apache.org with 1 occurrences migrated to:
https://www.apache.org ([https](https://www.apache.org ) result 200).
* [ ] http://www.apple.com/DTDs/PropertyList-1.0.dtd with 6 occurrences migrated to:
https://www.apple.com/DTDs/PropertyList-1.0.dtd ([https](https://www.apple.com/DTDs/PropertyList-1.0.dtd ) result 200).
* [ ] http://www.atomikos.com/ with 1 occurrences migrated to:
https://www.atomikos.com/ ([https](https://www.atomikos.com/ ) result 200).
* [ ] http://www.baeldung.com/kotlin-null-safety with 1 occurrences migrated to:
https://www.baeldung.com/kotlin-null-safety ([https](https://www.baeldung.com/kotlin-null-safety ) result 200).
* [ ] http://www.eclipse.org/aspectj/doc/released/devguide/index.html with 1 occurrences migrated to:
https://www.eclipse.org/aspectj/doc/released/devguide/index.html ([https](https://www.eclipse.org/aspectj/doc/released/devguide/index.html ) result 200).
* [ ] http://www.eclipse.org/aspectj/doc/released/devguide/ltw-configuration.html with 1 occurrences migrated to:
https://www.eclipse.org/aspectj/doc/released/devguide/ltw-configuration.html ([https](https://www.eclipse.org/aspectj/doc/released/devguide/ltw-configuration.html ) result 200).
* [ ] http://www.eclipse.org/aspectj/dtd/aspectj.dtd with 1 occurrences migrated to:
https://www.eclipse.org/aspectj/dtd/aspectj.dtd ([https](https://www.eclipse.org/aspectj/dtd/aspectj.dtd ) result 200).
* [ ] http://ehcache.sourceforge.net (301) with 1 occurrences migrated to:
https://www.ehcache.org/ ([https](https://ehcache.sourceforge.net ) result 200).
* [ ] http://ehcache.org/ (301) with 1 occurrences migrated to:
https://www.ehcache.org/ ([https](https://ehcache.org/ ) result 200).
* [ ] http://www.embeddedjs.com/ with 2 occurrences migrated to:
https://www.embeddedjs.com/ ([https](https://www.embeddedjs.com/ ) result 200).
* [ ] http://www.enterpriseintegrationpatterns.com with 1 occurrences migrated to:
https://www.enterpriseintegrationpatterns.com ([https](https://www.enterpriseintegrationpatterns.com ) result 200).
* [ ] http://www.example.org/?param=aGVsbG9Xb3JsZA%3D%3D with 1 occurrences migrated to:
https://www.example.org/?param=aGVsbG9Xb3JsZA%3D%3D ([https](https://www.example.org/?param=aGVsbG9Xb3JsZA%3D%3D ) result 200).
* [ ] http://www.google.com with 2 occurrences migrated to:
https://www.google.com ([https](https://www.google.com ) result 200).
* [ ] http://www.h2database.com with 1 occurrences migrated to:
https://www.h2database.com ([https](https://www.h2database.com ) result 200).
* [ ] http://www.h2database.com/html/grammar.html with 1 occurrences migrated to:
https://www.h2database.com/html/grammar.html ([https](https://www.h2database.com/html/grammar.html ) result 200).
* [ ] http://www.ietf.org with 1 occurrences migrated to:
https://www.ietf.org ([https](https://www.ietf.org ) result 200).
* [ ] http://www.ietf.org/rfc/rfc1867.txt with 1 occurrences migrated to:
https://www.ietf.org/rfc/rfc1867.txt ([https](https://www.ietf.org/rfc/rfc1867.txt ) result 200).
* [ ] http://www.ietf.org/rfc/rfc2396.txt with 2 occurrences migrated to:
https://www.ietf.org/rfc/rfc2396.txt ([https](https://www.ietf.org/rfc/rfc2396.txt ) result 200).
* [ ] http://www.ietf.org/rfc/rfc3986.txt with 11 occurrences migrated to:
https://www.ietf.org/rfc/rfc3986.txt ([https](https://www.ietf.org/rfc/rfc3986.txt ) result 200).
* [ ] http://www.infoq.com/ with 1 occurrences migrated to:
https://www.infoq.com/ ([https](https://www.infoq.com/ ) result 200).
* [ ] http://www.infoq.com/minibooks/JTDS with 1 occurrences migrated to:
https://www.infoq.com/minibooks/JTDS ([https](https://www.infoq.com/minibooks/JTDS ) result 200).
* [ ] http://www.jetbrains.com/idea/ with 1 occurrences migrated to:
https://www.jetbrains.com/idea/ ([https](https://www.jetbrains.com/idea/ ) result 200).
* [ ] http://www.json.org/ with 1 occurrences migrated to:
https://www.json.org/ ([https](https://www.json.org/ ) result 200).
* [ ] http://www.jython.org with 2 occurrences migrated to:
https://www.jython.org ([https](https://www.jython.org ) result 200).
* [ ] http://www.jython.org/ with 2 occurrences migrated to:
https://www.jython.org/ ([https](https://www.jython.org/ ) result 200).
* [ ] http://www.lowagie.com/iText with 2 occurrences migrated to:
https://www.lowagie.com/iText ([https](https://www.lowagie.com/iText ) result 200).
* [ ] http://www.manpagez.com/man/5/crontab/ with 1 occurrences migrated to:
https://www.manpagez.com/man/5/crontab/ ([https](https://www.manpagez.com/man/5/crontab/ ) result 200).
* [ ] http://mydomain1.com:80/ (301) with 2 occurrences migrated to:
https://www.mydomain1.com/ ([https](https://mydomain1.com:80/ ) result 200).
* [ ] http://mydomain1.com:80 (301) with 1 occurrences migrated to:
https://www.mydomain1.com/ ([https](https://mydomain1.com:80 ) result 200).
* [ ] http://www.oracle.com/technetwork/articles/javaee/jpa-137156.html with 1 occurrences migrated to:
https://www.oracle.com/technetwork/articles/javaee/jpa-137156.html ([https](https://www.oracle.com/technetwork/articles/javaee/jpa-137156.html ) result 200).
* [ ] http://www.oracle.com/technetwork/java/javaee/javaserverfaces-139869.html with 1 occurrences migrated to:
https://www.oracle.com/technetwork/java/javaee/javaserverfaces-139869.html ([https](https://www.oracle.com/technetwork/java/javaee/javaserverfaces-139869.html ) result 200).
* [ ] http://www.oracle.com/technetwork/java/javase/documentation/spec-136004.html with 1 occurrences migrated to:
https://www.oracle.com/technetwork/java/javase/documentation/spec-136004.html ([https](https://www.oracle.com/technetwork/java/javase/documentation/spec-136004.html ) result 200).
* [ ] http://www.oracle.com/technetwork/java/javase/tech/download-jsp-141676.html with 1 occurrences migrated to:
https://www.oracle.com/technetwork/java/javase/tech/download-jsp-141676.html ([https](https://www.oracle.com/technetwork/java/javase/tech/download-jsp-141676.html ) result 200).
* [ ] http://www.oracle.com/technetwork/java/javase/tech/javamanagement-140525.html with 1 occurrences migrated to:
https://www.oracle.com/technetwork/java/javase/tech/javamanagement-140525.html ([https](https://www.oracle.com/technetwork/java/javase/tech/javamanagement-140525.html ) result 200).
* [ ] http://www.ow2.org/ with 1 occurrences migrated to:
https://www.ow2.org/ ([https](https://www.ow2.org/ ) result 200).
* [ ] http://www.owasp.org/index.php/HTTPOnly with 4 occurrences migrated to:
https://www.owasp.org/index.php/HTTPOnly ([https](https://www.owasp.org/index.php/HTTPOnly ) result 200).
* [ ] http://quartz-scheduler.org (301) with 3 occurrences migrated to:
https://www.quartz-scheduler.org/ ([https](https://quartz-scheduler.org ) result 200).
* [ ] http://www.rabbitmq.com/stomp.html with 1 occurrences migrated to:
https://www.rabbitmq.com/stomp.html ([https](https://www.rabbitmq.com/stomp.html ) result 200).
* [ ] http://www.reactive-streams.org with 1 occurrences migrated to:
https://www.reactive-streams.org ([https](https://www.reactive-streams.org ) result 200).
* [ ] http://www.reactive-streams.org/ with 2 occurrences migrated to:
https://www.reactive-streams.org/ ([https](https://www.reactive-streams.org/ ) result 200).
* [ ] http://www.reactive-streams.org/reactive-streams-1.0.1-javadoc/org/reactivestreams/Publisher.html with 1 occurrences migrated to:
https://www.reactive-streams.org/reactive-streams-1.0.1-javadoc/org/reactivestreams/Publisher.html ([https](https://www.reactive-streams.org/reactive-streams-1.0.1-javadoc/org/reactivestreams/Publisher.html ) result 200).
* [ ] http://www.reactive-streams.org/reactive-streams-1.0.1-javadoc/org/reactivestreams/Subscriber.html with 1 occurrences migrated to:
https://www.reactive-streams.org/reactive-streams-1.0.1-javadoc/org/reactivestreams/Subscriber.html ([https](https://www.reactive-streams.org/reactive-streams-1.0.1-javadoc/org/reactivestreams/Subscriber.html ) result 200).
* [ ] http://seleniumhq.org/projects/webdriver/ (301) with 1 occurrences migrated to:
https://www.seleniumhq.org ([https](https://seleniumhq.org/projects/webdriver/ ) result 200).
* [ ] http://www.springbyexample.org/examples/custom-thread-scope-module.html with 1 occurrences migrated to:
https://www.springbyexample.org/examples/custom-thread-scope-module.html ([https](https://www.springbyexample.org/examples/custom-thread-scope-module.html ) result 200).
* [ ] http://www.springframework.org/dtd/spring-beans-2.0.dtd with 3 occurrences migrated to:
https://www.springframework.org/dtd/spring-beans-2.0.dtd ([https](https://www.springframework.org/dtd/spring-beans-2.0.dtd ) result 200).
* [ ] http://www.springframework.org/schema/aop/spring-aop.xsd with 12 occurrences migrated to:
https://www.springframework.org/schema/aop/spring-aop.xsd ([https](https://www.springframework.org/schema/aop/spring-aop.xsd ) result 200).
* [ ] http://www.springframework.org/schema/beans/spring-beans.xsd with 80 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans.xsd ([https](https://www.springframework.org/schema/beans/spring-beans.xsd ) result 200).
* [ ] http://www.springframework.org/schema/cache/spring-cache.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/cache/spring-cache.xsd ([https](https://www.springframework.org/schema/cache/spring-cache.xsd ) result 200).
* [ ] http://www.springframework.org/schema/context/spring-context.xsd with 13 occurrences migrated to:
https://www.springframework.org/schema/context/spring-context.xsd ([https](https://www.springframework.org/schema/context/spring-context.xsd ) result 200).
* [ ] http://www.springframework.org/schema/jdbc/spring-jdbc.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/jdbc/spring-jdbc.xsd ([https](https://www.springframework.org/schema/jdbc/spring-jdbc.xsd ) result 200).
* [ ] http://www.springframework.org/schema/jee/spring-jee.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/jee/spring-jee.xsd ([https](https://www.springframework.org/schema/jee/spring-jee.xsd ) result 200).
* [ ] http://www.springframework.org/schema/jms/spring-jms.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/jms/spring-jms.xsd ([https](https://www.springframework.org/schema/jms/spring-jms.xsd ) result 200).
* [ ] http://www.springframework.org/schema/lang/spring-lang.xsd with 4 occurrences migrated to:
https://www.springframework.org/schema/lang/spring-lang.xsd ([https](https://www.springframework.org/schema/lang/spring-lang.xsd ) result 200).
* [ ] http://www.springframework.org/schema/mvc/spring-mvc.xsd with 3 occurrences migrated to:
https://www.springframework.org/schema/mvc/spring-mvc.xsd ([https](https://www.springframework.org/schema/mvc/spring-mvc.xsd ) result 200).
* [ ] http://www.springframework.org/schema/oxm/spring-oxm.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/oxm/spring-oxm.xsd ([https](https://www.springframework.org/schema/oxm/spring-oxm.xsd ) result 200).
* [ ] http://www.springframework.org/schema/tool/spring-tool.xsd with 13 occurrences migrated to:
https://www.springframework.org/schema/tool/spring-tool.xsd ([https](https://www.springframework.org/schema/tool/spring-tool.xsd ) result 200).
* [ ] http://www.springframework.org/schema/tx/spring-tx.xsd with 8 occurrences migrated to:
https://www.springframework.org/schema/tx/spring-tx.xsd ([https](https://www.springframework.org/schema/tx/spring-tx.xsd ) result 200).
* [ ] http://www.springframework.org/schema/util/spring-util.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/util/spring-util.xsd ([https](https://www.springframework.org/schema/util/spring-util.xsd ) result 200).
* [ ] http://www.springframework.org/schema/websocket/spring-websocket.xsd with 12 occurrences migrated to:
https://www.springframework.org/schema/websocket/spring-websocket.xsd ([https](https://www.springframework.org/schema/websocket/spring-websocket.xsd ) result 200).
* [ ] http://www.stuartellis.eu/articles/erb/ (301) with 2 occurrences migrated to:
https://www.stuartellis.name/articles/erb/ ([https](https://www.stuartellis.eu/articles/erb/ ) result 200).
* [ ] http://www.thymeleaf.org/ with 2 occurrences migrated to:
https://www.thymeleaf.org/ ([https](https://www.thymeleaf.org/ ) result 200).
* [ ] http://www.thymeleaf.org/documentation.html with 2 occurrences migrated to:
https://www.thymeleaf.org/documentation.html ([https](https://www.thymeleaf.org/documentation.html ) result 200).
* [ ] http://www.w3.org/2000/xmlns/ with 5 occurrences migrated to:
https://www.w3.org/2000/xmlns/ ([https](https://www.w3.org/2000/xmlns/ ) result 200).
* [ ] http://www.w3.org/2004/08/xop/include with 2 occurrences migrated to:
https://www.w3.org/2004/08/xop/include ([https](https://www.w3.org/2004/08/xop/include ) result 200).
* [ ] http://www.w3.org/DesignIssues/MatrixURIs.html with 1 occurrences migrated to:
https://www.w3.org/DesignIssues/MatrixURIs.html ([https](https://www.w3.org/DesignIssues/MatrixURIs.html ) result 200).
* [ ] http://www.w3.org/TR/2004/WD-soap12-mtom-20040608/ with 2 occurrences migrated to:
https://www.w3.org/TR/2004/WD-soap12-mtom-20040608/ ([https](https://www.w3.org/TR/2004/WD-soap12-mtom-20040608/ ) result 200).
* [ ] http://www.w3.org/TR/2005/REC-xop10-20050125/ with 6 occurrences migrated to:
https://www.w3.org/TR/2005/REC-xop10-20050125/ ([https](https://www.w3.org/TR/2005/REC-xop10-20050125/ ) result 200).
* [ ] http://www.w3.org/TR/cors/ with 19 occurrences migrated to:
https://www.w3.org/TR/cors/ ([https](https://www.w3.org/TR/cors/ ) result 200).
* [ ] http://www.w3.org/TR/eventsource/ with 2 occurrences migrated to:
https://www.w3.org/TR/eventsource/ ([https](https://www.w3.org/TR/eventsource/ ) result 200).
* [ ] http://www.w3.org/TR/xhtml1/ with 1 occurrences migrated to:
https://www.w3.org/TR/xhtml1/ ([https](https://www.w3.org/TR/xhtml1/ ) result 200).
* [ ] http://www.w3.org/TR/xhtml1/diffs.html with 1 occurrences migrated to:
https://www.w3.org/TR/xhtml1/diffs.html ([https](https://www.w3.org/TR/xhtml1/diffs.html ) result 200).
* [ ] http://www.w3.org/TR/xhtml1/dtds.html with 1 occurrences migrated to:
https://www.w3.org/TR/xhtml1/dtds.html ([https](https://www.w3.org/TR/xhtml1/dtds.html ) result 200).
* [ ] http://www.webjars.org with 4 occurrences migrated to:
https://www.webjars.org ([https](https://www.webjars.org ) result 200).
* [ ] http://www.webjars.org/ with 2 occurrences migrated to:
https://www.webjars.org/ ([https](https://www.webjars.org/ ) result 200).
* [ ] http://www.webjars.org/documentation with 2 occurrences migrated to:
https://www.webjars.org/documentation ([https](https://www.webjars.org/documentation ) result 200).
* [ ] http://x-stream.github.io/ with 2 occurrences migrated to:
https://x-stream.github.io/ ([https](https://x-stream.github.io/ ) result 200).
* [ ] http://youtrack.jetbrains.com/issue/IDEA-53476 with 1 occurrences migrated to:
https://youtrack.jetbrains.com/issue/IDEA-53476 ([https](https://youtrack.jetbrains.com/issue/IDEA-53476 ) result 200).
* [ ] http://youtrack.jetbrains.com/issue/IDEA-64446 with 1 occurrences migrated to:
https://youtrack.jetbrains.com/issue/IDEA-64446 ([https](https://youtrack.jetbrains.com/issue/IDEA-64446 ) result 200).
* [ ] http://bit.ly/TRlX2r with 1 occurrences migrated to:
https://bit.ly/TRlX2r ([https](https://bit.ly/TRlX2r ) result 301).
* [ ] http://bit.ly/UzccDt with 1 occurrences migrated to:
https://bit.ly/UzccDt ([https](https://bit.ly/UzccDt ) result 301).
* [ ] http://bit.ly/p9rIvx with 1 occurrences migrated to:
https://bit.ly/p9rIvx ([https](https://bit.ly/p9rIvx ) result 301).
* [ ] http://bit.ly/qUwvwz with 1 occurrences migrated to:
https://bit.ly/qUwvwz ([https](https://bit.ly/qUwvwz ) result 301).
* [ ] http://blogs.msdn.com/b/ieinternals/archive/2010/05/13/xdomainrequest-restrictions-limitations-and-workarounds.aspx with 1 occurrences migrated to:
https://blogs.msdn.com/b/ieinternals/archive/2010/05/13/xdomainrequest-restrictions-limitations-and-workarounds.aspx ([https](https://blogs.msdn.com/b/ieinternals/archive/2010/05/13/xdomainrequest-restrictions-limitations-and-workarounds.aspx ) result 301).
* [ ] http://castor-data-binding.github.io/castor with 1 occurrences migrated to:
https://castor-data-binding.github.io/castor ([https](https://castor-data-binding.github.io/castor ) result 301).
* [ ] http://code.google.com/p/beanshell2/ with 1 occurrences migrated to:
https://code.google.com/p/beanshell2/ ([https](https://code.google.com/p/beanshell2/ ) result 301).
* [ ] http://code.google.com/p/browsersec/wiki/Part2 with 1 occurrences migrated to:
https://code.google.com/p/browsersec/wiki/Part2 ([https](https://code.google.com/p/browsersec/wiki/Part2 ) result 301).
* [ ] http://code.google.com/p/gears/wiki/ResumableHttpRequestsProposal with 1 occurrences migrated to:
https://code.google.com/p/gears/wiki/ResumableHttpRequestsProposal ([https](https://code.google.com/p/gears/wiki/ResumableHttpRequestsProposal ) result 301).
* [ ] http://code.google.com/p/xml-matchers/ with 3 occurrences migrated to:
https://code.google.com/p/xml-matchers/ ([https](https://code.google.com/p/xml-matchers/ ) result 301).
* [ ] http://commons.apache.org/proper/commons-dbcp with 2 occurrences migrated to:
https://commons.apache.org/proper/commons-dbcp ([https](https://commons.apache.org/proper/commons-dbcp ) result 301).
* [ ] http://commons.apache.org/proper/commons-fileupload with 2 occurrences migrated to:
https://commons.apache.org/proper/commons-fileupload ([https](https://commons.apache.org/proper/commons-fileupload ) result 301).
* [ ] http://confluence.jetbrains.net/display/IDEADEV/Gradle+integration with 1 occurrences migrated to:
https://confluence.jetbrains.net/display/IDEADEV/Gradle+integration ([https](https://confluence.jetbrains.net/display/IDEADEV/Gradle+integration ) result 301).
* [ ] http://contributor-covenant.org with 1 occurrences migrated to:
https://contributor-covenant.org ([https](https://contributor-covenant.org ) result 301).
* [ ] http://contributor-covenant.org/version/1/3/0/ with 1 occurrences migrated to:
https://contributor-covenant.org/version/1/3/0/ ([https](https://contributor-covenant.org/version/1/3/0/ ) result 301).
* [ ] http://db.apache.org/derby with 2 occurrences migrated to:
https://db.apache.org/derby ([https](https://db.apache.org/derby ) result 301).
* [ ] http://dev.w3.org/html5/eventsource/ with 2 occurrences migrated to:
https://dev.w3.org/html5/eventsource/ ([https](https://dev.w3.org/html5/eventsource/ ) result 301).
* [ ] http://domain.com with 24 occurrences migrated to:
https://domain.com ([https](https://domain.com ) result 301).
* [ ] http://domain.com/ with 1 occurrences migrated to:
https://domain.com/ ([https](https://domain.com/ ) result 301).
* [ ] http://en.wikipedia.org/wiki/Cache_ with 1 occurrences migrated to:
https://en.wikipedia.org/wiki/Cache_ ([https](https://en.wikipedia.org/wiki/Cache_ ) result 301).
* [ ] http://facebook.github.io/react/ with 2 occurrences migrated to:
https://facebook.github.io/react/ ([https](https://facebook.github.io/react/ ) result 301).
* [ ] http://forum.springframework.org/showthread.php?t=41350 with 1 occurrences migrated to:
https://forum.springframework.org/showthread.php?t=41350 ([https](https://forum.springframework.org/showthread.php?t=41350 ) result 301).
* [ ] http://github.com/SpringSource/spring-framework with 1 occurrences migrated to:
https://github.com/SpringSource/spring-framework ([https](https://github.com/SpringSource/spring-framework ) result 301).
* [ ] http://hdiv.org/ with 1 occurrences migrated to:
https://hdiv.org/ ([https](https://hdiv.org/ ) result 301).
* [ ] http://jakarta.apache.org/commons/fileupload with 1 occurrences migrated to:
https://jakarta.apache.org/commons/fileupload ([https](https://jakarta.apache.org/commons/fileupload ) result 301).
* [ ] http://jira.springframework.org/browse/SPR-5708 with 1 occurrences migrated to:
https://jira.springframework.org/browse/SPR-5708 ([https](https://jira.springframework.org/browse/SPR-5708 ) result 301).
* [ ] http://jira.springframework.org/browse/SPR-6124 with 1 occurrences migrated to:
https://jira.springframework.org/browse/SPR-6124 ([https](https://jira.springframework.org/browse/SPR-6124 ) result 301).
* [ ] http://jira.springframework.org/browse/SPR-6128 with 1 occurrences migrated to:
https://jira.springframework.org/browse/SPR-6128 ([https](https://jira.springframework.org/browse/SPR-6128 ) result 301).
* [ ] http://jira.springframework.org/browse/SPR-7064 with 1 occurrences migrated to:
https://jira.springframework.org/browse/SPR-7064 ([https](https://jira.springframework.org/browse/SPR-7064 ) result 301).
* [ ] http://maven.apache.org/plugins/maven-surefire-plugin/test-mojo.html with 1 occurrences migrated to:
https://maven.apache.org/plugins/maven-surefire-plugin/test-mojo.html ([https](https://maven.apache.org/plugins/maven-surefire-plugin/test-mojo.html ) result 301).
* [ ] http://mockito.org/ (301) with 1 occurrences migrated to:
https://mockito.github.io ([https](https://mockito.org/ ) result 301).
* [ ] http://mydomain1.com with 37 occurrences migrated to:
https://mydomain1.com ([https](https://mydomain1.com ) result 301).
* [ ] http://mydomain1.com/ with 2 occurrences migrated to:
https://mydomain1.com/ ([https](https://mydomain1.com/ ) result 301).
* [ ] http://mydomain1.com/path with 2 occurrences migrated to:
https://mydomain1.com/path ([https](https://mydomain1.com/path ) result 301).
* [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-2660 with 1 occurrences migrated to:
https://opensource.atlassian.com/projects/spring/browse/SPR-2660 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-2660 ) result 301).
* [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-2754 with 1 occurrences migrated to:
https://opensource.atlassian.com/projects/spring/browse/SPR-2754 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-2754 ) result 301).
* [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-2789 with 1 occurrences migrated to:
https://opensource.atlassian.com/projects/spring/browse/SPR-2789 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-2789 ) result 301).
* [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-3127 with 1 occurrences migrated to:
https://opensource.atlassian.com/projects/spring/browse/SPR-3127 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-3127 ) result 301).
* [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-3775 with 1 occurrences migrated to:
https://opensource.atlassian.com/projects/spring/browse/SPR-3775 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-3775 ) result 301).
* [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-3880 with 1 occurrences migrated to:
https://opensource.atlassian.com/projects/spring/browse/SPR-3880 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-3880 ) result 301).
* [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-3896 with 7 occurrences migrated to:
https://opensource.atlassian.com/projects/spring/browse/SPR-3896 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-3896 ) result 301).
* [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-3949 with 1 occurrences migrated to:
https://opensource.atlassian.com/projects/spring/browse/SPR-3949 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-3949 ) result 301).
* [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-4008 with 2 occurrences migrated to:
https://opensource.atlassian.com/projects/spring/browse/SPR-4008 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-4008 ) result 301).
* [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-4040 with 2 occurrences migrated to:
https://opensource.atlassian.com/projects/spring/browse/SPR-4040 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-4040 ) result 301).
* [ ] http://publib.boulder.ibm.com/infocenter/wasinfo/v5r1//topic/com.ibm.websphere.base.doc/info/aes/ae/rdat_extiapi.html with 1 occurrences migrated to:
https://publib.boulder.ibm.com/infocenter/wasinfo/v5r1//topic/com.ibm.websphere.base.doc/info/aes/ae/rdat_extiapi.html ([https](https://publib.boulder.ibm.com/infocenter/wasinfo/v5r1//topic/com.ibm.websphere.base.doc/info/aes/ae/rdat_extiapi.html ) result 301).
* [ ] http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/topic/com.ibm.websphere.javadoc.doc/public_html/api/com/ibm/websphere/rsadapter/JDBCConnectionSpec.html with 1 occurrences migrated to:
https://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/topic/com.ibm.websphere.javadoc.doc/public_html/api/com/ibm/websphere/rsadapter/JDBCConnectionSpec.html ([https](https://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/topic/com.ibm.websphere.javadoc.doc/public_html/api/com/ibm/websphere/rsadapter/JDBCConnectionSpec.html ) result 301).
* [ ] http://site2.com with 3 occurrences migrated to:
https://site2.com ([https](https://site2.com ) result 301).
* [ ] http://slack.kotlinlang.org/ with 2 occurrences migrated to:
https://slack.kotlinlang.org/ ([https](https://slack.kotlinlang.org/ ) result 301).
* [ ] http://sourceforge.net/projects/c3p0 with 2 occurrences migrated to:
https://sourceforge.net/projects/c3p0 ([https](https://sourceforge.net/projects/c3p0 ) result 301).
* [ ] http://sourceforge.net/projects/javadiff with 1 occurrences migrated to:
https://sourceforge.net/projects/javadiff ([https](https://sourceforge.net/projects/javadiff ) result 301).
* [ ] http://springframework.org with 2 occurrences migrated to:
https://springframework.org ([https](https://springframework.org ) result 301).
* [ ] http://www.atomenabled.org/developers/syndication/ with 1 occurrences migrated to:
https://www.atomenabled.org/developers/syndication/ ([https](https://www.atomenabled.org/developers/syndication/ ) result 301).
* [ ] http://www.google.com/ig/calculator?q=1USD=?EUR with 1 occurrences migrated to:
https://www.google.com/ig/calculator?q=1USD=?EUR ([https](https://www.google.com/ig/calculator?q=1USD=?EUR ) result 301).
* [ ] http://www.javaworld.com/javaworld/jw-01-2009/jw-01-spring-transactions.html with 1 occurrences migrated to:
https://www.javaworld.com/javaworld/jw-01-2009/jw-01-spring-transactions.html ([https](https://www.javaworld.com/javaworld/jw-01-2009/jw-01-spring-transactions.html ) result 301).
* [ ] http://www.junit.org/ with 1 occurrences migrated to:
https://www.junit.org/ ([https](https://www.junit.org/ ) result 301).
* [ ] http://www.mnot.net/cache_docs with 1 occurrences migrated to:
https://www.mnot.net/cache_docs ([https](https://www.mnot.net/cache_docs ) result 301).
* [ ] http://www.sf.net/home.view?siteLanguage=nl with 1 occurrences migrated to:
https://www.sf.net/home.view?siteLanguage=nl ([https](https://www.sf.net/home.view?siteLanguage=nl ) result 301).
* [ ] http://www.springframework.org with 7 occurrences migrated to:
https://www.springframework.org ([https](https://www.springframework.org ) result 301).
* [ ] http://www.springframework.org/ with 3 occurrences migrated to:
https://www.springframework.org/ ([https](https://www.springframework.org/ ) result 301).
* [ ] http://xyz.com/path with 2 occurrences migrated to:
https://xyz.com/path ([https](https://xyz.com/path ) result 301).
* [ ] http://commons.apache.org/codec/ with 1 occurrences migrated to:
https://commons.apache.org/codec/ ([https](https://commons.apache.org/codec/ ) result 302).
* [ ] http://commons.apache.org/logging with 2 occurrences migrated to:
https://commons.apache.org/logging ([https](https://commons.apache.org/logging ) result 302).
* [ ] http://download.oracle.com/javaee/6/api/javax/inject/Scope.html with 1 occurrences migrated to:
https://download.oracle.com/javaee/6/api/javax/inject/Scope.html ([https](https://download.oracle.com/javaee/6/api/javax/inject/Scope.html ) result 302).
* [ ] http://download.oracle.com/javase/1.5.0/docs/api/java/lang/System.html with 4 occurrences migrated to:
https://download.oracle.com/javase/1.5.0/docs/api/java/lang/System.html ([https](https://download.oracle.com/javase/1.5.0/docs/api/java/lang/System.html ) result 302).
* [ ] http://download.oracle.com/javase/6/docs/technotes/guides/jar/jar.html with 1 occurrences migrated to:
https://download.oracle.com/javase/6/docs/technotes/guides/jar/jar.html ([https](https://download.oracle.com/javase/6/docs/technotes/guides/jar/jar.html ) result 302).
* [ ] http://download.oracle.com/javase/8/docs/api/java/beans/ConstructorProperties.html with 1 occurrences migrated to:
https://download.oracle.com/javase/8/docs/api/java/beans/ConstructorProperties.html ([https](https://download.oracle.com/javase/8/docs/api/java/beans/ConstructorProperties.html ) result 302).
* [ ] http://download.oracle.com/javase/jndi/tutorial/beyond/misc/policy.html with 1 occurrences migrated to:
https://download.oracle.com/javase/jndi/tutorial/beyond/misc/policy.html ([https](https://download.oracle.com/javase/jndi/tutorial/beyond/misc/policy.html ) result 302).
* [ ] http://gafter.blogspot.nl/2006/12/super-type-tokens.html with 1 occurrences migrated to:
https://gafter.blogspot.nl/2006/12/super-type-tokens.html ([https](https://gafter.blogspot.nl/2006/12/super-type-tokens.html ) result 302).
* [ ] http://git-scm.com/book/en/Distributed-Git-Contributing-to-a-Project with 1 occurrences migrated to:
https://git-scm.com/book/en/Distributed-Git-Contributing-to-a-Project ([https](https://git-scm.com/book/en/Distributed-Git-Contributing-to-a-Project ) result 302).
* [ ] http://git-scm.com/book/en/Git-Tools-Rewriting-History with 1 occurrences migrated to:
https://git-scm.com/book/en/Git-Tools-Rewriting-History ([https](https://git-scm.com/book/en/Git-Tools-Rewriting-History ) result 302).
* [ ] http://java.sun.com with 3 occurrences migrated to:
https://java.sun.com ([https](https://java.sun.com ) result 302).
* [ ] http://java.sun.com/docs/books/jls/third_edition/html/conversions.html with 1 occurrences migrated to:
https://java.sun.com/docs/books/jls/third_edition/html/conversions.html ([https](https://java.sun.com/docs/books/jls/third_edition/html/conversions.html ) result 302).
* [ ] http://java.sun.com/docs/books/jls/third_edition/html/expressions.html with 1 occurrences migrated to:
https://java.sun.com/docs/books/jls/third_edition/html/expressions.html ([https](https://java.sun.com/docs/books/jls/third_edition/html/expressions.html ) result 302).
* [ ] http://java.sun.com/j2se/ with 2 occurrences migrated to:
https://java.sun.com/j2se/ ([https](https://java.sun.com/j2se/ ) result 302).
* [ ] http://java.sun.com/j2se/1.4.1/docs/tooldocs/solaris/javadoc.html with 1 occurrences migrated to:
https://java.sun.com/j2se/1.4.1/docs/tooldocs/solaris/javadoc.html ([https](https://java.sun.com/j2se/1.4.1/docs/tooldocs/solaris/javadoc.html ) result 302).
* [ ] http://java.sun.com/j2se/1.4.2/docs/api/java/text/SimpleDateFormat.html with 1 occurrences migrated to:
https://java.sun.com/j2se/1.4.2/docs/api/java/text/SimpleDateFormat.html ([https](https://java.sun.com/j2se/1.4.2/docs/api/java/text/SimpleDateFormat.html ) result 302).
* [ ] http://java.sun.com/j2se/javadoc with 1 occurrences migrated to:
https://java.sun.com/j2se/javadoc ([https](https://java.sun.com/j2se/javadoc ) result 302).
* [ ] http://java.sun.com/j2se/javadoc/ with 1 occurrences migrated to:
https://java.sun.com/j2se/javadoc/ ([https](https://java.sun.com/j2se/javadoc/ ) result 302).
* [ ] http://java.sun.com/j2se/javadoc/faq.html with 1 occurrences migrated to:
https://java.sun.com/j2se/javadoc/faq.html ([https](https://java.sun.com/j2se/javadoc/faq.html ) result 302).
* [ ] http://java.sun.com/webservices/jaxb/ with 1 occurrences migrated to:
https://java.sun.com/webservices/jaxb/ ([https](https://java.sun.com/webservices/jaxb/ ) result 302).
* [ ] http://java.sun.com/xml/ns/j2ee/connector_1_5.xsd with 1 occurrences migrated to:
https://java.sun.com/xml/ns/j2ee/connector_1_5.xsd ([https](https://java.sun.com/xml/ns/j2ee/connector_1_5.xsd ) result 302).
* [ ] http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd with 2 occurrences migrated to:
https://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd ([https](https://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd ) result 302).
* [ ] http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd with 2 occurrences migrated to:
https://java.sun.com/xml/ns/javaee/web-app_3_0.xsd ([https](https://java.sun.com/xml/ns/javaee/web-app_3_0.xsd ) result 302).
* [ ] http://sourceforge.net/projects/cglib/files/cglib3/3.0/cglib-3.0.jar/download with 1 occurrences migrated to:
https://sourceforge.net/projects/cglib/files/cglib3/3.0/cglib-3.0.jar/download ([https](https://sourceforge.net/projects/cglib/files/cglib3/3.0/cglib-3.0.jar/download ) result 302).
* [ ] http://other.info/foo/bar (301) with 1 occurrences migrated to:
https://weibo.com/otherinfo/foo/bar ([https](https://other.info/foo/bar ) result 302).
* [ ] http://www.iana.org/assignments/http-status-codes with 1 occurrences migrated to:
https://www.iana.org/assignments/http-status-codes ([https](https://www.iana.org/assignments/http-status-codes ) result 302).
* [ ] http://www.iana.org/assignments/media-types/ with 1 occurrences migrated to:
https://www.iana.org/assignments/media-types/ ([https](https://www.iana.org/assignments/media-types/ ) result 302).
* [ ] http://www.sys-con.com/java with 1 occurrences migrated to:
https://www.sys-con.com/java ([https](https://www.sys-con.com/java ) result 302).
These URLs were intentionally ignored.
* http://Additional-namespace-name-URI with 1 occurrences
* http://Default-namespace-name-URI with 1 occurrences
* http://HOST:8080/remoting/AccountService with 1 occurrences
* http://Namespace-name-URI with 1 occurrences
* http://Unbound-namespace-name-URI with 1 occurrences
* http://anotherHost/mvc-showcase with 1 occurrences
* http://apache.org/xml/features/disallow-doctype-decl with 14 occurrences
* http://barfoo:8888 with 1 occurrences
* http://example/ with 1 occurrences
* http://fake-service with 7 occurrences
* http://foo with 3 occurrences
* http://foobar:8088 with 1 occurrences
* http://host:port/myApp/myEndpoint/ with 1 occurrences
* http://java.sun.com/jsp/jstl/core with 1 occurrences
* http://java.sun.com/xml/jaxp/properties/schemaLanguage with 1 occurrences
* http://java.sun.com/xml/ns/j2ee with 6 occurrences
* http://java.sun.com/xml/ns/javaee with 4 occurrences
* http://java.sun.com/xml/ns/persistence with 1 occurrences
* http://java.sun.com/xml/stream/properties/report-cdata-event with 1 occurrences
* http://jaxws.remoting.springframework.org/ with 4 occurrences
* http://localhost with 86 occurrences
* http://localhost/ with 16 occurrences
* http://localhost/42 with 1 occurrences
* http://localhost/?cookie=foo with 1 occurrences
* http://localhost/FILE.TXT with 1 occurrences
* http://localhost/abc with 1 occurrences
* http://localhost/abc/def with 1 occurrences
* http://localhost/app%20/path/ with 1 occurrences
* http://localhost/app/path%20with%20spaces/ with 1 occurrences
* http://localhost/bar with 2 occurrences
* http://localhost/context/a with 3 occurrences
* http://localhost/contextPath/main/path with 2 occurrences
* http://localhost/file.foo with 1 occurrences
* http://localhost/file.txt with 1 occurrences
* http://localhost/foo with 2 occurrences
* http://localhost/foo%20bar with 1 occurrences
* http://localhost/foo/bar with 1 occurrences
* http://localhost/foo/bar/baz with 1 occurrences
* http://localhost/forward with 1 occurrences
* http://localhost/hotels/42/bookings/21 with 4 occurrences
* http://localhost/input with 1 occurrences
* http://localhost/jquery-1.11.0.min.js with 5 occurrences
* http://localhost/messages/form with 1 occurrences
* http://localhost/mvc-showcase with 2 occurrences
* http://localhost/mvc-showcase/app with 1 occurrences
* http://localhost/mvc-showcase/data/foo%20bar with 1 occurrences
* http://localhost/mvc-showcase/data/param with 1 occurrences
* http://localhost/mvc-showcase/data/param?foo=123 with 2 occurrences
* http://localhost/myapp/main with 1 occurrences
* http://localhost/myapp/people/1/addresses/DE with 1 occurrences
* http://localhost/path with 3 occurrences
* http://localhost/path;a=b/with/semicolon with 1 occurrences
* http://localhost/persons with 1 occurrences
* http://localhost/prefix with 1 occurrences
* http://localhost/prefix/app with 1 occurrences
* http://localhost/prefix/bar with 1 occurrences
* http://localhost/prefix/mvc-showcase with 3 occurrences
* http://localhost/query= with 1 occurrences
* http://localhost/query=foo@bar with 1 occurrences
* http://localhost/resources/child/response.txt with 1 occurrences
* http://localhost/resources/foo with 2 occurrences
* http://localhost/resources/foo.txt with 1 occurrences
* http://localhost/resources/response.txt with 2 occurrences
* http://localhost/rest/books/6/pages/1.json with 1 occurrences
* http://localhost/something/1/foo with 1 occurrences
* http://localhost/something/optional-param with 1 occurrences
* http://localhost/test with 4 occurrences
* http://localhost/test.html with 1 occurrences
* http://localhost/test/this with 2 occurrences
* http://localhost:7070/example/adminhandle.vm with 1 occurrences
* http://localhost:7070/example/bingo.html with 1 occurrences
* http://localhost:80/jquery-1.11.0.min.js with 1 occurrences
* http://localhost:8080 with 34 occurrences
* http://localhost:8080/ with 4 occurrences
* http://localhost:8080/OrderService with 3 occurrences
* http://localhost:8080/aA/bB/cC with 1 occurrences
* http://localhost:8080/context with 1 occurrences
* http://localhost:8080/context/myapiresource with 1 occurrences
* http://localhost:8080/gamecast/admin/index.html with 1 occurrences
* http://localhost:8080/gamecast/display.html with 1 occurrences
* http://localhost:8080/gamecast/displayShoppingCart.html with 1 occurrences
* http://localhost:8080/jquery-1.11.0.min.js with 1 occurrences
* http://localhost:8080/mvc-showcase with 1 occurrences
* http://localhost:8080/myapiresource with 1 occurrences
* http://localhost:8080/myapp/js/sockjs-client.js with 1 occurrences
* http://localhost:8080/path with 2 occurrences
* http://localhost:8080/people with 2 occurrences
* http://localhost:8080/portfolio with 1 occurrences
* http://localhost:8080/spring/ with 2 occurrences
* http://localhost:8080/test/ with 2 occurrences
* http://localhost:8080/test/print?value=%EA%B0%80+%EB%82%98 with 1 occurrences
* http://localhost:8081 with 1 occurrences
* http://localhost:8081/ with 1 occurrences
* http://localhost:8181 with 1 occurrences
* http://localhost:8888/AccountServiceEndpoint?WSDL with 1 occurrences
* http://localhost:9000 with 7 occurrences
* http://localhost:9090 with 18 occurrences
* http://localhost:9090/jquery-1.11.0.min.js with 2 occurrences
* http://localhost:9990/mail/messages/form with 1 occurrences
* http://localhost:9999/ with 1 occurrences
* http://localhost:9999/OrderService?wsdl with 4 occurrences
* http://localhosta/testbean with 3 occurrences
* http://myserver with 1 occurrences
* http://myurl with 12 occurrences
* http://remotehost:8080/remoting/AccountService with 2 occurrences
* http://samples.springframework.org/flight with 39 occurrences
* http://somethingDifferent with 1 occurrences
* http://springframework.org/spring-ws with 17 occurrences
* http://test.com with 1 occurrences
* http://test.com/ with 1 occurrences
* http://testng.org/ with 1 occurrences
* http://tiles.apache.org/tags-tiles with 1 occurrences
* http://www with 1 occurrences
* http://www.foo.com/schema/component with 6 occurrences
* http://www.mycompany.com/schema/myns with 4 occurrences
* http://www.springframework.org/schema/aop with 30 occurrences
* http://www.springframework.org/schema/beans with 169 occurrences
* http://www.springframework.org/schema/beans/test with 2 occurrences
* http://www.springframework.org/schema/c with 1 occurrences
* http://www.springframework.org/schema/cache with 5 occurrences
* http://www.springframework.org/schema/context with 28 occurrences
* http://www.springframework.org/schema/jdbc with 8 occurrences
* http://www.springframework.org/schema/jee with 9 occurrences
* http://www.springframework.org/schema/jms with 5 occurrences
* http://www.springframework.org/schema/lang with 10 occurrences
* http://www.springframework.org/schema/mvc with 8 occurrences
* http://www.springframework.org/schema/oxm with 4 occurrences
* http://www.springframework.org/schema/p with 4 occurrences
* http://www.springframework.org/schema/task with 2 occurrences
* http://www.springframework.org/schema/tool with 27 occurrences
* http://www.springframework.org/schema/tx with 18 occurrences
* http://www.springframework.org/schema/util with 8 occurrences
* http://www.springframework.org/schema/websocket with 26 occurrences
* http://www.springframework.org/spring-ws with 1 occurrences
* http://www.springframework.org/tags with 4 occurrences
* http://www.springframework.org/tags/form with 2 occurrences
* http://www.w3.org/1999/XSL/Transform with 8 occurrences
* http://www.w3.org/2001/XMLSchema with 24 occurrences
* http://www.w3.org/2001/XMLSchema-instance with 83 occurrences
* http://www.w3.org/2005/Atom with 4 occurrences
* http://www.w3.org/TR/html4/charset.html with 5 occurrences
* http://www.w3.org/TR/html4/sgml/entities.html with 14 occurrences
* http://www.w3.org/XML/1998/namespace with 5 occurrences
* http://xml.org/sax/features/ with 4 occurrences
* http://xml.org/sax/features/external-general-entities with 14 occurrences
* http://xml.org/sax/features/is-standalone with 1 occurrences
* http://xml.org/sax/features/namespace-prefixes with 13 occurrences
* http://xml.org/sax/features/namespaces with 12 occurrences
* http://xml.org/sax/features/namespaces-prefixes with 1 occurrences
* http://xml.org/sax/properties/lexical-handler with 12 occurrences
Closes gh-22680
2019-03-27 22:05:38 +01:00
Phillip Webb
bf9dea4254
Defensively copy array returned from TypeDescriptor
...
Update the internal proxy used in `TypeDescriptor` so that it returns a
cloned array for calls to `getDeclaredAnnotations` or `getAnnotations`.
Closes gh-22695
2019-03-27 13:50:30 -07:00
Rossen Stoyanchev
0589989eb4
Merge branch '5.1.x'
2019-03-27 16:19:31 -04:00
Rossen Stoyanchev
1aaadb39c0
Support STOMP in addition to CONNECT frame
...
One is literally an alias for the other with "the advantage that a
protocol sniffer/discriminator will be able to differentiate the STOMP
connection from an HTTP connection".
Closes gh-22652
2019-03-27 16:19:11 -04:00
Juergen Hoeller
ac0ffda311
Merge branch '5.1.x'
2019-03-27 19:39:28 +01:00
Juergen Hoeller
50acbae4cf
Upgrade to RxJava 2.2.8 and Mockito 2.25.1
2019-03-27 19:14:51 +01:00
Sam Brannen
20f1f46ae1
URL Cleanup - Fix broken tests
...
See gh-22669
2019-03-27 19:06:01 +01:00
Sam Brannen
c51a257210
URL Cleanup - Polishing
...
See gh-22669
2019-03-27 19:05:54 +01:00
Sam Brannen
c74d102df3
URL Cleanup - remove obsolete ATOM schema location
...
See gh-22669
2019-03-27 19:05:34 +01:00
Spring Operator
8f77b7366e
URL Cleanup
...
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).
These URLs were unable to be fixed. Please review them to see if they can be manually resolved.
* [ ] http://castor.org/mapping.dtd (301) with 1 occurrences could not be migrated:
([https](https://castor.org/mapping.dtd ) result AnnotatedConnectException).
* [ ] http://mydomain2.com (302) with 2 occurrences could not be migrated:
([https](https://mydomain2.com ) result ConnectTimeoutException).
* [ ] http://www.foo.com/schema/component/component.xsd (404) with 1 occurrences could not be migrated:
([https](https://www.foo.com/schema/component/component.xsd ) result SSLHandshakeException).
These URLs were fixed, but the https status was not OK. However, the https status was the same as the http request or http redirected to an https URL, so they were migrated. Your review is recommended.
* [ ] http://www.kbcafe.com/rss/atom.xsd.xml (ConnectTimeoutException) with 1 occurrences migrated to:
https://www.kbcafe.com/rss/atom.xsd.xml ([https](https://www.kbcafe.com/rss/atom.xsd.xml ) result ConnectTimeoutException).
* [ ] http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd (ReadTimeoutException) with 5 occurrences migrated to:
https://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd ([https](https://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd ) result ReadTimeoutException).
* [ ] http://domain1.com (UnknownHostException) with 2 occurrences migrated to:
https://domain1.com ([https](https://domain1.com ) result UnknownHostException).
* [ ] http://domain2.com (UnknownHostException) with 1 occurrences migrated to:
https://domain2.com ([https](https://domain2.com ) result UnknownHostException).
* [ ] http://mydomain1.com,http://mydomain2.com (UnknownHostException) with 1 occurrences migrated to:
https://mydomain1.com,http://mydomain2.com ([https](https://mydomain1.com,https://mydomain2.com ) result UnknownHostException).
* [ ] http://mydomain3.com,http://mydomain4.com (UnknownHostException) with 1 occurrences migrated to:
https://mydomain3.com,http://mydomain4.com ([https](https://mydomain3.com,https://mydomain4.com ) result UnknownHostException).
* [ ] http://www.springframework.org/schema/beans/factory/xml/support/CustomNamespaceHandlerTests.xsd (404) with 1 occurrences migrated to:
https://www.springframework.org/schema/beans/factory/xml/support/CustomNamespaceHandlerTests.xsd ([https](https://www.springframework.org/schema/beans/factory/xml/support/CustomNamespaceHandlerTests.xsd ) result 404).
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.
* [ ] http://example.com with 1 occurrences migrated to:
https://example.com ([https](https://example.com ) result 200).
* [ ] http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd (301) with 2 occurrences migrated to:
https://hibernate.org/dtd/hibernate-mapping-3.0.dtd ([https](https://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd ) result 200).
* [ ] http://testng.org/testng-1.0.dtd with 3 occurrences migrated to:
https://testng.org/testng-1.0.dtd ([https](https://testng.org/testng-1.0.dtd ) result 200).
* [ ] http://tiles.apache.org/dtds/tiles-config_2_0.dtd with 2 occurrences migrated to:
https://tiles.apache.org/dtds/tiles-config_2_0.dtd ([https](https://tiles.apache.org/dtds/tiles-config_2_0.dtd ) result 200).
* [ ] http://tiles.apache.org/dtds/tiles-config_2_1.dtd with 2 occurrences migrated to:
https://tiles.apache.org/dtds/tiles-config_2_1.dtd ([https](https://tiles.apache.org/dtds/tiles-config_2_1.dtd ) result 200).
* [ ] http://tiles.apache.org/dtds/tiles-config_3_0.dtd with 4 occurrences migrated to:
https://tiles.apache.org/dtds/tiles-config_3_0.dtd ([https](https://tiles.apache.org/dtds/tiles-config_3_0.dtd ) result 200).
* [ ] http://www.quartz-scheduler.org/xml/job_scheduling_data_1_8.xsd with 1 occurrences migrated to:
https://www.quartz-scheduler.org/xml/job_scheduling_data_1_8.xsd ([https](https://www.quartz-scheduler.org/xml/job_scheduling_data_1_8.xsd ) result 200).
* [ ] http://www.springframework.org/dtd/spring-beans-2.0.dtd with 176 occurrences migrated to:
https://www.springframework.org/dtd/spring-beans-2.0.dtd ([https](https://www.springframework.org/dtd/spring-beans-2.0.dtd ) result 200).
* [ ] http://www.springframework.org/schema/aop/spring-aop-2.0.xsd with 68 occurrences migrated to:
https://www.springframework.org/schema/aop/spring-aop-2.0.xsd ([https](https://www.springframework.org/schema/aop/spring-aop-2.0.xsd ) result 200).
* [ ] http://www.springframework.org/schema/aop/spring-aop-2.5.xsd with 11 occurrences migrated to:
https://www.springframework.org/schema/aop/spring-aop-2.5.xsd ([https](https://www.springframework.org/schema/aop/spring-aop-2.5.xsd ) result 200).
* [ ] http://www.springframework.org/schema/aop/spring-aop-3.0.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/aop/spring-aop-3.0.xsd ([https](https://www.springframework.org/schema/aop/spring-aop-3.0.xsd ) result 200).
* [ ] http://www.springframework.org/schema/aop/spring-aop.xsd with 7 occurrences migrated to:
https://www.springframework.org/schema/aop/spring-aop.xsd ([https](https://www.springframework.org/schema/aop/spring-aop.xsd ) result 200).
* [ ] http://www.springframework.org/schema/beans/spring-beans-2.0.xsd with 112 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans-2.0.xsd ([https](https://www.springframework.org/schema/beans/spring-beans-2.0.xsd ) result 200).
* [ ] http://www.springframework.org/schema/beans/spring-beans-2.5.xsd with 46 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans-2.5.xsd ([https](https://www.springframework.org/schema/beans/spring-beans-2.5.xsd ) result 200).
* [ ] http://www.springframework.org/schema/beans/spring-beans-3.0.xsd with 10 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans-3.0.xsd ([https](https://www.springframework.org/schema/beans/spring-beans-3.0.xsd ) result 200).
* [ ] http://www.springframework.org/schema/beans/spring-beans-3.1.xsd with 33 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans-3.1.xsd ([https](https://www.springframework.org/schema/beans/spring-beans-3.1.xsd ) result 200).
* [ ] http://www.springframework.org/schema/beans/spring-beans-3.2.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans-3.2.xsd ([https](https://www.springframework.org/schema/beans/spring-beans-3.2.xsd ) result 200).
* [ ] http://www.springframework.org/schema/beans/spring-beans-4.0.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans-4.0.xsd ([https](https://www.springframework.org/schema/beans/spring-beans-4.0.xsd ) result 200).
* [ ] http://www.springframework.org/schema/beans/spring-beans-4.1.xsd with 3 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans-4.1.xsd ([https](https://www.springframework.org/schema/beans/spring-beans-4.1.xsd ) result 200).
* [ ] http://www.springframework.org/schema/beans/spring-beans-4.2.xsd with 4 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans-4.2.xsd ([https](https://www.springframework.org/schema/beans/spring-beans-4.2.xsd ) result 200).
* [ ] http://www.springframework.org/schema/beans/spring-beans-4.3.xsd with 4 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans-4.3.xsd ([https](https://www.springframework.org/schema/beans/spring-beans-4.3.xsd ) result 200).
* [ ] http://www.springframework.org/schema/beans/spring-beans.xsd with 142 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans.xsd ([https](https://www.springframework.org/schema/beans/spring-beans.xsd ) result 200).
* [ ] http://www.springframework.org/schema/cache/spring-cache.xsd with 10 occurrences migrated to:
https://www.springframework.org/schema/cache/spring-cache.xsd ([https](https://www.springframework.org/schema/cache/spring-cache.xsd ) result 200).
* [ ] http://www.springframework.org/schema/context/spring-context-2.5.xsd with 41 occurrences migrated to:
https://www.springframework.org/schema/context/spring-context-2.5.xsd ([https](https://www.springframework.org/schema/context/spring-context-2.5.xsd ) result 200).
* [ ] http://www.springframework.org/schema/context/spring-context-3.0.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/context/spring-context-3.0.xsd ([https](https://www.springframework.org/schema/context/spring-context-3.0.xsd ) result 200).
* [ ] http://www.springframework.org/schema/context/spring-context-3.1.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/context/spring-context-3.1.xsd ([https](https://www.springframework.org/schema/context/spring-context-3.1.xsd ) result 200).
* [ ] http://www.springframework.org/schema/context/spring-context-3.2.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/context/spring-context-3.2.xsd ([https](https://www.springframework.org/schema/context/spring-context-3.2.xsd ) result 200).
* [ ] http://www.springframework.org/schema/context/spring-context-4.0.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/context/spring-context-4.0.xsd ([https](https://www.springframework.org/schema/context/spring-context-4.0.xsd ) result 200).
* [ ] http://www.springframework.org/schema/context/spring-context-4.2.xsd with 4 occurrences migrated to:
https://www.springframework.org/schema/context/spring-context-4.2.xsd ([https](https://www.springframework.org/schema/context/spring-context-4.2.xsd ) result 200).
* [ ] http://www.springframework.org/schema/context/spring-context-4.3.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/context/spring-context-4.3.xsd ([https](https://www.springframework.org/schema/context/spring-context-4.3.xsd ) result 200).
* [ ] http://www.springframework.org/schema/context/spring-context.xsd with 10 occurrences migrated to:
https://www.springframework.org/schema/context/spring-context.xsd ([https](https://www.springframework.org/schema/context/spring-context.xsd ) result 200).
* [ ] http://www.springframework.org/schema/jdbc/spring-jdbc-3.0.xsd with 9 occurrences migrated to:
https://www.springframework.org/schema/jdbc/spring-jdbc-3.0.xsd ([https](https://www.springframework.org/schema/jdbc/spring-jdbc-3.0.xsd ) result 200).
* [ ] http://www.springframework.org/schema/jdbc/spring-jdbc-3.1.xsd with 5 occurrences migrated to:
https://www.springframework.org/schema/jdbc/spring-jdbc-3.1.xsd ([https](https://www.springframework.org/schema/jdbc/spring-jdbc-3.1.xsd ) result 200).
* [ ] http://www.springframework.org/schema/jdbc/spring-jdbc-4.2.xsd with 9 occurrences migrated to:
https://www.springframework.org/schema/jdbc/spring-jdbc-4.2.xsd ([https](https://www.springframework.org/schema/jdbc/spring-jdbc-4.2.xsd ) result 200).
* [ ] http://www.springframework.org/schema/jdbc/spring-jdbc-4.3.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/jdbc/spring-jdbc-4.3.xsd ([https](https://www.springframework.org/schema/jdbc/spring-jdbc-4.3.xsd ) result 200).
* [ ] http://www.springframework.org/schema/jdbc/spring-jdbc.xsd with 8 occurrences migrated to:
https://www.springframework.org/schema/jdbc/spring-jdbc.xsd ([https](https://www.springframework.org/schema/jdbc/spring-jdbc.xsd ) result 200).
* [ ] http://www.springframework.org/schema/jee/spring-jee-3.1.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/jee/spring-jee-3.1.xsd ([https](https://www.springframework.org/schema/jee/spring-jee-3.1.xsd ) result 200).
* [ ] http://www.springframework.org/schema/jms/spring-jms-4.1.xsd with 9 occurrences migrated to:
https://www.springframework.org/schema/jms/spring-jms-4.1.xsd ([https](https://www.springframework.org/schema/jms/spring-jms-4.1.xsd ) result 200).
* [ ] http://www.springframework.org/schema/jms/spring-jms-4.2.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/jms/spring-jms-4.2.xsd ([https](https://www.springframework.org/schema/jms/spring-jms-4.2.xsd ) result 200).
* [ ] http://www.springframework.org/schema/lang/spring-lang-2.0.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/lang/spring-lang-2.0.xsd ([https](https://www.springframework.org/schema/lang/spring-lang-2.0.xsd ) result 200).
* [ ] http://www.springframework.org/schema/lang/spring-lang-2.5.xsd with 3 occurrences migrated to:
https://www.springframework.org/schema/lang/spring-lang-2.5.xsd ([https](https://www.springframework.org/schema/lang/spring-lang-2.5.xsd ) result 200).
* [ ] http://www.springframework.org/schema/lang/spring-lang-3.0.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/lang/spring-lang-3.0.xsd ([https](https://www.springframework.org/schema/lang/spring-lang-3.0.xsd ) result 200).
* [ ] http://www.springframework.org/schema/lang/spring-lang-3.1.xsd with 5 occurrences migrated to:
https://www.springframework.org/schema/lang/spring-lang-3.1.xsd ([https](https://www.springframework.org/schema/lang/spring-lang-3.1.xsd ) result 200).
* [ ] http://www.springframework.org/schema/lang/spring-lang-4.2.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/lang/spring-lang-4.2.xsd ([https](https://www.springframework.org/schema/lang/spring-lang-4.2.xsd ) result 200).
* [ ] http://www.springframework.org/schema/lang/spring-lang.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/lang/spring-lang.xsd ([https](https://www.springframework.org/schema/lang/spring-lang.xsd ) result 200).
* [ ] http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd ([https](https://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd ) result 200).
* [ ] http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd ([https](https://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd ) result 200).
* [ ] http://www.springframework.org/schema/mvc/spring-mvc.xsd with 26 occurrences migrated to:
https://www.springframework.org/schema/mvc/spring-mvc.xsd ([https](https://www.springframework.org/schema/mvc/spring-mvc.xsd ) result 200).
* [ ] http://www.springframework.org/schema/oxm/spring-oxm.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/oxm/spring-oxm.xsd ([https](https://www.springframework.org/schema/oxm/spring-oxm.xsd ) result 200).
* [ ] http://www.springframework.org/schema/task/spring-task-4.1.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/task/spring-task-4.1.xsd ([https](https://www.springframework.org/schema/task/spring-task-4.1.xsd ) result 200).
* [ ] http://www.springframework.org/schema/task/spring-task.xsd with 6 occurrences migrated to:
https://www.springframework.org/schema/task/spring-task.xsd ([https](https://www.springframework.org/schema/task/spring-task.xsd ) result 200).
* [ ] http://www.springframework.org/schema/tx/spring-tx-2.5.xsd with 3 occurrences migrated to:
https://www.springframework.org/schema/tx/spring-tx-2.5.xsd ([https](https://www.springframework.org/schema/tx/spring-tx-2.5.xsd ) result 200).
* [ ] http://www.springframework.org/schema/tx/spring-tx-4.0.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/tx/spring-tx-4.0.xsd ([https](https://www.springframework.org/schema/tx/spring-tx-4.0.xsd ) result 200).
* [ ] http://www.springframework.org/schema/tx/spring-tx.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/tx/spring-tx.xsd ([https](https://www.springframework.org/schema/tx/spring-tx.xsd ) result 200).
* [ ] http://www.springframework.org/schema/util/spring-util-2.0.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/util/spring-util-2.0.xsd ([https](https://www.springframework.org/schema/util/spring-util-2.0.xsd ) result 200).
* [ ] http://www.springframework.org/schema/util/spring-util-2.5.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/util/spring-util-2.5.xsd ([https](https://www.springframework.org/schema/util/spring-util-2.5.xsd ) result 200).
* [ ] http://www.springframework.org/schema/util/spring-util-3.0.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/util/spring-util-3.0.xsd ([https](https://www.springframework.org/schema/util/spring-util-3.0.xsd ) result 200).
* [ ] http://www.springframework.org/schema/util/spring-util-3.1.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/util/spring-util-3.1.xsd ([https](https://www.springframework.org/schema/util/spring-util-3.1.xsd ) result 200).
* [ ] http://www.springframework.org/schema/util/spring-util-4.1.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/util/spring-util-4.1.xsd ([https](https://www.springframework.org/schema/util/spring-util-4.1.xsd ) result 200).
* [ ] http://www.springframework.org/schema/util/spring-util-4.2.xsd with 4 occurrences migrated to:
https://www.springframework.org/schema/util/spring-util-4.2.xsd ([https](https://www.springframework.org/schema/util/spring-util-4.2.xsd ) result 200).
* [ ] http://www.springframework.org/schema/util/spring-util.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/util/spring-util.xsd ([https](https://www.springframework.org/schema/util/spring-util.xsd ) result 200).
* [ ] http://www.springframework.org/schema/websocket/spring-websocket.xsd with 11 occurrences migrated to:
https://www.springframework.org/schema/websocket/spring-websocket.xsd ([https](https://www.springframework.org/schema/websocket/spring-websocket.xsd ) result 200).
* [ ] http://www.w3.org/1999/02/22-rdf-syntax-ns with 2 occurrences migrated to:
https://www.w3.org/1999/02/22-rdf-syntax-ns ([https](https://www.w3.org/1999/02/22-rdf-syntax-ns ) result 200).
* [ ] http://mydomain1.com with 2 occurrences migrated to:
https://mydomain1.com ([https](https://mydomain1.com ) result 301).
* [ ] http://www.springframework.org with 1 occurrences migrated to:
https://www.springframework.org ([https](https://www.springframework.org ) result 301).
* [ ] http://help.sap.com/saphelp_hanaplatform/helpdata/en/20/a78d3275191014b41bae7c4a46d835/content.htm with 1 occurrences migrated to:
https://help.sap.com/saphelp_hanaplatform/helpdata/en/20/a78d3275191014b41bae7c4a46d835/content.htm ([https](https://help.sap.com/saphelp_hanaplatform/helpdata/en/20/a78d3275191014b41bae7c4a46d835/content.htm ) result 302).
* [ ] http://java.sun.com/xml/ns/j2ee/connector_1_5.xsd with 1 occurrences migrated to:
https://java.sun.com/xml/ns/j2ee/connector_1_5.xsd ([https](https://java.sun.com/xml/ns/j2ee/connector_1_5.xsd ) result 302).
* [ ] http://java.sun.com/xml/ns/javaee/web-fragment_3_0.xsd with 1 occurrences migrated to:
https://java.sun.com/xml/ns/javaee/web-fragment_3_0.xsd ([https](https://java.sun.com/xml/ns/javaee/web-fragment_3_0.xsd ) result 302).
* [ ] http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd with 12 occurrences migrated to:
https://java.sun.com/xml/ns/persistence/persistence_1_0.xsd ([https](https://java.sun.com/xml/ns/persistence/persistence_1_0.xsd ) result 302).
* [ ] http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd with 1 occurrences migrated to:
https://java.sun.com/xml/ns/persistence/persistence_2_0.xsd ([https](https://java.sun.com/xml/ns/persistence/persistence_2_0.xsd ) result 302).
* [ ] http://purl.org/dc/dcmitype/StillImage with 2 occurrences migrated to:
https://purl.org/dc/dcmitype/StillImage ([https](https://purl.org/dc/dcmitype/StillImage ) result 302).
These URLs were intentionally ignored.
* http://creativecommons.org/ns with 2 occurrences
* http://java.sun.com/dtd/properties.dtd with 4 occurrences
* http://java.sun.com/xml/ns/j2ee with 2 occurrences
* http://java.sun.com/xml/ns/javaee with 2 occurrences
* http://java.sun.com/xml/ns/persistence with 27 occurrences
* http://localhost:8080 with 3 occurrences
* http://purl.org/dc/elements/1.1/ with 2 occurrences
* http://samples.springframework.org/flight with 7 occurrences
* http://schemas.microsoft.com/visio/2003/SVGExtensions/ with 7 occurrences
* http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd with 2 occurrences
* http://www.foo.com/schema/component with 2 occurrences
* http://www.greeting.com/goodbye/ with 1 occurrences
* http://www.greeting.com/hello/ with 1 occurrences
* http://www.inkscape.org/namespaces/inkscape with 2 occurrences
* http://www.quartz-scheduler.org/xml/JobSchedulingData with 2 occurrences
* http://www.springframework.org/schema/aop with 176 occurrences
* http://www.springframework.org/schema/beans with 715 occurrences
* http://www.springframework.org/schema/beans/test with 2 occurrences
* http://www.springframework.org/schema/c with 9 occurrences
* http://www.springframework.org/schema/cache with 20 occurrences
* http://www.springframework.org/schema/context with 126 occurrences
* http://www.springframework.org/schema/jdbc with 66 occurrences
* http://www.springframework.org/schema/jee with 2 occurrences
* http://www.springframework.org/schema/jms with 20 occurrences
* http://www.springframework.org/schema/lang with 27 occurrences
* http://www.springframework.org/schema/mvc with 58 occurrences
* http://www.springframework.org/schema/oxm with 2 occurrences
* http://www.springframework.org/schema/p with 16 occurrences
* http://www.springframework.org/schema/task with 14 occurrences
* http://www.springframework.org/schema/tx with 12 occurrences
* http://www.springframework.org/schema/util with 28 occurrences
* http://www.springframework.org/schema/websocket with 22 occurrences
* http://www.w3.org/2000/svg with 9 occurrences
* http://www.w3.org/2001/XMLSchema-instance with 375 occurrences
* http://www.w3.org/2005/Atom with 2 occurrences
Closes gh-22669
2019-03-27 19:05:08 +01:00
Juergen Hoeller
80b4b9850a
Upgrade to Reactor Californium SR6
...
Closes gh-22693
2019-03-27 18:08:35 +01:00
Sebastien Deleuze
864dddee7a
Merge branch '5.1.x'
2019-03-27 17:13:06 +01:00
Sebastien Deleuze
f0ae8bc300
Support custom XmlFactory in Jackson2ObjectMapperBuilder
...
Closes gh-22428
2019-03-27 16:48:21 +01:00
Juergen Hoeller
673be7fb0d
Merge branch '5.1.x'
2019-03-27 16:02:07 +01:00
Juergen Hoeller
ca24fd50b0
Rethrow original BeanCreationException if fallback producer fails
...
Closes gh-22689
2019-03-27 16:01:18 +01:00
Sebastien Deleuze
8003aa4f26
Deprecate GenericApplicationContext { } Kotlin extension
...
Closes gh-22692
2019-03-27 15:12:16 +01:00
Sebastien Deleuze
fb1da01410
Support creating beans from Kotlin callable references
...
This commit updates Kotlin beans DSL in order to support
creating beans using callable references with autowired
parameters. Type resolution is implemented using Kotlin
reified type parameters without requiring reflection.
Closes gh-21845
2019-03-27 14:47:42 +01:00
Juergen Hoeller
c9857702e4
Refined retrieval of plain annotations through direct presence checks
...
Shortcut checks apply for hasPlainJavaAnnotationsOnly types as well now.
Closes gh-22685
2019-03-27 12:56:11 +01:00
Juergen Hoeller
cb84c56f19
Revert "Migrate CommonAnnotationBeanPostProcessor to MergedAnnotations"
...
This reverts commit 75b52309
2019-03-27 12:54:34 +01:00
Sebastien Deleuze
cbb5a78aa0
Infer Kotlin null-safety from type variables
...
This commit removes the constraint from type variables in
PropertyResolver, JdbcOperations and RestOperations
Kotlin extensions in order to get null-safety inferred
from the type declared by the user.
Closes gh-22687
2019-03-27 09:03:32 +01:00
Rossen Stoyanchev
68a529b915
Merge branch '5.1.x'
2019-03-26 21:14:51 -04:00
Rossen Stoyanchev
c54355784e
Buffer leak fixes
...
Address issues where buffers are allocated (and cached somehow) at or
before subscription, and before explicit demand.
The commit adds tests proving the leaks and fixes. The common thread
for all tests is a "zero demand" subscriber that subscribes but does
not request, and then cancels without consuming anything.
Closes gh-22107
2019-03-26 21:13:42 -04:00
Rossen Stoyanchev
65b46079a2
Replace stream with loop in RequestCondition's
2019-03-26 21:12:15 -04:00
Juergen Hoeller
b646943350
Upgrade to Hibernate ORM 5.4.2
2019-03-26 23:59:16 +01:00
Juergen Hoeller
ea51270895
Merge branch '5.1.x'
2019-03-26 23:48:09 +01:00
Juergen Hoeller
9d6592d8f6
Upgrade to Hibernate Validator 6.0.16 and H2 1.4.199
2019-03-26 23:31:19 +01:00
Sam Brannen
49b6c5800a
Merge branch '5.1.x'
2019-03-26 18:29:17 +01:00
Sam Brannen
95eb24d642
Verify that CssLinkResourceTransformer handles empty url() links
...
This commit introduces tests that verify that both
CssLinkResourceTransformer implementations properly handle empty url()
functions in CSS files.
See gh-22602
2019-03-26 18:27:11 +01:00
Juergen Hoeller
e3b6174b6d
Merge branch '5.1.x'
2019-03-26 18:02:20 +01:00
Juergen Hoeller
699d75ec11
Polishing
2019-03-26 17:56:31 +01:00
Arjen Poutsma
4ca27db0cc
Copy cookies to ServerResponse builders
...
See gh-22351
2019-03-26 16:32:54 +01:00
Arjen Poutsma
771d436680
Merge branch '5.1.x'
2019-03-26 16:19:57 +01:00
Arjen Poutsma
c152d246a8
Copy cookies and hints to ServerResponse builders
...
Closes gh-22351
2019-03-26 16:19:13 +01:00
Juergen Hoeller
635305647c
Polishing
2019-03-26 16:13:51 +01:00
Juergen Hoeller
210b178922
Restore retrieval of plain annotations through direct presence checks
...
Includes deprecation of several AnnotationUtils methods and nullability refinements for passed-in function arguments at the MergedAnnotation API level... also, MergedAnnotation.getType() returns a Class now.
Closes gh-22663
Closes gh-22685
2019-03-26 16:13:41 +01:00
Juergen Hoeller
f7a4850675
AnnotationJmxAttributeSource uses MergedAnnotation API directly
...
Includes deprecation of AnnotationBeanUtils class (now unused).
Closes gh-22657
2019-03-26 16:13:23 +01:00
Arjen Poutsma
6324a1b3fa
Copy cookies and hints in built ServerResponse
...
Closes gh-22481
2019-03-26 15:49:12 +01:00
Arjen Poutsma
0db317575b
Copy cookies in built ServerResponse
...
Closes gh-22481
2019-03-26 15:47:58 +01:00
Arjen Poutsma
dba04a7338
Merge branch '5.1.x'
2019-03-26 15:34:48 +01:00
Arjen Poutsma
d8215e7c79
Copy cookies and hints in built ServerResponse
...
Closes gh-22481
2019-03-26 15:31:15 +01:00
Sebastien Deleuze
6bf52ff8b9
Merge branch '5.1.x'
2019-03-26 14:30:49 +01:00
Sebastien Deleuze
0ca8428603
Fix lambda nullability in JdbcOperations extensions
...
Closes gh-22682
2019-03-26 14:29:41 +01:00
Sam Brannen
2a94cb2fe9
Merge branch '5.1.x'
2019-03-26 14:06:28 +01:00
Sam Brannen
fd6b64bfac
Polishing
2019-03-26 12:48:15 +01:00
Sam Brannen
6870b9c691
Test fix in gh-22638
2019-03-26 12:48:15 +01:00
李全城
93de5f407e
Avoid duplicate registration of [RequestBody|ResponseBody]Advice @ControllerAdvice
...
Prior to this commit, if a @ControllerAdvice implemented both
RequestBodyAdvice and ResponseBodyAdvice, it was registered twice in
RequestMappingHandlerAdapter.
This commit ensures that such instances are only registered once.
Closes gh-22638
2019-03-26 12:07:19 +01:00
Phillip Webb
0ace0be29b
Fix annotation value mapping regression
...
Refine `TypeMappedAnnotation.getValueFromMetaAnnotation` to correctly
account for aliases when finding values from meta-annotations. Prior
to this commit, only convention based mappings were considered when
searching for values on meta-annotations. This meant that declared
meta-annotations that used aliases could return the "default value"
rather than the merged value.
Closes gh-22654
2019-03-25 17:19:12 -07:00
Sebastien Deleuze
88a2729fba
Introduce spring-core-coroutines module
...
This commit introduces the spring-core-coroutines module
in order to avoid referencing Kotlin code from Java one,
which is currently not supported by Eclipse.
During the build, spring-core-coroutines is merged into
spring-core, so this change is expected to have no impact
for end users.
This module contains functions accessible from Java via
the CoroutinesUtils class to adapt Coroutines and Deferred
instances to and from Mono.
See gh-19975
2019-03-25 21:57:53 +01:00
Sam Brannen
837be3eaa0
Merge branch '5.1.x'
2019-03-25 18:17:23 +01:00
Sam Brannen
f66362a01c
Update license.txt file
...
Closes gh-22659
2019-03-25 18:09:28 +01:00
Arjen Poutsma
94c14c469e
Fix checkstyle issue
2019-03-25 17:18:47 +01:00
Arjen Poutsma
1c46a9a6ff
Remove direct Reactive Streams dependencies in Servlet.fn
...
Isolated direct dependencies to Reactive Streams types.
2019-03-25 16:16:20 +01:00
Phillip Webb
cb7f997962
Defensively copy array returned from forAnnotations
...
Update the proxy used in `AnnotatedElementUtils.forAnnotations` so
that it returns a cloned array for calls to `getDeclaredAnnotations`
or `getAnnotations`. This matches the behavior of standard JDK
`AnnotatedElement` implementations.
Closes gh-22655
2019-03-25 07:53:42 -07:00
Juergen Hoeller
78fd882141
Remove superfluous empty lines after code blocks
2019-03-25 14:21:49 +01:00
Juergen Hoeller
3c02331983
Merge branch '5.1.x'
2019-03-25 13:59:24 +01:00
Juergen Hoeller
fc178ef7c2
Upgrade to Tomcat 9.0.17 and OkHttp 3.14
2019-03-25 13:54:15 +01:00
Juergen Hoeller
6f1b583130
Polishing
2019-03-25 13:54:02 +01:00
Juergen Hoeller
507d4ba825
StringUtils.parseLocale consistently handles invalid locale values
...
Closes gh-22603
2019-03-25 13:53:54 +01:00
Sebastien Deleuze
8494c7a75a
Add missing KDoc comments
2019-03-25 09:34:55 +01:00
Sebastien Deleuze
67c8d3753b
Upgrade to Dokka 0.9.18
2019-03-25 09:34:55 +01:00
www
4517f40f57
Remove redundant 'String.substring()' call
2019-03-25 09:34:29 +01:00
Stephane Nicoll
80c48648d7
Merge pull request #22649 from ttddyy
...
* pr/22649:
Fix typo on MergedAnnotations
2019-03-25 09:25:32 +01:00
Tadaya Tsuyukubo
860ec44c50
Fix typo on MergedAnnotations
...
Closes gh-22649
2019-03-25 09:25:16 +01:00
Sam Brannen
3a0f309e2c
Update readme.txt in distributed artifacts
2019-03-23 19:43:34 +01:00
Sam Brannen
d41c4522da
Remove italics from XML examples in Reference Manual
2019-03-23 19:32:01 +01:00
Sam Brannen
4f619787ad
Revert change from URL Cleanup
2019-03-23 19:20:40 +01:00
Sam Brannen
57ab877f0d
Upgrade to Gradle 5.3
...
Closes gh-22347
2019-03-23 18:04:44 +01:00
Sam Brannen
cd19170ffb
Polish BeanUtilsTests
2019-03-23 16:19:42 +01:00
Min-soo
670aa4b7ef
Use JUnit 4's expected exception support in BeanUtilsTests
...
This commit uses JUnit 4's built-in expected exception support in
BeanUtilsTests,
Closes gh-22354
2019-03-23 16:15:07 +01:00
Sam Brannen
9ac2e034e7
Polishing
2019-03-23 16:09:47 +01:00
Johnny Lim
14b1a6fdcb
Polish docs ( #22645 )
2019-03-23 15:48:47 +01:00
Sam Brannen
8d7676a5ec
Merge branch 'spring-operator-polish-urls-apache-license-5.1.x' into 5.1.x
2019-03-23 15:41:55 +01:00
Sam Brannen
68de9820dc
Upgrade to latest Checkstyle DTDs
...
See gh-22634
2019-03-23 15:40:10 +01:00
Sam Brannen
af99e868c4
Upgrade to spring-javaformat-checkstyle version 0.0.7
...
See gh-22634
2019-03-23 15:38:44 +01:00
Sam Brannen
e98fd762ba
URL Cleanup - license headers - target subpackages
...
This commit updates license headers for source files residing in
subpackages named `target`.
Closes gh-22634
2019-03-23 15:22:44 +01:00
Spring Operator
540759ec41
URL Cleanup
...
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).
# Fixed URLs
## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.
* [ ] http://www.apache.org/licenses/ with 1 occurrences migrated to:
https://www.apache.org/licenses/ ([https](https://www.apache.org/licenses/ ) result 200).
* [ ] http://www.apache.org/licenses/LICENSE-2.0 with 6515 occurrences migrated to:
https://www.apache.org/licenses/LICENSE-2.0 ([https](https://www.apache.org/licenses/LICENSE-2.0 ) result 200).
2019-03-23 15:19:34 +01:00
Sam Brannen
7bb66c4f49
Replace bit.ly links with real links
2019-03-23 13:54:40 +01:00
Sam Brannen
0c8b473cac
Wikipedia -> Wiki
2019-03-23 13:44:59 +01:00
Sam Brannen
9b7215e640
URL Cleanup - update remaining license headers
...
See gh-22617 gh-22622 gh-22635
2019-03-23 13:11:10 +01:00
Sam Brannen
20764685ec
Merge URL Cleanup PRs
...
This merges the URL Cleanup PRs along with fixes.
Closes gh-22617 gh-22622 gh-22635
2019-03-23 13:01:57 +01:00
Sam Brannen
8a61c56154
URL Cleanup - upgrade to more modern Xalan namespace
...
See gh-22617 gh-22622 gh-22635
2019-03-23 12:21:21 +01:00
Juergen Hoeller
bddba68549
Polishing
2019-03-23 12:14:35 +01:00
Juergen Hoeller
32b46866c7
Make MultipartResolutionDelegate final (aligned with other delegates)
2019-03-23 12:14:21 +01:00
Juergen Hoeller
62e5585c2e
Avoid package cycle between beans.factory.annotation and b.f.support
...
See gh-2060
2019-03-23 12:14:03 +01:00
Juergen Hoeller
5e15338a09
Nullability refinements (no IntelliJ warnings, fewer null checks)
...
Includes consistent ignoring of all java.lang (meta-)annotations.
Closes gh-22586
2019-03-23 12:13:38 +01:00
Sam Brannen
68837ebb57
URL Cleanup - fix undesirable code change
...
Namespace handlers are mapped based on the canonical names for XML
namespaces which in Spring do not use "https" as the scheme.
See gh-22617 gh-22622 gh-22635
2019-03-23 11:56:31 +01:00
Sam Brannen
307a74835d
URL Cleanup - remove obsolete ATOM schema location
...
See gh-22617 gh-22622 gh-22635
2019-03-23 11:54:49 +01:00
Sam Brannen
2db36c00e7
URL Cleanup - use HTTPS where possible in links in Testing Chapter
...
See gh-22617 gh-22622 gh-22635
2019-03-23 11:54:11 +01:00
Sam Brannen
6164664f65
URL Cleanup - fix XSD imports
...
See gh-22617 gh-22622 gh-22635
2019-03-23 11:53:24 +01:00
Sam Brannen
cedcd2fddd
URL Cleanup - fix links
...
See gh-22617 gh-22622 gh-22635
2019-03-23 11:52:49 +01:00
Phillip Webb
75b52309a7
Migrate CommonAnnotationBeanPostProcessor to MergedAnnotations
...
Closes gh-22585
2019-03-22 20:40:05 +01:00
Phillip Webb
50c257794f
Migrate DefaultListableBeanFactory to MergedAnnotations
...
Closes gh-22584
2019-03-22 20:40:05 +01:00
Phillip Webb
857371ba67
Migrate AutowiredAnnotationBeanPostProcessor to MergedAnnotations
...
Closes gh-22582
2019-03-22 20:40:05 +01:00
Phillip Webb
f065abac93
Migrate AnnotationAwareOrderComparator to MergedAnnotations
...
Closes gh-22581
2019-03-22 20:40:05 +01:00
Phillip Webb
7244c9aea1
Add more aggressive annotation element filtering
...
Refine the element filtering performed by `AnnotationsScanner` to also
cover `org.springframework.util` and most `com.sun` classes which turn
out to be referenced quite frequently and which we know contain no
useful annotations.
See gh-21697
2019-03-22 20:40:05 +01:00
Phillip Webb
db8eaec131
Cache BridgeMethodResolver results
...
Add a cache to `BridgeMethodResolver` to help with repeated calls to
resolve the same methods. Since bridge method resolution can be somewhat
expensive (especially when resolving generics), and the number of bridge
methods is quite small, a cache generally helps.
This commit also simplifies the code a little by calling `doWithMethods`
directly rather than relying on `ReflectionUtils.getAllDeclaredMethods`
to do so. The methods list is now always created, but we save the list
creation that `getAllDeclaredMethods` used to do.
Closes gh-22579
2019-03-22 20:40:05 +01:00
Phillip Webb
a57d6ba5f3
Optimize StringUtils.cleanPath
...
Add an early exit to `StringUtils.cleanPath` to save array creating and
string concatenation. With a typical Spring application, the `cleanPath`
method can be called over 600 times, often with a path constructed by
a `ClassPathResource` that is likely to already be clean.
Closes gh-22568
2019-03-22 20:40:05 +01:00
Phillip Webb
19fb697d03
Add more empty array constants in ReflectionUtils
...
Add some additional empty array constants to `ReflectionUtils` to save
us creating new arrays for zero length results.
See gh-22567
2019-03-22 20:40:05 +01:00
Phillip Webb
e3a86be122
Make ConcurrentReferenceHashMap more JIT friendly
...
Update `ConcurrentReferenceHashMap` to make some methods more inline
friendly, and to manually inline a few others. These minor optimizations
don't make a great deal of difference for most applications, but seem
worthwhile since we use `ConcurrentReferenceHashMap` for many internal
caches.
Closes gh-22566
2019-03-22 20:40:05 +01:00
Phillip Webb
aa4e56b251
Optimize @Configuration class parsing a little
...
Update `ConfigurationClassParser` to skip `java.lang.annotation` types
which were often processed but would never provide useful results. Also
use a single shared immutable `SourceClass` instance to represent
`Object.class`.
Closes gh-22563
2019-03-22 20:40:05 +01:00
Phillip Webb
37255afca4
Complete migration of annotation utility methods
...
Delete `InternalAnnotationUtils` and `InternalAnnotatedElementUtils` and
migrate exclusively to the new `MergedAnnotations` API.
Closes gh-22562
2019-03-22 20:40:05 +01:00
Phillip Webb
a14bfe9a21
Migrate and verify annotation utility methods
...
Migrate all possible `AnnotationUtils` and `AnnotatedElementUtils`
method to the `MergedAnnotation` API, verify results against the old
implementations.
All migrated methods now call both the new API and the old version and
ensure that the same results or exceptions are raised. A full build of
both Spring Framework and Spring Boot has been executed to ensure, as
much as possible, that the migration does not cause unexpected
regressions.
See gh-22562
2019-03-22 20:40:05 +01:00
Phillip Webb
b91ccf038f
Start migration annotation utility methods
...
Create internal variants of the existing `AnnotationUtils` and
`AnnotatedElementUtils` classes and migrate the existing classes to
use them.
The internal variants will be used to check that the same results are
given as we migrate the utils methods to use the new `MergedAnnotations`
API.
See gh-22562
2019-03-22 20:40:05 +01:00
Phillip Webb
4972d85ae0
Create a new API for handling merged annotations
...
Add new `MergedAnnotations` and `MergedAnnotation` interfaces that
attempt to provide a uniform way for dealing with merged annotations.
Specifically, the new API provides alternatives for the static methods
in `AnnotationUtils` and `AnnotatedElementUtils` and supports Spring's
comprehensive annotation attribute `@AliasFor` features. The interfaces
also open the possibility of the same API being exposed from the
`AnnotationMetadata` interface.
Additional utility classes for collecting, filtering and selecting
annotations have also been added.
Typical usage for the new API would be something like:
MergedAnnotations.from(Example.class)
.stream(MyAnnotation.class)
.map(a -> a.getString("value"))
.forEach(System.out::println);
Closes gh-21697
2019-03-22 20:40:05 +01:00
Phillip Webb
fdacda8b01
Add AnnotationIntrospectionFailureTests
...
Add a new test class to help cover annotation introspection failure
handling. These tests were previously missing and are important to
ensure that annotation util code changes don't introduce regressions.
See gh-21697
2019-03-22 20:40:05 +01:00
Phillip Webb
8ef609a1b7
Add public variant getDeclaredMethods method
...
Add a public variant of `getDeclaredMethods` that defensively copies the
cached methods array. This is often more faster and more convenient
for users than calling `doWithLocalMethods`. We still retain most of the
benefits of the cache, namely fewer security manager calls and not as
many `Method` instances being created.
Closes gh-22580
2019-03-22 20:40:05 +01:00
Phillip Webb
5044ee8fe6
Add AssertJ dependency for tests usage
...
Add AssertJ as a test scope dependency for all sub-projects.
Closes gh-22561
2019-03-22 20:40:05 +01:00
Phillip Webb
ecbad874bf
Refine eclipse settings
2019-03-22 20:40:05 +01:00
Phillip Webb
9c92b21af8
Polishing
2019-03-22 20:40:05 +01:00
Rossen Stoyanchev
f8121515bf
Merge branch '5.1.x'
2019-03-22 14:50:51 -04:00
Rossen Stoyanchev
c9a86e1ff4
Polish
...
See gh-22598
2019-03-22 14:39:21 -04:00
wenqi.huang
d10174a3e9
Optimize performance of produces condition checks
2019-03-22 13:59:34 -04:00
Sam Brannen
7fe12cc23e
URL Cleanup
...
This merges the URL Cleanup PRs along with fixes.
Closes gh-22617 gh-22622 gh-22635
2019-03-22 16:37:36 +01:00
Sam Brannen
14902e1744
Polish Javadoc
2019-03-22 13:32:24 +01:00
arman simonyan
517812d30a
Fix grammar issue
2019-03-22 09:25:21 +01:00
Rob Winch
bff3d2f2be
Update to spring-javaformat-checkstyle 0.0.7
...
Remove unnecessary lambdas to fix updated checkstyle
2019-03-22 00:35:32 -05:00
Rob Winch
62ea7382d7
Polish URL Cleanup
...
Update Apache Headers
2019-03-22 00:24:06 -05:00
Spring Operator
dc6f63f610
URL Cleanup
...
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).
# Fixed URLs
## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.
* [ ] http://www.apache.org/licenses/ with 1 occurrences migrated to:
https://www.apache.org/licenses/ ([https](https://www.apache.org/licenses/ ) result 200).
* [ ] http://www.apache.org/licenses/LICENSE-2.0 with 6625 occurrences migrated to:
https://www.apache.org/licenses/LICENSE-2.0 ([https](https://www.apache.org/licenses/LICENSE-2.0 ) result 200).
2019-03-21 23:49:28 -05:00
Rob Winch
263868f018
Polish URL Cleanup
2019-03-21 23:47:38 -05:00
Rossen Stoyanchev
2f95859715
Upgrade to RSocket 0.12.1-RC3-SNAPSHOT
...
Closes gh-22629
2019-03-21 19:31:06 -04:00
Spring Operator
d99edd154f
URL Cleanup
...
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).
These URLs were unable to be fixed. Please review them to see if they can be manually resolved.
* [ ] http://aopalliance.sourceforge.net (200) with 1 occurrences could not be migrated:
([https](https://aopalliance.sourceforge.net ) result AnnotatedConnectException).
* [ ] http://cglib.sourceforge.net (200) with 2 occurrences could not be migrated:
([https](https://cglib.sourceforge.net ) result AnnotatedConnectException).
* [ ] http://classdoc.sourceforge.net (200) with 1 occurrences could not be migrated:
([https](https://classdoc.sourceforge.net ) result AnnotatedConnectException).
* [ ] http://code.jquery.com:80/jquery.js (200) with 1 occurrences could not be migrated:
([https](https://code.jquery.com:80/jquery.js ) result ClosedChannelException).
* [ ] http://dbunit.sourceforge.net/ (200) with 1 occurrences could not be migrated:
([https](https://dbunit.sourceforge.net/ ) result AnnotatedConnectException).
* [ ] http://docs.groovy-lang.org/docs/next/html/documentation/template-engines.html (200) with 1 occurrences could not be migrated:
([https](https://docs.groovy-lang.org/docs/next/html/documentation/template-engines.html ) result SSLProtocolException).
* [ ] http://domain3.com (200) with 6 occurrences could not be migrated:
([https](https://domain3.com ) result ConnectTimeoutException).
* [ ] http://forum.thymeleaf.org/Thymeleaf-3-0-8-JUST-PUBLISHED-td4030687.html (200) with 1 occurrences could not be migrated:
([https](https://forum.thymeleaf.org/Thymeleaf-3-0-8-JUST-PUBLISHED-td4030687.html ) result SSLHandshakeException).
* [ ] http://grinder.sourceforge.net/ (200) with 1 occurrences could not be migrated:
([https](https://grinder.sourceforge.net/ ) result AnnotatedConnectException).
* [ ] http://groovy-lang.org/templating.html (200) with 3 occurrences could not be migrated:
([https](https://groovy-lang.org/templating.html ) result SSLProtocolException).
* [ ] http://hsqldb.org (200) with 1 occurrences could not be migrated:
([https](https://hsqldb.org ) result SSLHandshakeException).
* [ ] http://htmlunit.sourceforge.net/ (200) with 3 occurrences could not be migrated:
([https](https://htmlunit.sourceforge.net/ ) result AnnotatedConnectException).
* [ ] http://htmlunit.sourceforge.net/gettingStarted.html (200) with 1 occurrences could not be migrated:
([https](https://htmlunit.sourceforge.net/gettingStarted.html ) result AnnotatedConnectException).
* [ ] http://htmlunit.sourceforge.net/javascript.html (200) with 1 occurrences could not be migrated:
([https](https://htmlunit.sourceforge.net/javascript.html ) result AnnotatedConnectException).
* [ ] http://javadiff.cvs.sourceforge.net/ (200) with 3 occurrences could not be migrated:
([https](https://javadiff.cvs.sourceforge.net/ ) result SSLHandshakeException).
* [ ] http://jibx.sourceforge.net/ (200) with 2 occurrences could not be migrated:
([https](https://jibx.sourceforge.net/ ) result AnnotatedConnectException).
* [ ] http://joda-time.sourceforge.net (200) with 1 occurrences could not be migrated:
([https](https://joda-time.sourceforge.net ) result AnnotatedConnectException).
* [ ] http://jotm.objectweb.org/ (200) with 1 occurrences could not be migrated:
([https](https://jotm.objectweb.org/ ) result NotSslRecordException).
* [ ] http://json-b.net/ (200) with 1 occurrences could not be migrated:
([https](https://json-b.net/ ) result SSLHandshakeException).
* [ ] http://mx4j.sourceforge.net (200) with 1 occurrences could not be migrated:
([https](https://mx4j.sourceforge.net ) result AnnotatedConnectException).
* [ ] http://mx4j.sourceforge.net/ (200) with 1 occurrences could not be migrated:
([https](https://mx4j.sourceforge.net/ ) result AnnotatedConnectException).
* [ ] http://mydomain3.com (200) with 9 occurrences could not be migrated:
([https](https://mydomain3.com ) result ConnectTimeoutException).
* [ ] http://objenesis.org (200) with 1 occurrences could not be migrated:
([https](https://objenesis.org ) result SSLHandshakeException).
* [ ] http://objenesis.org/tutorial.html (200) with 1 occurrences could not be migrated:
([https](https://objenesis.org/tutorial.html ) result SSLHandshakeException).
* [ ] http://other.com/ (200) with 2 occurrences could not be migrated:
([https](https://other.com/ ) result SSLHandshakeException).
* [ ] http://reactivex.io/ (200) with 1 occurrences could not be migrated:
([https](https://reactivex.io/ ) result SSLHandshakeException).
* [ ] http://reactivex.io/documentation/operators.html (200) with 1 occurrences could not be migrated:
([https](https://reactivex.io/documentation/operators.html ) result SSLHandshakeException).
* [ ] http://url.somewhereelse.com (200) with 4 occurrences could not be migrated:
([https](https://url.somewhereelse.com ) result SSLHandshakeException).
* [ ] http://www.beanshell.org (200) with 1 occurrences could not be migrated:
([https](https://www.beanshell.org ) result SSLHandshakeException).
* [ ] http://www.beanshell.org/ (200) with 1 occurrences could not be migrated:
([https](https://www.beanshell.org/ ) result SSLHandshakeException).
* [ ] http://www.doclet.com (200) with 1 occurrences could not be migrated:
([https](https://www.doclet.com ) result AnnotatedConnectException).
* [ ] http://www.gebish.org/ (200) with 1 occurrences could not be migrated:
([https](https://www.gebish.org/ ) result SSLHandshakeException).
* [ ] http://www.gebish.org/manual/current/ (200) with 3 occurrences could not be migrated:
([https](https://www.gebish.org/manual/current/ ) result SSLHandshakeException).
* [ ] http://www.groovy-lang.org/ (200) with 2 occurrences could not be migrated:
([https](https://www.groovy-lang.org/ ) result SSLProtocolException).
* [ ] http://www.groovy-lang.org/operators.html (200) with 2 occurrences could not be migrated:
([https](https://www.groovy-lang.org/operators.html ) result SSLProtocolException).
* [ ] http://www.hsqldb.org (200) with 1 occurrences could not be migrated:
([https](https://www.hsqldb.org ) result SSLHandshakeException).
* [ ] http://www.jensgulden.de (200) with 1 occurrences could not be migrated:
([https](https://www.jensgulden.de ) result AnnotatedConnectException).
* [ ] http://www.mockobjects.com (200) with 1 occurrences could not be migrated:
([https](https://www.mockobjects.com ) result ClosedChannelException).
* [ ] http://www.mockobjects.com/ (200) with 1 occurrences could not be migrated:
([https](https://www.mockobjects.com/ ) result ClosedChannelException).
* [ ] http://www.w3.org/TR/cors/ (200) with 19 occurrences could not be migrated:
([https](https://www.w3.org/TR/cors/ ) result SSLException).
* [ ] http://xmlunit.sourceforge.net/ (200) with 2 occurrences could not be migrated:
([https](https://xmlunit.sourceforge.net/ ) result AnnotatedConnectException).
* [ ] http://www.easymock.org (301) with 1 occurrences could not be migrated:
([https](https://www.easymock.org ) result SSLHandshakeException).
* [ ] http://www.easymock.org/ (301) with 1 occurrences could not be migrated:
([https](https://www.easymock.org/ ) result SSLHandshakeException).
* [ ] http://www.jmock.org/ (301) with 1 occurrences could not be migrated:
([https](https://www.jmock.org/ ) result SSLHandshakeException).
* [ ] http://foo.com (301) with 4 occurrences could not be migrated:
([https](https://foo.com ) result SSLHandshakeException).
* [ ] http://foo.com/ (301) with 1 occurrences could not be migrated:
([https](https://foo.com/ ) result SSLHandshakeException).
* [ ] http://foo.com/a (301) with 1 occurrences could not be migrated:
([https](https://foo.com/a ) result SSLHandshakeException).
* [ ] http://foo.com/a?foo=bar&foo=baz (301) with 4 occurrences could not be migrated:
([https](https://foo.com/a?foo=bar&foo=baz ) result SSLHandshakeException).
* [ ] http://foo.com/bar (301) with 5 occurrences could not be migrated:
([https](https://foo.com/bar ) result SSLHandshakeException).
* [ ] http://foo.com/baz (301) with 1 occurrences could not be migrated:
([https](https://foo.com/baz ) result SSLHandshakeException).
* [ ] http://foo.com/rest/books/6.json (301) with 1 occurrences could not be migrated:
([https](https://foo.com/rest/books/6.json ) result SSLHandshakeException).
* [ ] http://foo.com/rest/books/6/pages/1.json (301) with 1 occurrences could not be migrated:
([https](https://foo.com/rest/books/6/pages/1.json ) result SSLHandshakeException).
* [ ] http://foo.com/v1 (301) with 1 occurrences could not be migrated:
([https](https://foo.com/v1 ) result SSLHandshakeException).
* [ ] http://foo.com/v1/123 (301) with 1 occurrences could not be migrated:
([https](https://foo.com/v1/123 ) result SSLHandshakeException).
* [ ] http://foo.com/v1/bar (301) with 1 occurrences could not be migrated:
([https](https://foo.com/v1/bar ) result SSLHandshakeException).
* [ ] http://foo.com/v1?id=123 (301) with 2 occurrences could not be migrated:
([https](https://foo.com/v1?id=123 ) result SSLHandshakeException).
* [ ] http://foo.com/wrong (301) with 1 occurrences could not be migrated:
([https](https://foo.com/wrong ) result SSLHandshakeException).
* [ ] http://mydomain4.com (301) with 3 occurrences could not be migrated:
([https](https://mydomain4.com ) result SSLHandshakeException).
* [ ] http://xml.org/sax/features/ (301) with 4 occurrences could not be migrated:
([https](https://xml.org/sax/features/ ) result SSLHandshakeException).
* [ ] http://xml.org/sax/features/external-general-entities (301) with 10 occurrences could not be migrated:
([https](https://xml.org/sax/features/external-general-entities ) result SSLHandshakeException).
* [ ] http://xml.org/sax/features/is-standalone (301) with 1 occurrences could not be migrated:
([https](https://xml.org/sax/features/is-standalone ) result SSLHandshakeException).
* [ ] http://xml.org/sax/features/namespace-prefixes (301) with 13 occurrences could not be migrated:
([https](https://xml.org/sax/features/namespace-prefixes ) result SSLHandshakeException).
* [ ] http://xml.org/sax/features/namespaces (301) with 12 occurrences could not be migrated:
([https](https://xml.org/sax/features/namespaces ) result SSLHandshakeException).
* [ ] http://xml.org/sax/features/namespaces-prefixes (301) with 1 occurrences could not be migrated:
([https](https://xml.org/sax/features/namespaces-prefixes ) result SSLHandshakeException).
* [ ] http://xml.org/sax/properties/lexical-handler (301) with 12 occurrences could not be migrated:
([https](https://xml.org/sax/properties/lexical-handler ) result SSLHandshakeException).
* [ ] http://www.caucho.com/hessian (302) with 6 occurrences could not be migrated:
([https](https://www.caucho.com/hessian ) result SSLHandshakeException).
* [ ] http://example.com:80/test/this/here (404) with 3 occurrences could not be migrated:
([https](https://example.com:80/test/this/here ) result NotSslRecordException).
* [ ] http://www.foo.com/schema/component/component.xsd (404) with 1 occurrences could not be migrated:
([https](https://www.foo.com/schema/component/component.xsd ) result SSLHandshakeException).
* [ ] http://www.foo.com/schema/jcache (404) with 2 occurrences could not be migrated:
([https](https://www.foo.com/schema/jcache ) result SSLHandshakeException).
* [ ] http://www.mycompany.com/schema/myns/myns.xsd (404) with 1 occurrences could not be migrated:
([https](https://www.mycompany.com/schema/myns/myns.xsd ) result ConnectTimeoutException).
* [ ] http://xunitpatterns.com/Test%20Spy.html (404) with 1 occurrences could not be migrated:
([https](https://xunitpatterns.com/Test%20Spy.html ) result AnnotatedConnectException).
These URLs were fixed, but the https status was not OK. However, the https status was the same as the http request or http redirected to an https URL, so they were migrated. Your review is recommended.
* [ ] http://mydomain2.com (302) with 22 occurrences migrated to:
/QTifZ/ ([https](https://mydomain2.com ) result IllegalArgumentException).
* [ ] http://www.jdiff.org (302) with 1 occurrences migrated to:
/VQYNZ/ ([https](https://www.jdiff.org ) result IllegalArgumentException).
* [ ] http://192.168.0.1/mvc-showcase (301) with 1 occurrences migrated to:
/admin/ ([https](https://192.168.0.1/mvc-showcase ) result IllegalArgumentException).
* [ ] http://bugs.sun.com/view_bug.do?bug_id=6342411 (302) with 1 occurrences migrated to:
https://bugs.java.com/view_bug.do?bug_id=6342411 ([https](https://bugs.sun.com/view_bug.do?bug_id=6342411 ) result SSLHandshakeException).
* [ ] http://bugs.sun.com/view_bug.do?bug_id=7023180 (302) with 2 occurrences migrated to:
https://bugs.java.com/view_bug.do?bug_id=7023180 ([https](https://bugs.sun.com/view_bug.do?bug_id=7023180 ) result SSLHandshakeException).
* [ ] http://www.freemarker.org (301) with 5 occurrences migrated to:
https://freemarker.apache.org/ ([https](https://www.freemarker.org ) result ConnectTimeoutException).
* [ ] http://sockjs.org (303) with 2 occurrences migrated to:
https://github.com/sockjs/sockjs-client ([https](https://sockjs.org ) result AnnotatedConnectException).
* [ ] http://projects.eclipse.org/projects/tools.buildship (301) with 1 occurrences migrated to:
https://projects.eclipse.org/projects/tools.buildship ([https](https://projects.eclipse.org/projects/tools.buildship ) result SSLException).
* [ ] http://tools.ietf.org/html/rfc6202 (301) with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc6202 ([https](https://tools.ietf.org/html/rfc6202 ) result ReadTimeoutException).
* [ ] http://tools.ietf.org/html/rfc7239 (301) with 7 occurrences migrated to:
https://tools.ietf.org/html/rfc7239 ([https](https://tools.ietf.org/html/rfc7239 ) result ReadTimeoutException).
* [ ] http://aaa.org:8080/a (301) with 1 occurrences migrated to:
https://www.aaa.org/articles/ ([https](https://aaa.org:8080/a ) result NotSslRecordException).
* [ ] http://www.caucho.com (302) with 1 occurrences migrated to:
https://www.caucho.com/ ([https](https://www.caucho.com ) result SSLHandshakeException).
* [ ] http://jruby.org (301) with 4 occurrences migrated to:
https://www.jruby.org ([https](https://jruby.org ) result SSLHandshakeException).
* [ ] http://jruby.org/ (301) with 1 occurrences migrated to:
https://www.jruby.org ([https](https://jruby.org/ ) result SSLHandshakeException).
* [ ] http://bbb.org:9090/b (AnnotatedConnectException) with 2 occurrences migrated to:
https://bbb.org:9090/b ([https](https://bbb.org:9090/b ) result AnnotatedConnectException).
* [ ] http://192.168.28.42/1.jsp (ConnectTimeoutException) with 3 occurrences migrated to:
https://192.168.28.42/1.jsp ([https](https://192.168.28.42/1.jsp ) result ConnectTimeoutException).
* [ ] http://abc.com/v2/accounts?q=12 (ConnectTimeoutException) with 1 occurrences migrated to:
https://abc.com/v2/accounts?q=12 ([https](https://abc.com/v2/accounts?q=12 ) result ConnectTimeoutException).
* [ ] http://example.com:8080/ (ConnectTimeoutException) with 1 occurrences migrated to:
https://example.com:8080/ ([https](https://example.com:8080/ ) result ConnectTimeoutException).
* [ ] http://example.com:8080/bar (ConnectTimeoutException) with 5 occurrences migrated to:
https://example.com:8080/bar ([https](https://example.com:8080/bar ) result ConnectTimeoutException).
* [ ] http://example.org:9090 (ConnectTimeoutException) with 2 occurrences migrated to:
https://example.org:9090 ([https](https://example.org:9090 ) result ConnectTimeoutException).
* [ ] http://example.org:9090/base (ConnectTimeoutException) with 12 occurrences migrated to:
https://example.org:9090/base ([https](https://example.org:9090/base ) result ConnectTimeoutException).
* [ ] http://example.org:9090/base/people (ConnectTimeoutException) with 2 occurrences migrated to:
https://example.org:9090/base/people ([https](https://example.org:9090/base/people ) result ConnectTimeoutException).
* [ ] http://example.org:9090/base/something/1/foo (ConnectTimeoutException) with 2 occurrences migrated to:
https://example.org:9090/base/something/1/foo ([https](https://example.org:9090/base/something/1/foo ) result ConnectTimeoutException).
* [ ] http://example.org:9090/base/something/else (ConnectTimeoutException) with 2 occurrences migrated to:
https://example.org:9090/base/something/else ([https](https://example.org:9090/base/something/else ) result ConnectTimeoutException).
* [ ] http://example.org:9999/base (ConnectTimeoutException) with 1 occurrences migrated to:
https://example.org:9999/base ([https](https://example.org:9999/base ) result ConnectTimeoutException).
* [ ] http://example.org:9999/base/api/people/123/addresses (ConnectTimeoutException) with 1 occurrences migrated to:
https://example.org:9999/base/api/people/123/addresses ([https](https://example.org:9999/base/api/people/123/addresses ) result ConnectTimeoutException).
* [ ] http://example.org:9999/base/api/people/123/addresses/DE (ConnectTimeoutException) with 1 occurrences migrated to:
https://example.org:9999/base/api/people/123/addresses/DE ([https](https://example.org:9999/base/api/people/123/addresses/DE ) result ConnectTimeoutException).
* [ ] http://example.org:9999/base/people/123/addresses/DE (ConnectTimeoutException) with 1 occurrences migrated to:
https://example.org:9999/base/people/123/addresses/DE ([https](https://example.org:9999/base/people/123/addresses/DE ) result ConnectTimeoutException).
* [ ] http://example.org:9999/next (ConnectTimeoutException) with 1 occurrences migrated to:
https://example.org:9999/next ([https](https://example.org:9999/next ) result ConnectTimeoutException).
* [ ] http://example.org:9999/path?q=foo (ConnectTimeoutException) with 1 occurrences migrated to:
https://example.org:9999/path?q=foo ([https](https://example.org:9999/path?q=foo ) result ConnectTimeoutException).
* [ ] http://foo.com:8080/v1/bar?id=123 (ConnectTimeoutException) with 1 occurrences migrated to:
https://foo.com:8080/v1/bar?id=123 ([https](https://foo.com:8080/v1/bar?id=123 ) result ConnectTimeoutException).
* [ ] http://mydomain1.com:123 (ConnectTimeoutException) with 1 occurrences migrated to:
https://mydomain1.com:123 ([https](https://mydomain1.com:123 ) result ConnectTimeoutException).
* [ ] http://site1.com (ConnectTimeoutException) with 13 occurrences migrated to:
https://site1.com ([https](https://site1.com ) result ConnectTimeoutException).
* [ ] http://wwws.sun.com/software/xml/developers/diffmk/ (ConnectTimeoutException) with 1 occurrences migrated to:
https://wwws.sun.com/software/xml/developers/diffmk/ ([https](https://wwws.sun.com/software/xml/developers/diffmk/ ) result ConnectTimeoutException).
* [ ] http://aaa.org:8080/app/b/c/d (ReadTimeoutException) with 1 occurrences migrated to:
https://aaa.org:8080/app/b/c/d ([https](https://aaa.org:8080/app/b/c/d ) result NotSslRecordException).
* [ ] http://aaa.org:8080/b/c/d (ReadTimeoutException) with 1 occurrences migrated to:
https://aaa.org:8080/b/c/d ([https](https://aaa.org:8080/b/c/d ) result NotSslRecordException).
* [ ] http://www.w3.org/2000/xmlns/ (ReadTimeoutException) with 5 occurrences migrated to:
https://www.w3.org/2000/xmlns/ ([https](https://www.w3.org/2000/xmlns/ ) result SSLException).
* [ ] http://www.w3.org/2004/08/xop/include (ReadTimeoutException) with 2 occurrences migrated to:
https://www.w3.org/2004/08/xop/include ([https](https://www.w3.org/2004/08/xop/include ) result SSLException).
* [ ] http://www.w3.org/DesignIssues/MatrixURIs.html (ReadTimeoutException) with 2 occurrences migrated to:
https://www.w3.org/DesignIssues/MatrixURIs.html ([https](https://www.w3.org/DesignIssues/MatrixURIs.html ) result SSLException).
* [ ] http://www.w3.org/TR/2004/WD-soap12-mtom-20040608/ (ReadTimeoutException) with 2 occurrences migrated to:
https://www.w3.org/TR/2004/WD-soap12-mtom-20040608/ ([https](https://www.w3.org/TR/2004/WD-soap12-mtom-20040608/ ) result SSLException).
* [ ] http://www.w3.org/TR/2005/REC-xop10-20050125/ (ReadTimeoutException) with 6 occurrences migrated to:
https://www.w3.org/TR/2005/REC-xop10-20050125/ ([https](https://www.w3.org/TR/2005/REC-xop10-20050125/ ) result SSLException).
* [ ] http://www.w3.org/TR/eventsource/ (ReadTimeoutException) with 2 occurrences migrated to:
https://www.w3.org/TR/eventsource/ ([https](https://www.w3.org/TR/eventsource/ ) result SSLException).
* [ ] http://www.w3.org/TR/html4/loose.dtd (ReadTimeoutException) with 5 occurrences migrated to:
https://www.w3.org/TR/html4/loose.dtd ([https](https://www.w3.org/TR/html4/loose.dtd ) result SSLException).
* [ ] http://www.w3.org/TR/xhtml1/ (ReadTimeoutException) with 1 occurrences migrated to:
https://www.w3.org/TR/xhtml1/ ([https](https://www.w3.org/TR/xhtml1/ ) result SSLException).
* [ ] http://www.w3.org/TR/xhtml1/diffs.html (ReadTimeoutException) with 1 occurrences migrated to:
https://www.w3.org/TR/xhtml1/diffs.html ([https](https://www.w3.org/TR/xhtml1/diffs.html ) result SSLException).
* [ ] http://www.w3.org/TR/xhtml1/dtds.html (ReadTimeoutException) with 1 occurrences migrated to:
https://www.w3.org/TR/xhtml1/dtds.html ([https](https://www.w3.org/TR/xhtml1/dtds.html ) result SSLException).
* [ ] http://www.w3.org/XML/1998/namespace (ReadTimeoutException) with 5 occurrences migrated to:
https://www.w3.org/XML/1998/namespace ([https](https://www.w3.org/XML/1998/namespace ) result SSLException).
* [ ] http://Additional-namespace-name-URI (UnknownHostException) with 1 occurrences migrated to:
https://Additional-namespace-name-URI ([https](https://Additional-namespace-name-URI ) result UnknownHostException).
* [ ] http://DOMAIN2.com (UnknownHostException) with 2 occurrences migrated to:
https://DOMAIN2.com ([https](https://DOMAIN2.com ) result UnknownHostException).
* [ ] http://Default-namespace-name-URI (UnknownHostException) with 1 occurrences migrated to:
https://Default-namespace-name-URI ([https](https://Default-namespace-name-URI ) result UnknownHostException).
* [ ] http://HOST:8080/remoting/AccountService (UnknownHostException) with 1 occurrences migrated to:
https://HOST:8080/remoting/AccountService ([https](https://HOST:8080/remoting/AccountService ) result UnknownHostException).
* [ ] http://Namespace-name-URI (UnknownHostException) with 1 occurrences migrated to:
https://Namespace-name-URI ([https](https://Namespace-name-URI ) result UnknownHostException).
* [ ] http://Unbound-namespace-name-URI (UnknownHostException) with 1 occurrences migrated to:
https://Unbound-namespace-name-URI ([https](https://Unbound-namespace-name-URI ) result UnknownHostException).
* [ ] http://a.example.org/mvc-showcase (UnknownHostException) with 1 occurrences migrated to:
https://a.example.org/mvc-showcase ([https](https://a.example.org/mvc-showcase ) result UnknownHostException).
* [ ] http://anotherHost/mvc-showcase (UnknownHostException) with 1 occurrences migrated to:
https://anotherHost/mvc-showcase ([https](https://anotherHost/mvc-showcase ) result UnknownHostException).
* [ ] http://arjen:foobar@java.sun.com:80 (UnknownHostException) with 1 occurrences migrated to:
https://arjen:foobar@java.sun.com:80 ([https](https://arjen:foobar@java.sun.com:80 ) result UnknownHostException).
* [ ] http://barfoo:8888 (UnknownHostException) with 1 occurrences migrated to:
https://barfoo:8888 ([https](https://barfoo:8888 ) result UnknownHostException).
* [ ] http://dev.bar.com (UnknownHostException) with 3 occurrences migrated to:
https://dev.bar.com ([https](https://dev.bar.com ) result UnknownHostException).
* [ ] http://domain1.com (UnknownHostException) with 25 occurrences migrated to:
https://domain1.com ([https](https://domain1.com ) result UnknownHostException).
* [ ] http://domain1.com/test.html (UnknownHostException) with 4 occurrences migrated to:
https://domain1.com/test.html ([https](https://domain1.com/test.html ) result UnknownHostException).
* [ ] http://domain2.com (UnknownHostException) with 98 occurrences migrated to:
https://domain2.com ([https](https://domain2.com ) result UnknownHostException).
* [ ] http://example.com",HttpMethod.GET (UnknownHostException) with 6 occurrences migrated to:
https://example.com",HttpMethod.GET ([https](https://example.com",HttpMethod.GET ) result UnknownHostException).
* [ ] http://example/ (UnknownHostException) with 1 occurrences migrated to:
https://example/ ([https](https://example/ ) result UnknownHostException).
* [ ] http://fake-service (UnknownHostException) with 7 occurrences migrated to:
https://fake-service ([https](https://fake-service ) result UnknownHostException).
* [ ] http://foo (UnknownHostException) with 3 occurrences migrated to:
https://foo ([https](https://foo ) result UnknownHostException).
* [ ] http://foo.bar.com (UnknownHostException) with 4 occurrences migrated to:
https://foo.bar.com ([https](https://foo.bar.com ) result UnknownHostException).
* [ ] http://foobar:8088 (UnknownHostException) with 1 occurrences migrated to:
https://foobar:8088 ([https](https://foobar:8088 ) result UnknownHostException).
* [ ] http://host:port/myApp/myEndpoint/ (UnknownHostException) with 1 occurrences migrated to:
https://host:port/myApp/myEndpoint/ ([https](https://host:port/myApp/myEndpoint/ ) result UnknownHostException).
* [ ] http://jaxws.remoting.springframework.org/ (UnknownHostException) with 4 occurrences migrated to:
https://jaxws.remoting.springframework.org/ ([https](https://jaxws.remoting.springframework.org/ ) result UnknownHostException).
* [ ] http://joe.openid.example.org/ (UnknownHostException) with 2 occurrences migrated to:
https://joe.openid.example.org/ ([https](https://joe.openid.example.org/ ) result UnknownHostException).
* [ ] http://myserver (UnknownHostException) with 1 occurrences migrated to:
https://myserver ([https](https://myserver ) result UnknownHostException).
* [ ] http://myserver/logo.png (UnknownHostException) with 1 occurrences migrated to:
https://myserver/logo.png ([https](https://myserver/logo.png ) result UnknownHostException).
* [ ] http://myurl (UnknownHostException) with 12 occurrences migrated to:
https://myurl ([https](https://myurl ) result UnknownHostException).
* [ ] http://remotehost:8080/remoting/AccountService (UnknownHostException) with 2 occurrences migrated to:
https://remotehost:8080/remoting/AccountService ([https](https://remotehost:8080/remoting/AccountService ) result UnknownHostException).
* [ ] http://samples.springframework.org/order (UnknownHostException) with 2 occurrences migrated to:
https://samples.springframework.org/order ([https](https://samples.springframework.org/order ) result UnknownHostException).
* [ ] http://somethingDifferent (UnknownHostException) with 1 occurrences migrated to:
https://somethingDifferent ([https](https://somethingDifferent ) result UnknownHostException).
* [ ] http://url.somewhere.com (UnknownHostException) with 25 occurrences migrated to:
https://url.somewhere.com ([https](https://url.somewhere.com ) result UnknownHostException).
* [ ] http://url.somewhere.com/path (UnknownHostException) with 1 occurrences migrated to:
https://url.somewhere.com/path ([https](https://url.somewhere.com/path ) result UnknownHostException).
* [ ] http://url.somewhere.com/path?id=1 (UnknownHostException) with 1 occurrences migrated to:
https://url.somewhere.com/path?id=1 ([https](https://url.somewhere.com/path?id=1 ) result UnknownHostException).
* [ ] http://url.somewhere.com/test.htm (UnknownHostException) with 2 occurrences migrated to:
https://url.somewhere.com/test.htm ([https](https://url.somewhere.com/test.htm ) result UnknownHostException).
* [ ] http://url.somewhere.com?a=b&c=d (UnknownHostException) with 1 occurrences migrated to:
https://url.somewhere.com?a=b&c=d ([https](https://url.somewhere.com?a=b&c=d ) result UnknownHostException).
* [ ] http://url.somewhere.com?foo= (UnknownHostException) with 2 occurrences migrated to:
https://url.somewhere.com?foo= ([https](https://url.somewhere.com?foo= ) result UnknownHostException).
* [ ] http://url.somewhere.com?foo=bar (UnknownHostException) with 4 occurrences migrated to:
https://url.somewhere.com?foo=bar ([https](https://url.somewhere.com?foo=bar ) result UnknownHostException).
* [ ] http://url.somewhere.com?foo=bar&a=b&c=d (UnknownHostException) with 2 occurrences migrated to:
https://url.somewhere.com?foo=bar&a=b&c=d ([https](https://url.somewhere.com?foo=bar&a=b&c=d ) result UnknownHostException).
* [ ] http://wiki.fasterxml.com/JacksonHome (UnknownHostException) with 3 occurrences migrated to:
https://wiki.fasterxml.com/JacksonHome ([https](https://wiki.fasterxml.com/JacksonHome ) result UnknownHostException).
* [ ] http://wiki.fasterxml.com/JacksonJsonViews (UnknownHostException) with 4 occurrences migrated to:
https://wiki.fasterxml.com/JacksonJsonViews ([https](https://wiki.fasterxml.com/JacksonJsonViews ) result UnknownHostException).
* [ ] http://www (UnknownHostException) with 1 occurrences migrated to:
https://www ([https](https://www ) result UnknownHostException).
* [ ] http://x.y.z (UnknownHostException) with 2 occurrences migrated to:
https://x.y.z ([https](https://x.y.z ) result UnknownHostException).
* [ ] http://abc.com/v1 (301) with 1 occurrences migrated to:
https://abc.go.com/v1 ([https](https://abc.com/v1 ) result 404).
* [ ] http://abc.com/v1/accounts/43 (301) with 1 occurrences migrated to:
https://abc.go.com/v1/accounts/43 ([https](https://abc.com/v1/accounts/43 ) result 404).
* [ ] http://abc.com/v1/accounts?q=12 (301) with 1 occurrences migrated to:
https://abc.go.com/v1/accounts?q=12 ([https](https://abc.com/v1/accounts?q=12 ) result 404).
* [ ] http://apache.org/xml/features/disallow-doctype-decl (404) with 10 occurrences migrated to:
https://apache.org/xml/features/disallow-doctype-decl ([https](https://apache.org/xml/features/disallow-doctype-decl ) result 404).
* [ ] http://docs.spring.io/v1/bar (301) with 1 occurrences migrated to:
https://docs.spring.io/v1/bar ([https](https://docs.spring.io/v1/bar ) result 404).
* [ ] http://example.com/-foo (404) with 2 occurrences migrated to:
https://example.com/-foo ([https](https://example.com/-foo ) result 404).
* [ ] http://example.com/1 (404) with 1 occurrences migrated to:
https://example.com/1 ([https](https://example.com/1 ) result 404).
* [ ] http://example.com/1/2 (404) with 2 occurrences migrated to:
https://example.com/1/2 ([https](https://example.com/1/2 ) result 404).
* [ ] http://example.com/2 (404) with 1 occurrences migrated to:
https://example.com/2 ([https](https://example.com/2 ) result 404).
* [ ] http://example.com/a%20b?q=a%2Bb (404) with 1 occurrences migrated to:
https://example.com/a%20b?q=a%2Bb ([https](https://example.com/a%20b?q=a%2Bb ) result 404).
* [ ] http://example.com/abc/ (404) with 1 occurrences migrated to:
https://example.com/abc/ ([https](https://example.com/abc/ ) result 404).
* [ ] http://example.com/abc/x/y (404) with 1 occurrences migrated to:
https://example.com/abc/x/y ([https](https://example.com/abc/x/y ) result 404).
* [ ] http://example.com/abc/x/y/z (404) with 3 occurrences migrated to:
https://example.com/abc/x/y/z ([https](https://example.com/abc/x/y/z ) result 404).
* [ ] http://example.com/app/login/authenticate (404) with 1 occurrences migrated to:
https://example.com/app/login/authenticate ([https](https://example.com/app/login/authenticate ) result 404).
* [ ] http://example.com/arbitrary/path (404) with 1 occurrences migrated to:
https://example.com/arbitrary/path ([https](https://example.com/arbitrary/path ) result 404).
* [ ] http://example.com/bar (404) with 6 occurrences migrated to:
https://example.com/bar ([https](https://example.com/bar ) result 404).
* [ ] http://example.com/context.xml (404) with 4 occurrences migrated to:
https://example.com/context.xml ([https](https://example.com/context.xml ) result 404).
* [ ] http://example.com/example (404) with 6 occurrences migrated to:
https://example.com/example ([https](https://example.com/example ) result 404).
* [ ] http://example.com/example/?name (404) with 1 occurrences migrated to:
https://example.com/example/?name ([https](https://example.com/example/?name ) result 404).
* [ ] http://example.com/example/?name= (404) with 1 occurrences migrated to:
https://example.com/example/?name= ([https](https://example.com/example/?name= ) result 404).
* [ ] http://example.com/example/?name=%20 (404) with 1 occurrences migrated to:
https://example.com/example/?name=%20 ([https](https://example.com/example/?name=%20 ) result 404).
* [ ] http://example.com/example/?name=row%5B0%5D (404) with 1 occurrences migrated to:
https://example.com/example/?name=row%5B0%5D ([https](https://example.com/example/?name=row%5B0%5D ) result 404).
* [ ] http://example.com/example/?name=value (404) with 1 occurrences migrated to:
https://example.com/example/?name=value ([https](https://example.com/example/?name=value ) result 404).
* [ ] http://example.com/example/?name=value¶m2=value+2 (404) with 1 occurrences migrated to:
https://example.com/example/?name=value¶m2=value+2 ([https](https://example.com/example/?name=value¶m2=value+2 ) result 404).
* [ ] http://example.com/example/?row%5B0%5D=value (404) with 1 occurrences migrated to:
https://example.com/example/?row%5B0%5D=value ([https](https://example.com/example/?row%5B0%5D=value ) result 404).
* [ ] http://example.com/foo (404) with 7 occurrences migrated to:
https://example.com/foo ([https](https://example.com/foo ) result 404).
* [ ] http://example.com/foo/../bar (404) with 1 occurrences migrated to:
https://example.com/foo/../bar ([https](https://example.com/foo/../bar ) result 404).
* [ ] http://example.com/foo/foo2?bar (404) with 1 occurrences migrated to:
https://example.com/foo/foo2?bar ([https](https://example.com/foo/foo2?bar ) result 404).
* [ ] http://example.com/foo?bar (404) with 4 occurrences migrated to:
https://example.com/foo?bar ([https](https://example.com/foo?bar ) result 404).
* [ ] http://example.com/foo?bar= (404) with 2 occurrences migrated to:
https://example.com/foo?bar= ([https](https://example.com/foo?bar= ) result 404).
* [ ] http://example.com/foo?bar=baz (404) with 2 occurrences migrated to:
https://example.com/foo?bar=baz ([https](https://example.com/foo?bar=baz ) result 404).
* [ ] http://example.com/foo?baz=42 (404) with 1 occurrences migrated to:
https://example.com/foo?baz=42 ([https](https://example.com/foo?baz=42 ) result 404).
* [ ] http://example.com/foo?foo=bar&baz=qux (404) with 2 occurrences migrated to:
https://example.com/foo?foo=bar&baz=qux ([https](https://example.com/foo?foo=bar&baz=qux ) result 404).
* [ ] http://example.com/hotel (404) with 3 occurrences migrated to:
https://example.com/hotel ([https](https://example.com/hotel ) result 404).
* [ ] http://example.com/hotel%20list (404) with 1 occurrences migrated to:
https://example.com/hotel%20list ([https](https://example.com/hotel%20list ) result 404).
* [ ] http://example.com/hotel%20list/Z (404) with 1 occurrences migrated to:
https://example.com/hotel%20list/Z ([https](https://example.com/hotel%20list/Z ) result 404).
* [ ] http://example.com/hotel%20list/Z%C3%BCrich (404) with 3 occurrences migrated to:
https://example.com/hotel%20list/Z%C3%BCrich ([https](https://example.com/hotel%20list/Z%C3%BCrich ) result 404).
* [ ] http://example.com/hotels (404) with 3 occurrences migrated to:
https://example.com/hotels ([https](https://example.com/hotels ) result 404).
* [ ] http://example.com/hotels/ (404) with 15 occurrences migrated to:
https://example.com/hotels/ ([https](https://example.com/hotels/ ) result 404).
* [ ] http://example.com/hotels/1/bookings/42 (404) with 1 occurrences migrated to:
https://example.com/hotels/1/bookings/42 ([https](https://example.com/hotels/1/bookings/42 ) result 404).
* [ ] http://example.com/hotels/1/pic/pics%2Flogo.png/size/150x150 (404) with 2 occurrences migrated to:
https://example.com/hotels/1/pic/pics%2Flogo.png/size/150x150 ([https](https://example.com/hotels/1/pic/pics%2Flogo.png/size/150x150 ) result 404).
* [ ] http://example.com/hotels/1/pic/pics/logo.png (404) with 1 occurrences migrated to:
https://example.com/hotels/1/pic/pics/logo.png ([https](https://example.com/hotels/1/pic/pics/logo.png ) result 404).
* [ ] http://example.com/hotels/42/bookings/21 (404) with 1 occurrences migrated to:
https://example.com/hotels/42/bookings/21 ([https](https://example.com/hotels/42/bookings/21 ) result 404).
* [ ] http://example.com/hotels/42/bookings/42 (404) with 1 occurrences migrated to:
https://example.com/hotels/42/bookings/42 ([https](https://example.com/hotels/42/bookings/42 ) result 404).
* [ ] http://example.com/hotels/Rest%20%26%20Relax/bookings/42 (404) with 2 occurrences migrated to:
https://example.com/hotels/Rest%20%26%20Relax/bookings/42 ([https](https://example.com/hotels/Rest%20%26%20Relax/bookings/42 ) result 404).
* [ ] http://example.com/info (404) with 2 occurrences migrated to:
https://example.com/info ([https](https://example.com/info ) result 404).
* [ ] http://example.com/invalid (404) with 1 occurrences migrated to:
https://example.com/invalid ([https](https://example.com/invalid ) result 404).
* [ ] http://example.com/jquery-1.11.0.min.js (404) with 2 occurrences migrated to:
https://example.com/jquery-1.11.0.min.js ([https](https://example.com/jquery-1.11.0.min.js ) result 404).
* [ ] http://example.com/match (404) with 1 occurrences migrated to:
https://example.com/match ([https](https://example.com/match ) result 404).
* [ ] http://example.com/myFileUpload (404) with 1 occurrences migrated to:
https://example.com/myFileUpload ([https](https://example.com/myFileUpload ) result 404).
* [ ] http://example.com/myForm (404) with 1 occurrences migrated to:
https://example.com/myForm ([https](https://example.com/myForm ) result 404).
* [ ] http://example.com/path (404) with 4 occurrences migrated to:
https://example.com/path ([https](https://example.com/path ) result 404).
* [ ] http://example.com/path?query (404) with 2 occurrences migrated to:
https://example.com/path?query ([https](https://example.com/path?query ) result 404).
* [ ] http://example.com/path?query=foo (404) with 1 occurrences migrated to:
https://example.com/path?query=foo ([https](https://example.com/path?query=foo ) result 404).
* [ ] http://example.com/people (404) with 1 occurrences migrated to:
https://example.com/people ([https](https://example.com/people ) result 404).
* [ ] http://example.com/people/ (404) with 1 occurrences migrated to:
https://example.com/people/ ([https](https://example.com/people/ ) result 404).
* [ ] http://example.com/prefix/path (404) with 2 occurrences migrated to:
https://example.com/prefix/path ([https](https://example.com/prefix/path ) result 404).
* [ ] http://example.com/resource (404) with 5 occurrences migrated to:
https://example.com/resource ([https](https://example.com/resource ) result 404).
* [ ] http://example.com/resource?access_token=123 (404) with 1 occurrences migrated to:
https://example.com/resource?access_token=123 ([https](https://example.com/resource?access_token=123 ) result 404).
* [ ] http://example.com/spaces (404) with 1 occurrences migrated to:
https://example.com/spaces ([https](https://example.com/spaces ) result 404).
* [ ] http://example.com/spaces%20and%20%E2%82%AC (404) with 3 occurrences migrated to:
https://example.com/spaces%20and%20%E2%82%AC ([https](https://example.com/spaces%20and%20%E2%82%AC ) result 404).
* [ ] http://example.com/spring/ (404) with 1 occurrences migrated to:
https://example.com/spring/ ([https](https://example.com/spring/ ) result 404).
* [ ] http://example.com/test/this/here (404) with 1 occurrences migrated to:
https://example.com/test/this/here ([https](https://example.com/test/this/here ) result 404).
* [ ] http://example.com/upload (404) with 1 occurrences migrated to:
https://example.com/upload ([https](https://example.com/upload ) result 404).
* [ ] http://example.com/user (404) with 1 occurrences migrated to:
https://example.com/user ([https](https://example.com/user ) result 404).
* [ ] http://example.org/fonts/css (404) with 6 occurrences migrated to:
https://example.org/fonts/css ([https](https://example.org/fonts/css ) result 404).
* [ ] http://example.org/foo/page.html (404) with 1 occurrences migrated to:
https://example.org/foo/page.html ([https](https://example.org/foo/page.html ) result 404).
* [ ] http://example.org/image.png (404) with 4 occurrences migrated to:
https://example.org/image.png ([https](https://example.org/image.png ) result 404).
* [ ] http://example.org/music/people (404) with 4 occurrences migrated to:
https://example.org/music/people ([https](https://example.org/music/people ) result 404).
* [ ] http://example.org/page.cache.html (404) with 1 occurrences migrated to:
https://example.org/page.cache.html ([https](https://example.org/page.cache.html ) result 404).
* [ ] http://example.org/path (404) with 3 occurrences migrated to:
https://example.org/path ([https](https://example.org/path ) result 404).
* [ ] http://springframework.org/oxm-test (404) with 2 occurrences migrated to:
https://springframework.org/oxm-test ([https](https://springframework.org/oxm-test ) result 404).
* [ ] http://www.example.com/favicon.ico (404) with 2 occurrences migrated to:
https://www.example.com/favicon.ico ([https](https://www.example.com/favicon.ico ) result 404).
* [ ] http://www.example.com/foo/bar (404) with 1 occurrences migrated to:
https://www.example.com/foo/bar ([https](https://www.example.com/foo/bar ) result 404).
* [ ] http://www.example.com/hotels (404) with 2 occurrences migrated to:
https://www.example.com/hotels ([https](https://www.example.com/hotels ) result 404).
* [ ] http://www.example.com/user/ (404) with 4 occurrences migrated to:
https://www.example.com/user/ ([https](https://www.example.com/user/ ) result 404).
* [ ] http://www.example.com/user/john%3Bdoe/dashboard (404) with 4 occurrences migrated to:
https://www.example.com/user/john%3Bdoe/dashboard ([https](https://www.example.com/user/john%3Bdoe/dashboard ) result 404).
* [ ] http://www.example.com/user/john;doe/dashboard (404) with 2 occurrences migrated to:
https://www.example.com/user/john;doe/dashboard ([https](https://www.example.com/user/john;doe/dashboard ) result 404).
* [ ] http://www.ibm.com/developerworks/websphere/library/techarticles/0404_tang/0404_tang.html (301) with 1 occurrences migrated to:
https://www.ibm.com/developerworks/websphere/library/techarticles/0404_tang/0404_tang.html ([https](https://www.ibm.com/developerworks/websphere/library/techarticles/0404_tang/0404_tang.html ) result 404).
* [ ] http://mydomain1.com:80/path (301) with 2 occurrences migrated to:
https://www.mydomain1.com/path ([https](https://mydomain1.com:80/path ) result 404).
* [ ] http://www.quartz-scheduler.org/documentation/quartz-2.1.x/tutorials/tutorial-lesson-03 (404) with 1 occurrences migrated to:
https://www.quartz-scheduler.org/documentation/quartz-2.1.x/tutorials/tutorial-lesson-03 ([https](https://www.quartz-scheduler.org/documentation/quartz-2.1.x/tutorials/tutorial-lesson-03 ) result 404).
* [ ] http://www.utoronto.ca/webdocs/HTMLdocs/Book/Book-3ed/appb/mimetype.html (301) with 1 occurrences migrated to:
https://www.utoronto.ca/webdocs/HTMLdocs/Book/Book-3ed/appb/mimetype.html ([https](https://www.utoronto.ca/webdocs/HTMLdocs/Book/Book-3ed/appb/mimetype.html ) result 404).
* [ ] http://xml.apache.org/xslt (404) with 3 occurrences migrated to:
https://xml.apache.org/xslt ([https](https://xml.apache.org/xslt ) result 404).
* [ ] http://myhost.com/resource/path/myTemplate.txt (500) with 1 occurrences migrated to:
https://myhost.com/resource/path/myTemplate.txt ([https](https://myhost.com/resource/path/myTemplate.txt ) result 500).
* [ ] http://myhost.com/some/arbitrary/path (500) with 1 occurrences migrated to:
https://myhost.com/some/arbitrary/path ([https](https://myhost.com/some/arbitrary/path ) result 500).
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.
* [ ] http://activemq.apache.org/delete-inactive-destinations.html with 1 occurrences migrated to:
https://activemq.apache.org/delete-inactive-destinations.html ([https](https://activemq.apache.org/delete-inactive-destinations.html ) result 200).
* [ ] http://activemq.apache.org/stomp.html with 1 occurrences migrated to:
https://activemq.apache.org/stomp.html ([https](https://activemq.apache.org/stomp.html ) result 200).
* [ ] http://ant.apache.org with 1 occurrences migrated to:
https://ant.apache.org ([https](https://ant.apache.org ) result 200).
* [ ] http://asciidoctor.org/ with 1 occurrences migrated to:
https://asciidoctor.org/ ([https](https://asciidoctor.org/ ) result 200).
* [ ] http://asciidoctor.org/docs/editing-asciidoc-with-live-preview/ with 2 occurrences migrated to:
https://asciidoctor.org/docs/editing-asciidoc-with-live-preview/ ([https](https://asciidoctor.org/docs/editing-asciidoc-with-live-preview/ ) result 200).
* [ ] http://beanvalidation.org/ with 1 occurrences migrated to:
https://beanvalidation.org/ ([https](https://beanvalidation.org/ ) result 200).
* [ ] http://caniuse.com/ with 2 occurrences migrated to:
https://caniuse.com/ ([https](https://caniuse.com/ ) result 200).
* [ ] http://cbor.io/ with 1 occurrences migrated to:
https://cbor.io/ ([https](https://cbor.io/ ) result 200).
* [ ] http://code.jquery.com/jquery-1.11.0.min.js with 2 occurrences migrated to:
https://code.jquery.com/jquery-1.11.0.min.js ([https](https://code.jquery.com/jquery-1.11.0.min.js ) result 200).
* [ ] http://code.jquery.com/jquery.js with 1 occurrences migrated to:
https://code.jquery.com/jquery.js ([https](https://code.jquery.com/jquery.js ) result 200).
* [ ] http://commons.apache.org/proper/commons-lang/ with 2 occurrences migrated to:
https://commons.apache.org/proper/commons-lang/ ([https](https://commons.apache.org/proper/commons-lang/ ) result 200).
* [ ] http://docs.oracle.com/javase/6/docs/api/java/lang/instrument/package-summary.html with 1 occurrences migrated to:
https://docs.oracle.com/javase/6/docs/api/java/lang/instrument/package-summary.html ([https](https://docs.oracle.com/javase/6/docs/api/java/lang/instrument/package-summary.html ) result 200).
* [ ] http://docs.oracle.com/javase/8/docs/api/java/beans/package-summary.html with 1 occurrences migrated to:
https://docs.oracle.com/javase/8/docs/api/java/beans/package-summary.html ([https](https://docs.oracle.com/javase/8/docs/api/java/beans/package-summary.html ) result 200).
* [ ] http://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html with 1 occurrences migrated to:
https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html ([https](https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html ) result 200).
* [ ] http://docs.oracle.com/javase/8/docs/api/java/lang/instrument/package-summary.html with 1 occurrences migrated to:
https://docs.oracle.com/javase/8/docs/api/java/lang/instrument/package-summary.html ([https](https://docs.oracle.com/javase/8/docs/api/java/lang/instrument/package-summary.html ) result 200).
* [ ] http://docs.oracle.com/javase/8/docs/api/javax/script/ScriptEngineFactory.html with 2 occurrences migrated to:
https://docs.oracle.com/javase/8/docs/api/javax/script/ScriptEngineFactory.html ([https](https://docs.oracle.com/javase/8/docs/api/javax/script/ScriptEngineFactory.html ) result 200).
* [ ] http://docs.oracle.com/javase/tutorial/javabeans/advanced/customization.html with 1 occurrences migrated to:
https://docs.oracle.com/javase/tutorial/javabeans/advanced/customization.html ([https](https://docs.oracle.com/javase/tutorial/javabeans/advanced/customization.html ) result 200).
* [ ] http://docs.oracle.com/javase/tutorial/javabeans/writing/properties.html with 1 occurrences migrated to:
https://docs.oracle.com/javase/tutorial/javabeans/writing/properties.html ([https](https://docs.oracle.com/javase/tutorial/javabeans/writing/properties.html ) result 200).
* [ ] http://docs.seleniumhq.org/ with 1 occurrences migrated to:
https://docs.seleniumhq.org/ ([https](https://docs.seleniumhq.org/ ) result 200).
* [ ] http://docs.seleniumhq.org/projects/webdriver/ with 1 occurrences migrated to:
https://docs.seleniumhq.org/projects/webdriver/ ([https](https://docs.seleniumhq.org/projects/webdriver/ ) result 200).
* [ ] http://docs.spring.io/spring-framework/docs/current/javadoc-api/ with 1 occurrences migrated to:
https://docs.spring.io/spring-framework/docs/current/javadoc-api/ ([https](https://docs.spring.io/spring-framework/docs/current/javadoc-api/ ) result 200).
* [ ] http://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/web/servlet/view/script/ScriptTemplateView.html with 1 occurrences migrated to:
https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/web/servlet/view/script/ScriptTemplateView.html ([https](https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/web/servlet/view/script/ScriptTemplateView.html ) result 200).
* [ ] http://docs.spring.io/spring-framework/docs/current/spring-framework-reference/ with 1 occurrences migrated to:
https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/ ([https](https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/ ) result 200).
* [ ] http://docs.spring.io/spring-session/docs/current/reference/html5/ with 1 occurrences migrated to:
https://docs.spring.io/spring-session/docs/current/reference/html5/ ([https](https://docs.spring.io/spring-session/docs/current/reference/html5/ ) result 200).
* [ ] http://en.wikipedia.org/wiki/Adapter_pattern with 1 occurrences migrated to:
https://en.wikipedia.org/wiki/Adapter_pattern ([https](https://en.wikipedia.org/wiki/Adapter_pattern ) result 200).
* [ ] http://en.wikipedia.org/wiki/Halting_Problem with 1 occurrences migrated to:
https://en.wikipedia.org/wiki/Halting_Problem ([https](https://en.wikipedia.org/wiki/Halting_Problem ) result 200).
* [ ] http://en.wikipedia.org/wiki/List_of_HTTP_status_codes with 1 occurrences migrated to:
https://en.wikipedia.org/wiki/List_of_HTTP_status_codes ([https](https://en.wikipedia.org/wiki/List_of_HTTP_status_codes ) result 200).
* [ ] http://en.wikipedia.org/wiki/MIME with 1 occurrences migrated to:
https://en.wikipedia.org/wiki/MIME ([https](https://en.wikipedia.org/wiki/MIME ) result 200).
* [ ] http://en.wikipedia.org/wiki/Mock_Object with 1 occurrences migrated to:
https://en.wikipedia.org/wiki/Mock_Object ([https](https://en.wikipedia.org/wiki/Mock_Object ) result 200).
* [ ] http://en.wikipedia.org/wiki/Polyfill with 2 occurrences migrated to:
https://en.wikipedia.org/wiki/Polyfill ([https](https://en.wikipedia.org/wiki/Polyfill ) result 200).
* [ ] http://example.com with 150 occurrences migrated to:
https://example.com ([https](https://example.com ) result 200).
* [ ] http://example.com/ with 16 occurrences migrated to:
https://example.com/ ([https](https://example.com/ ) result 200).
* [ ] http://example.com?foo with 2 occurrences migrated to:
https://example.com?foo ([https](https://example.com?foo ) result 200).
* [ ] http://example.com?foo=bar with 8 occurrences migrated to:
https://example.com?foo=bar ([https](https://example.com?foo=bar ) result 200).
* [ ] http://example.com?foo=bar@baz with 1 occurrences migrated to:
https://example.com?foo=bar@baz ([https](https://example.com?foo=bar@baz ) result 200).
* [ ] http://example.org with 18 occurrences migrated to:
https://example.org ([https](https://example.org ) result 200).
* [ ] http://example.org/ with 1 occurrences migrated to:
https://example.org/ ([https](https://example.org/ ) result 200).
* [ ] http://fasterxml.github.io/jackson-databind/javadoc/2.6/com/fasterxml/jackson/databind/DeserializationFeature.html with 2 occurrences migrated to:
https://fasterxml.github.io/jackson-databind/javadoc/2.6/com/fasterxml/jackson/databind/DeserializationFeature.html ([https](https://fasterxml.github.io/jackson-databind/javadoc/2.6/com/fasterxml/jackson/databind/DeserializationFeature.html ) result 200).
* [ ] http://fasterxml.github.io/jackson-databind/javadoc/2.6/com/fasterxml/jackson/databind/MapperFeature.html with 2 occurrences migrated to:
https://fasterxml.github.io/jackson-databind/javadoc/2.6/com/fasterxml/jackson/databind/MapperFeature.html ([https](https://fasterxml.github.io/jackson-databind/javadoc/2.6/com/fasterxml/jackson/databind/MapperFeature.html ) result 200).
* [ ] http://h2database.com with 1 occurrences migrated to:
https://h2database.com ([https](https://h2database.com ) result 200).
* [ ] http://handlebarsjs.com with 2 occurrences migrated to:
https://handlebarsjs.com ([https](https://handlebarsjs.com ) result 200).
* [ ] http://handlebarsjs.com/ with 2 occurrences migrated to:
https://handlebarsjs.com/ ([https](https://handlebarsjs.com/ ) result 200).
* [ ] http://hc.apache.org/httpcomponents-asyncclient-dev/ with 1 occurrences migrated to:
https://hc.apache.org/httpcomponents-asyncclient-dev/ ([https](https://hc.apache.org/httpcomponents-asyncclient-dev/ ) result 200).
* [ ] http://hc.apache.org/httpcomponents-client-ga/ with 2 occurrences migrated to:
https://hc.apache.org/httpcomponents-client-ga/ ([https](https://hc.apache.org/httpcomponents-client-ga/ ) result 200).
* [ ] http://hc.apache.org/httpcomponents-client-ga/httpclient/ with 1 occurrences migrated to:
https://hc.apache.org/httpcomponents-client-ga/httpclient/ ([https](https://hc.apache.org/httpcomponents-client-ga/httpclient/ ) result 200).
* [ ] http://www.hibernate.org/ (301) with 1 occurrences migrated to:
https://hibernate.org/ ([https](https://www.hibernate.org/ ) result 200).
* [ ] http://www.hibernate.org (301) with 1 occurrences migrated to:
https://hibernate.org/ ([https](https://www.hibernate.org ) result 200).
* [ ] http://jcp.org/aboutJava/communityprocess/final/jsr003/index3.html with 1 occurrences migrated to:
https://jcp.org/aboutJava/communityprocess/final/jsr003/index3.html ([https](https://jcp.org/aboutJava/communityprocess/final/jsr003/index3.html ) result 200).
* [ ] http://jcp.org/aboutJava/communityprocess/final/jsr160/index.html with 1 occurrences migrated to:
https://jcp.org/aboutJava/communityprocess/final/jsr160/index.html ([https](https://jcp.org/aboutJava/communityprocess/final/jsr160/index.html ) result 200).
* [ ] http://jcp.org/en/jsr/detail?id=107 with 1 occurrences migrated to:
https://jcp.org/en/jsr/detail?id=107 ([https](https://jcp.org/en/jsr/detail?id=107 ) result 200).
* [ ] http://joel-costigliola.github.io/assertj/ with 3 occurrences migrated to:
https://joel-costigliola.github.io/assertj/ ([https](https://joel-costigliola.github.io/assertj/ ) result 200).
* [ ] http://jsonassert.skyscreamer.org with 1 occurrences migrated to:
https://jsonassert.skyscreamer.org ([https](https://jsonassert.skyscreamer.org ) result 200).
* [ ] http://jsonassert.skyscreamer.org/ with 5 occurrences migrated to:
https://jsonassert.skyscreamer.org/ ([https](https://jsonassert.skyscreamer.org/ ) result 200).
* [ ] http://junit.org/junit5/docs/current/user-guide/ with 2 occurrences migrated to:
https://junit.org/junit5/docs/current/user-guide/ ([https](https://junit.org/junit5/docs/current/user-guide/ ) result 200).
* [ ] http://kotlinlang.org/ with 2 occurrences migrated to:
https://kotlinlang.org/ ([https](https://kotlinlang.org/ ) result 200).
* [ ] http://kotlinlang.org/docs/reference/ with 1 occurrences migrated to:
https://kotlinlang.org/docs/reference/ ([https](https://kotlinlang.org/docs/reference/ ) result 200).
* [ ] http://kotlinlang.org/docs/reference/classes.html with 3 occurrences migrated to:
https://kotlinlang.org/docs/reference/classes.html ([https](https://kotlinlang.org/docs/reference/classes.html ) result 200).
* [ ] http://mydomain.com with 5 occurrences migrated to:
https://mydomain.com ([https](https://mydomain.com ) result 200).
* [ ] http://netty.io/ with 1 occurrences migrated to:
https://netty.io/ ([https](https://netty.io/ ) result 200).
* [ ] http://openjdk.java.net/jeps/290 with 1 occurrences migrated to:
https://openjdk.java.net/jeps/290 ([https](https://openjdk.java.net/jeps/290 ) result 200).
* [ ] http://openjdk.java.net/projects/nashorn/ with 10 occurrences migrated to:
https://openjdk.java.net/projects/nashorn/ ([https](https://openjdk.java.net/projects/nashorn/ ) result 200).
* [ ] http://pivotal.io/security/cve-2015-5211 with 1 occurrences migrated to:
https://pivotal.io/security/cve-2015-5211 ([https](https://pivotal.io/security/cve-2015-5211 ) result 200).
* [ ] http://poi.apache.org with 3 occurrences migrated to:
https://poi.apache.org ([https](https://poi.apache.org ) result 200).
* [ ] http://projects.spring.io/spring-boot/ with 1 occurrences migrated to:
https://projects.spring.io/spring-boot/ ([https](https://projects.spring.io/spring-boot/ ) result 200).
* [ ] http://projects.spring.io/spring-data/ with 1 occurrences migrated to:
https://projects.spring.io/spring-data/ ([https](https://projects.spring.io/spring-data/ ) result 200).
* [ ] http://projects.spring.io/spring-framework/ with 1 occurrences migrated to:
https://projects.spring.io/spring-framework/ ([https](https://projects.spring.io/spring-framework/ ) result 200).
* [ ] http://projects.spring.io/spring-integration/ with 1 occurrences migrated to:
https://projects.spring.io/spring-integration/ ([https](https://projects.spring.io/spring-integration/ ) result 200).
* [ ] http://projects.spring.io/spring-security/ with 3 occurrences migrated to:
https://projects.spring.io/spring-security/ ([https](https://projects.spring.io/spring-security/ ) result 200).
* [ ] http://repo1.maven.org/maven2/javax/inject/javax.inject/1/ with 2 occurrences migrated to:
https://repo1.maven.org/maven2/javax/inject/javax.inject/1/ ([https](https://repo1.maven.org/maven2/javax/inject/javax.inject/1/ ) result 200).
* [ ] http://schema.spring.io/mvc/spring-mvc.xsd with 1 occurrences migrated to:
https://schema.spring.io/mvc/spring-mvc.xsd ([https](https://schema.spring.io/mvc/spring-mvc.xsd ) result 200).
* [ ] http://search.maven.org/ with 2 occurrences migrated to:
https://search.maven.org/ ([https](https://search.maven.org/ ) result 200).
* [ ] http://sockjs.github.io/sockjs-protocol/sockjs-protocol-0.3.3.html with 3 occurrences migrated to:
https://sockjs.github.io/sockjs-protocol/sockjs-protocol-0.3.3.html ([https](https://sockjs.github.io/sockjs-protocol/sockjs-protocol-0.3.3.html ) result 200).
* [ ] http://sourceforge.net with 1 occurrences migrated to:
https://sourceforge.net ([https](https://sourceforge.net ) result 200).
* [ ] http://sourceforge.net/projects/javadiff/ with 1 occurrences migrated to:
https://sourceforge.net/projects/javadiff/ ([https](https://sourceforge.net/projects/javadiff/ ) result 200).
* [ ] http://sourceforge.net/sflogo.php?group_id=37160 with 1 occurrences migrated to:
https://sourceforge.net/sflogo.php?group_id=37160 ([https](https://sourceforge.net/sflogo.php?group_id=37160 ) result 200).
* [ ] http://spring.io/blog/ with 1 occurrences migrated to:
https://spring.io/blog/ ([https](https://spring.io/blog/ ) result 200).
* [ ] http://spring.io/blog/category/news with 1 occurrences migrated to:
https://spring.io/blog/category/news ([https](https://spring.io/blog/category/news ) result 200).
* [ ] http://square.github.io/okhttp/ with 1 occurrences migrated to:
https://square.github.io/okhttp/ ([https](https://square.github.io/okhttp/ ) result 200).
* [ ] http://stackoverflow.com/questions/1481251/what-does-document-domain-document-domain-do with 1 occurrences migrated to:
https://stackoverflow.com/questions/1481251/what-does-document-domain-document-domain-do ([https](https://stackoverflow.com/questions/1481251/what-does-document-domain-document-domain-do ) result 200).
* [ ] http://stackoverflow.com/questions/19394570/java-jre-7u45-breaks-classloader-getresources with 2 occurrences migrated to:
https://stackoverflow.com/questions/19394570/java-jre-7u45-breaks-classloader-getresources ([https](https://stackoverflow.com/questions/19394570/java-jre-7u45-breaks-classloader-getresources ) result 200).
* [ ] http://stackoverflow.com/questions/22986109/testing-spring-managed-servlet with 1 occurrences migrated to:
https://stackoverflow.com/questions/22986109/testing-spring-managed-servlet ([https](https://stackoverflow.com/questions/22986109/testing-spring-managed-servlet ) result 200).
* [ ] http://stackoverflow.com/questions/24725438/what-could-cause-a-class-implementing-applicationlistenercontextrefreshedevent with 1 occurrences migrated to:
https://stackoverflow.com/questions/24725438/what-could-cause-a-class-implementing-applicationlistenercontextrefreshedevent ([https](https://stackoverflow.com/questions/24725438/what-could-cause-a-class-implementing-applicationlistenercontextrefreshedevent ) result 200).
* [ ] http://stackoverflow.com/questions/35733344/can-contextconfiguration-in-a-custom-annotation-be-merged with 1 occurrences migrated to:
https://stackoverflow.com/questions/35733344/can-contextconfiguration-in-a-custom-annotation-be-merged ([https](https://stackoverflow.com/questions/35733344/can-contextconfiguration-in-a-custom-annotation-be-merged ) result 200).
* [ ] http://start.spring.io/ with 2 occurrences migrated to:
https://start.spring.io/ ([https](https://start.spring.io/ ) result 200).
* [ ] http://stas-blogspot.blogspot.com/2010/03/java-bridge-methods-explained.html with 1 occurrences migrated to:
https://stas-blogspot.blogspot.com/2010/03/java-bridge-methods-explained.html ([https](https://stas-blogspot.blogspot.com/2010/03/java-bridge-methods-explained.html ) result 200).
* [ ] http://stomp.github.io/stomp-specification-1.2.html with 9 occurrences migrated to:
https://stomp.github.io/stomp-specification-1.2.html ([https](https://stomp.github.io/stomp-specification-1.2.html ) result 200).
* [ ] http://struts.apache.org with 1 occurrences migrated to:
https://struts.apache.org ([https](https://struts.apache.org ) result 200).
* [ ] http://struts.apache.org/ with 1 occurrences migrated to:
https://struts.apache.org/ ([https](https://struts.apache.org/ ) result 200).
* [ ] http://tapestry.apache.org/ with 2 occurrences migrated to:
https://tapestry.apache.org/ ([https](https://tapestry.apache.org/ ) result 200).
* [ ] http://tiles.apache.org with 4 occurrences migrated to:
https://tiles.apache.org ([https](https://tiles.apache.org ) result 200).
* [ ] http://tiles.apache.org/framework/dependency-management.html with 1 occurrences migrated to:
https://tiles.apache.org/framework/dependency-management.html ([https](https://tiles.apache.org/framework/dependency-management.html ) result 200).
* [ ] http://tomcat.apache.org/ with 1 occurrences migrated to:
https://tomcat.apache.org/ ([https](https://tomcat.apache.org/ ) result 200).
* [ ] http://tools.ietf.org/html/rfc1945 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc1945 ([https](https://tools.ietf.org/html/rfc1945 ) result 200).
* [ ] http://tools.ietf.org/html/rfc2109 with 2 occurrences migrated to:
https://tools.ietf.org/html/rfc2109 ([https](https://tools.ietf.org/html/rfc2109 ) result 200).
* [ ] http://tools.ietf.org/html/rfc2295 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc2295 ([https](https://tools.ietf.org/html/rfc2295 ) result 200).
* [ ] http://tools.ietf.org/html/rfc2324 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc2324 ([https](https://tools.ietf.org/html/rfc2324 ) result 200).
* [ ] http://tools.ietf.org/html/rfc2518 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc2518 ([https](https://tools.ietf.org/html/rfc2518 ) result 200).
* [ ] http://tools.ietf.org/html/rfc2616 with 3 occurrences migrated to:
https://tools.ietf.org/html/rfc2616 ([https](https://tools.ietf.org/html/rfc2616 ) result 200).
* [ ] http://tools.ietf.org/html/rfc2774 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc2774 ([https](https://tools.ietf.org/html/rfc2774 ) result 200).
* [ ] http://tools.ietf.org/html/rfc2817 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc2817 ([https](https://tools.ietf.org/html/rfc2817 ) result 200).
* [ ] http://tools.ietf.org/html/rfc2965 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc2965 ([https](https://tools.ietf.org/html/rfc2965 ) result 200).
* [ ] http://tools.ietf.org/html/rfc3229 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc3229 ([https](https://tools.ietf.org/html/rfc3229 ) result 200).
* [ ] http://tools.ietf.org/html/rfc3986 with 4 occurrences migrated to:
https://tools.ietf.org/html/rfc3986 ([https](https://tools.ietf.org/html/rfc3986 ) result 200).
* [ ] http://tools.ietf.org/html/rfc4918 with 5 occurrences migrated to:
https://tools.ietf.org/html/rfc4918 ([https](https://tools.ietf.org/html/rfc4918 ) result 200).
* [ ] http://tools.ietf.org/html/rfc5842 with 2 occurrences migrated to:
https://tools.ietf.org/html/rfc5842 ([https](https://tools.ietf.org/html/rfc5842 ) result 200).
* [ ] http://tools.ietf.org/html/rfc5988 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc5988 ([https](https://tools.ietf.org/html/rfc5988 ) result 200).
* [ ] http://tools.ietf.org/html/rfc6266 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc6266 ([https](https://tools.ietf.org/html/rfc6266 ) result 200).
* [ ] http://tools.ietf.org/html/rfc6454 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc6454 ([https](https://tools.ietf.org/html/rfc6454 ) result 200).
* [ ] http://tools.ietf.org/html/rfc6455 with 2 occurrences migrated to:
https://tools.ietf.org/html/rfc6455 ([https](https://tools.ietf.org/html/rfc6455 ) result 200).
* [ ] http://tools.ietf.org/html/rfc6585 with 4 occurrences migrated to:
https://tools.ietf.org/html/rfc6585 ([https](https://tools.ietf.org/html/rfc6585 ) result 200).
* [ ] http://tools.ietf.org/html/rfc7230 with 10 occurrences migrated to:
https://tools.ietf.org/html/rfc7230 ([https](https://tools.ietf.org/html/rfc7230 ) result 200).
* [ ] http://tools.ietf.org/html/rfc7231 with 56 occurrences migrated to:
https://tools.ietf.org/html/rfc7231 ([https](https://tools.ietf.org/html/rfc7231 ) result 200).
* [ ] http://tools.ietf.org/html/rfc7232 with 8 occurrences migrated to:
https://tools.ietf.org/html/rfc7232 ([https](https://tools.ietf.org/html/rfc7232 ) result 200).
* [ ] http://tools.ietf.org/html/rfc7233 with 12 occurrences migrated to:
https://tools.ietf.org/html/rfc7233 ([https](https://tools.ietf.org/html/rfc7233 ) result 200).
* [ ] http://tools.ietf.org/html/rfc7234 with 5 occurrences migrated to:
https://tools.ietf.org/html/rfc7234 ([https](https://tools.ietf.org/html/rfc7234 ) result 200).
* [ ] http://tools.ietf.org/html/rfc7235 with 6 occurrences migrated to:
https://tools.ietf.org/html/rfc7235 ([https](https://tools.ietf.org/html/rfc7235 ) result 200).
* [ ] http://tools.ietf.org/html/rfc7238 with 1 occurrences migrated to:
https://tools.ietf.org/html/rfc7238 ([https](https://tools.ietf.org/html/rfc7238 ) result 200).
* [ ] http://tools.ietf.org/rfcdiff?difftype=--hwdiff&url2=draft-ietf-webdav-protocol-06.txt with 3 occurrences migrated to:
https://tools.ietf.org/rfcdiff?difftype=--hwdiff&url2=draft-ietf-webdav-protocol-06.txt ([https](https://tools.ietf.org/rfcdiff?difftype=--hwdiff&url2=draft-ietf-webdav-protocol-06.txt ) result 200).
* [ ] http://www.amazon.com/exec/obidos/tg/detail/-/0764543857/ with 10 occurrences migrated to:
https://www.amazon.com/exec/obidos/tg/detail/-/0764543857/ ([https](https://www.amazon.com/exec/obidos/tg/detail/-/0764543857/ ) result 200).
* [ ] http://www.apache.org with 1 occurrences migrated to:
https://www.apache.org ([https](https://www.apache.org ) result 200).
* [ ] http://www.apple.com/DTDs/PropertyList-1.0.dtd with 6 occurrences migrated to:
https://www.apple.com/DTDs/PropertyList-1.0.dtd ([https](https://www.apple.com/DTDs/PropertyList-1.0.dtd ) result 200).
* [ ] http://www.atomikos.com/ with 1 occurrences migrated to:
https://www.atomikos.com/ ([https](https://www.atomikos.com/ ) result 200).
* [ ] http://www.baeldung.com/kotlin-null-safety with 1 occurrences migrated to:
https://www.baeldung.com/kotlin-null-safety ([https](https://www.baeldung.com/kotlin-null-safety ) result 200).
* [ ] http://www.eclipse.org/ajdt/ with 1 occurrences migrated to:
https://www.eclipse.org/ajdt/ ([https](https://www.eclipse.org/ajdt/ ) result 200).
* [ ] http://www.eclipse.org/aspectj/doc/next/progguide/index.html with 1 occurrences migrated to:
https://www.eclipse.org/aspectj/doc/next/progguide/index.html ([https](https://www.eclipse.org/aspectj/doc/next/progguide/index.html ) result 200).
* [ ] http://www.eclipse.org/aspectj/doc/next/progguide/semantics-joinPoints.html with 1 occurrences migrated to:
https://www.eclipse.org/aspectj/doc/next/progguide/semantics-joinPoints.html ([https](https://www.eclipse.org/aspectj/doc/next/progguide/semantics-joinPoints.html ) result 200).
* [ ] http://www.eclipse.org/aspectj/doc/released/adk15notebook/index.html with 1 occurrences migrated to:
https://www.eclipse.org/aspectj/doc/released/adk15notebook/index.html ([https](https://www.eclipse.org/aspectj/doc/released/adk15notebook/index.html ) result 200).
* [ ] http://www.eclipse.org/aspectj/doc/released/devguide/antTasks.html with 1 occurrences migrated to:
https://www.eclipse.org/aspectj/doc/released/devguide/antTasks.html ([https](https://www.eclipse.org/aspectj/doc/released/devguide/antTasks.html ) result 200).
* [ ] http://www.eclipse.org/aspectj/doc/released/devguide/index.html with 1 occurrences migrated to:
https://www.eclipse.org/aspectj/doc/released/devguide/index.html ([https](https://www.eclipse.org/aspectj/doc/released/devguide/index.html ) result 200).
* [ ] http://www.eclipse.org/aspectj/doc/released/devguide/ltw-configuration.html with 1 occurrences migrated to:
https://www.eclipse.org/aspectj/doc/released/devguide/ltw-configuration.html ([https](https://www.eclipse.org/aspectj/doc/released/devguide/ltw-configuration.html ) result 200).
* [ ] http://www.eclipse.org/aspectj/doc/released/devguide/ltw.html with 1 occurrences migrated to:
https://www.eclipse.org/aspectj/doc/released/devguide/ltw.html ([https](https://www.eclipse.org/aspectj/doc/released/devguide/ltw.html ) result 200).
* [ ] http://www.eclipse.org/aspectj/doc/released/progguide/index.html with 1 occurrences migrated to:
https://www.eclipse.org/aspectj/doc/released/progguide/index.html ([https](https://www.eclipse.org/aspectj/doc/released/progguide/index.html ) result 200).
* [ ] http://www.eclipse.org/aspectj/doc/released/progguide/semantics-pointcuts.html with 1 occurrences migrated to:
https://www.eclipse.org/aspectj/doc/released/progguide/semantics-pointcuts.html ([https](https://www.eclipse.org/aspectj/doc/released/progguide/semantics-pointcuts.html ) result 200).
* [ ] http://www.eclipse.org/aspectj/dtd/aspectj.dtd with 1 occurrences migrated to:
https://www.eclipse.org/aspectj/dtd/aspectj.dtd ([https](https://www.eclipse.org/aspectj/dtd/aspectj.dtd ) result 200).
* [ ] http://ehcache.sourceforge.net (301) with 1 occurrences migrated to:
https://www.ehcache.org/ ([https](https://ehcache.sourceforge.net ) result 200).
* [ ] http://ehcache.org/ (301) with 1 occurrences migrated to:
https://www.ehcache.org/ ([https](https://ehcache.org/ ) result 200).
* [ ] http://www.embeddedjs.com/ with 2 occurrences migrated to:
https://www.embeddedjs.com/ ([https](https://www.embeddedjs.com/ ) result 200).
* [ ] http://www.enterpriseintegrationpatterns.com with 1 occurrences migrated to:
https://www.enterpriseintegrationpatterns.com ([https](https://www.enterpriseintegrationpatterns.com ) result 200).
* [ ] http://www.example.org/?param=aGVsbG9Xb3JsZA%3D%3D with 1 occurrences migrated to:
https://www.example.org/?param=aGVsbG9Xb3JsZA%3D%3D ([https](https://www.example.org/?param=aGVsbG9Xb3JsZA%3D%3D ) result 200).
* [ ] http://www.google.com with 2 occurrences migrated to:
https://www.google.com ([https](https://www.google.com ) result 200).
* [ ] http://www.h2database.com with 1 occurrences migrated to:
https://www.h2database.com ([https](https://www.h2database.com ) result 200).
* [ ] http://www.h2database.com/html/grammar.html with 1 occurrences migrated to:
https://www.h2database.com/html/grammar.html ([https](https://www.h2database.com/html/grammar.html ) result 200).
* [ ] http://www.ietf.org with 1 occurrences migrated to:
https://www.ietf.org ([https](https://www.ietf.org ) result 200).
* [ ] http://www.ietf.org/rfc/rfc1867.txt with 1 occurrences migrated to:
https://www.ietf.org/rfc/rfc1867.txt ([https](https://www.ietf.org/rfc/rfc1867.txt ) result 200).
* [ ] http://www.ietf.org/rfc/rfc2396.txt with 2 occurrences migrated to:
https://www.ietf.org/rfc/rfc2396.txt ([https](https://www.ietf.org/rfc/rfc2396.txt ) result 200).
* [ ] http://www.ietf.org/rfc/rfc3986.txt with 11 occurrences migrated to:
https://www.ietf.org/rfc/rfc3986.txt ([https](https://www.ietf.org/rfc/rfc3986.txt ) result 200).
* [ ] http://www.infoq.com/ with 1 occurrences migrated to:
https://www.infoq.com/ ([https](https://www.infoq.com/ ) result 200).
* [ ] http://www.infoq.com/minibooks/JTDS with 1 occurrences migrated to:
https://www.infoq.com/minibooks/JTDS ([https](https://www.infoq.com/minibooks/JTDS ) result 200).
* [ ] http://www.jetbrains.com/idea/ with 1 occurrences migrated to:
https://www.jetbrains.com/idea/ ([https](https://www.jetbrains.com/idea/ ) result 200).
* [ ] http://www.json.org/ with 1 occurrences migrated to:
https://www.json.org/ ([https](https://www.json.org/ ) result 200).
* [ ] http://www.jython.org with 2 occurrences migrated to:
https://www.jython.org ([https](https://www.jython.org ) result 200).
* [ ] http://www.jython.org/ with 2 occurrences migrated to:
https://www.jython.org/ ([https](https://www.jython.org/ ) result 200).
* [ ] http://www.lowagie.com/iText with 2 occurrences migrated to:
https://www.lowagie.com/iText ([https](https://www.lowagie.com/iText ) result 200).
* [ ] http://www.manpagez.com/man/5/crontab/ with 1 occurrences migrated to:
https://www.manpagez.com/man/5/crontab/ ([https](https://www.manpagez.com/man/5/crontab/ ) result 200).
* [ ] http://mydomain1.com:80/ (301) with 2 occurrences migrated to:
https://www.mydomain1.com/ ([https](https://mydomain1.com:80/ ) result 200).
* [ ] http://mydomain1.com:80 (301) with 1 occurrences migrated to:
https://www.mydomain1.com/ ([https](https://mydomain1.com:80 ) result 200).
* [ ] http://www.oracle.com/technetwork/articles/javaee/jpa-137156.html with 1 occurrences migrated to:
https://www.oracle.com/technetwork/articles/javaee/jpa-137156.html ([https](https://www.oracle.com/technetwork/articles/javaee/jpa-137156.html ) result 200).
* [ ] http://www.oracle.com/technetwork/java/javaee/javaserverfaces-139869.html with 1 occurrences migrated to:
https://www.oracle.com/technetwork/java/javaee/javaserverfaces-139869.html ([https](https://www.oracle.com/technetwork/java/javaee/javaserverfaces-139869.html ) result 200).
* [ ] http://www.oracle.com/technetwork/java/javase/documentation/spec-136004.html with 1 occurrences migrated to:
https://www.oracle.com/technetwork/java/javase/documentation/spec-136004.html ([https](https://www.oracle.com/technetwork/java/javase/documentation/spec-136004.html ) result 200).
* [ ] http://www.oracle.com/technetwork/java/javase/tech/download-jsp-141676.html with 1 occurrences migrated to:
https://www.oracle.com/technetwork/java/javase/tech/download-jsp-141676.html ([https](https://www.oracle.com/technetwork/java/javase/tech/download-jsp-141676.html ) result 200).
* [ ] http://www.oracle.com/technetwork/java/javase/tech/javamanagement-140525.html with 1 occurrences migrated to:
https://www.oracle.com/technetwork/java/javase/tech/javamanagement-140525.html ([https](https://www.oracle.com/technetwork/java/javase/tech/javamanagement-140525.html ) result 200).
* [ ] http://www.oracle.com/technetwork/middleware/weblogic/overview/index-085209.html with 1 occurrences migrated to:
https://www.oracle.com/technetwork/middleware/weblogic/overview/index-085209.html ([https](https://www.oracle.com/technetwork/middleware/weblogic/overview/index-085209.html ) result 200).
* [ ] http://www.ow2.org/ with 1 occurrences migrated to:
https://www.ow2.org/ ([https](https://www.ow2.org/ ) result 200).
* [ ] http://www.owasp.org/index.php/HTTPOnly with 4 occurrences migrated to:
https://www.owasp.org/index.php/HTTPOnly ([https](https://www.owasp.org/index.php/HTTPOnly ) result 200).
* [ ] http://quartz-scheduler.org (301) with 3 occurrences migrated to:
https://www.quartz-scheduler.org/ ([https](https://quartz-scheduler.org ) result 200).
* [ ] http://www.rabbitmq.com/stomp.html with 1 occurrences migrated to:
https://www.rabbitmq.com/stomp.html ([https](https://www.rabbitmq.com/stomp.html ) result 200).
* [ ] http://www.reactive-streams.org with 1 occurrences migrated to:
https://www.reactive-streams.org ([https](https://www.reactive-streams.org ) result 200).
* [ ] http://www.reactive-streams.org/ with 2 occurrences migrated to:
https://www.reactive-streams.org/ ([https](https://www.reactive-streams.org/ ) result 200).
* [ ] http://www.reactive-streams.org/reactive-streams-1.0.1-javadoc/org/reactivestreams/Publisher.html with 1 occurrences migrated to:
https://www.reactive-streams.org/reactive-streams-1.0.1-javadoc/org/reactivestreams/Publisher.html ([https](https://www.reactive-streams.org/reactive-streams-1.0.1-javadoc/org/reactivestreams/Publisher.html ) result 200).
* [ ] http://www.reactive-streams.org/reactive-streams-1.0.1-javadoc/org/reactivestreams/Subscriber.html with 1 occurrences migrated to:
https://www.reactive-streams.org/reactive-streams-1.0.1-javadoc/org/reactivestreams/Subscriber.html ([https](https://www.reactive-streams.org/reactive-streams-1.0.1-javadoc/org/reactivestreams/Subscriber.html ) result 200).
* [ ] http://seleniumhq.org/projects/webdriver/ (301) with 1 occurrences migrated to:
https://www.seleniumhq.org ([https](https://seleniumhq.org/projects/webdriver/ ) result 200).
* [ ] http://www.springbyexample.org/examples/custom-thread-scope-module.html with 1 occurrences migrated to:
https://www.springbyexample.org/examples/custom-thread-scope-module.html ([https](https://www.springbyexample.org/examples/custom-thread-scope-module.html ) result 200).
* [ ] http://www.springframework.org/dtd/spring-beans-2.0.dtd with 3 occurrences migrated to:
https://www.springframework.org/dtd/spring-beans-2.0.dtd ([https](https://www.springframework.org/dtd/spring-beans-2.0.dtd ) result 200).
* [ ] http://www.springframework.org/schema/aop/spring-aop.xsd with 12 occurrences migrated to:
https://www.springframework.org/schema/aop/spring-aop.xsd ([https](https://www.springframework.org/schema/aop/spring-aop.xsd ) result 200).
* [ ] http://www.springframework.org/schema/beans/spring-beans.xsd with 80 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans.xsd ([https](https://www.springframework.org/schema/beans/spring-beans.xsd ) result 200).
* [ ] http://www.springframework.org/schema/cache/spring-cache.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/cache/spring-cache.xsd ([https](https://www.springframework.org/schema/cache/spring-cache.xsd ) result 200).
* [ ] http://www.springframework.org/schema/context/spring-context.xsd with 13 occurrences migrated to:
https://www.springframework.org/schema/context/spring-context.xsd ([https](https://www.springframework.org/schema/context/spring-context.xsd ) result 200).
* [ ] http://www.springframework.org/schema/jdbc/spring-jdbc.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/jdbc/spring-jdbc.xsd ([https](https://www.springframework.org/schema/jdbc/spring-jdbc.xsd ) result 200).
* [ ] http://www.springframework.org/schema/jee/spring-jee.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/jee/spring-jee.xsd ([https](https://www.springframework.org/schema/jee/spring-jee.xsd ) result 200).
* [ ] http://www.springframework.org/schema/jms/spring-jms.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/jms/spring-jms.xsd ([https](https://www.springframework.org/schema/jms/spring-jms.xsd ) result 200).
* [ ] http://www.springframework.org/schema/lang/spring-lang.xsd with 4 occurrences migrated to:
https://www.springframework.org/schema/lang/spring-lang.xsd ([https](https://www.springframework.org/schema/lang/spring-lang.xsd ) result 200).
* [ ] http://www.springframework.org/schema/mvc/spring-mvc.xsd with 3 occurrences migrated to:
https://www.springframework.org/schema/mvc/spring-mvc.xsd ([https](https://www.springframework.org/schema/mvc/spring-mvc.xsd ) result 200).
* [ ] http://www.springframework.org/schema/oxm/spring-oxm.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/oxm/spring-oxm.xsd ([https](https://www.springframework.org/schema/oxm/spring-oxm.xsd ) result 200).
* [ ] http://www.springframework.org/schema/tool/spring-tool.xsd with 13 occurrences migrated to:
https://www.springframework.org/schema/tool/spring-tool.xsd ([https](https://www.springframework.org/schema/tool/spring-tool.xsd ) result 200).
* [ ] http://www.springframework.org/schema/tx/spring-tx.xsd with 8 occurrences migrated to:
https://www.springframework.org/schema/tx/spring-tx.xsd ([https](https://www.springframework.org/schema/tx/spring-tx.xsd ) result 200).
* [ ] http://www.springframework.org/schema/util/spring-util.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/util/spring-util.xsd ([https](https://www.springframework.org/schema/util/spring-util.xsd ) result 200).
* [ ] http://www.springframework.org/schema/websocket/spring-websocket.xsd with 12 occurrences migrated to:
https://www.springframework.org/schema/websocket/spring-websocket.xsd ([https](https://www.springframework.org/schema/websocket/spring-websocket.xsd ) result 200).
* [ ] http://www.stuartellis.eu/articles/erb/ (301) with 2 occurrences migrated to:
https://www.stuartellis.name/articles/erb/ ([https](https://www.stuartellis.eu/articles/erb/ ) result 200).
* [ ] http://www.thymeleaf.org/ with 2 occurrences migrated to:
https://www.thymeleaf.org/ ([https](https://www.thymeleaf.org/ ) result 200).
* [ ] http://www.thymeleaf.org/documentation.html with 2 occurrences migrated to:
https://www.thymeleaf.org/documentation.html ([https](https://www.thymeleaf.org/documentation.html ) result 200).
* [ ] http://www.webjars.org with 4 occurrences migrated to:
https://www.webjars.org ([https](https://www.webjars.org ) result 200).
* [ ] http://www.webjars.org/ with 2 occurrences migrated to:
https://www.webjars.org/ ([https](https://www.webjars.org/ ) result 200).
* [ ] http://www.webjars.org/documentation with 2 occurrences migrated to:
https://www.webjars.org/documentation ([https](https://www.webjars.org/documentation ) result 200).
* [ ] http://www.wildfly.org/ with 1 occurrences migrated to:
https://www.wildfly.org/ ([https](https://www.wildfly.org/ ) result 200).
* [ ] http://x-stream.github.io/ with 2 occurrences migrated to:
https://x-stream.github.io/ ([https](https://x-stream.github.io/ ) result 200).
* [ ] http://youtrack.jetbrains.com/issue/IDEA-53476 with 1 occurrences migrated to:
https://youtrack.jetbrains.com/issue/IDEA-53476 ([https](https://youtrack.jetbrains.com/issue/IDEA-53476 ) result 200).
* [ ] http://youtrack.jetbrains.com/issue/IDEA-64446 with 1 occurrences migrated to:
https://youtrack.jetbrains.com/issue/IDEA-64446 ([https](https://youtrack.jetbrains.com/issue/IDEA-64446 ) result 200).
* [ ] http://bit.ly/TRlX2r with 1 occurrences migrated to:
https://bit.ly/TRlX2r ([https](https://bit.ly/TRlX2r ) result 301).
* [ ] http://bit.ly/UzccDt with 1 occurrences migrated to:
https://bit.ly/UzccDt ([https](https://bit.ly/UzccDt ) result 301).
* [ ] http://bit.ly/p9rIvx with 1 occurrences migrated to:
https://bit.ly/p9rIvx ([https](https://bit.ly/p9rIvx ) result 301).
* [ ] http://bit.ly/qUwvwz with 1 occurrences migrated to:
https://bit.ly/qUwvwz ([https](https://bit.ly/qUwvwz ) result 301).
* [ ] http://blogs.msdn.com/b/ieinternals/archive/2010/05/13/xdomainrequest-restrictions-limitations-and-workarounds.aspx with 1 occurrences migrated to:
https://blogs.msdn.com/b/ieinternals/archive/2010/05/13/xdomainrequest-restrictions-limitations-and-workarounds.aspx ([https](https://blogs.msdn.com/b/ieinternals/archive/2010/05/13/xdomainrequest-restrictions-limitations-and-workarounds.aspx ) result 301).
* [ ] http://code.google.com/p/beanshell2/ with 1 occurrences migrated to:
https://code.google.com/p/beanshell2/ ([https](https://code.google.com/p/beanshell2/ ) result 301).
* [ ] http://code.google.com/p/browsersec/wiki/Part2 with 1 occurrences migrated to:
https://code.google.com/p/browsersec/wiki/Part2 ([https](https://code.google.com/p/browsersec/wiki/Part2 ) result 301).
* [ ] http://code.google.com/p/gears/wiki/ResumableHttpRequestsProposal with 1 occurrences migrated to:
https://code.google.com/p/gears/wiki/ResumableHttpRequestsProposal ([https](https://code.google.com/p/gears/wiki/ResumableHttpRequestsProposal ) result 301).
* [ ] http://code.google.com/p/xml-matchers/ with 3 occurrences migrated to:
https://code.google.com/p/xml-matchers/ ([https](https://code.google.com/p/xml-matchers/ ) result 301).
* [ ] http://commons.apache.org/proper/commons-dbcp with 2 occurrences migrated to:
https://commons.apache.org/proper/commons-dbcp ([https](https://commons.apache.org/proper/commons-dbcp ) result 301).
* [ ] http://commons.apache.org/proper/commons-fileupload with 2 occurrences migrated to:
https://commons.apache.org/proper/commons-fileupload ([https](https://commons.apache.org/proper/commons-fileupload ) result 301).
* [ ] http://confluence.jetbrains.net/display/IDEADEV/Gradle+integration with 1 occurrences migrated to:
https://confluence.jetbrains.net/display/IDEADEV/Gradle+integration ([https](https://confluence.jetbrains.net/display/IDEADEV/Gradle+integration ) result 301).
* [ ] http://contributor-covenant.org with 1 occurrences migrated to:
https://contributor-covenant.org ([https](https://contributor-covenant.org ) result 301).
* [ ] http://contributor-covenant.org/version/1/3/0/ with 1 occurrences migrated to:
https://contributor-covenant.org/version/1/3/0/ ([https](https://contributor-covenant.org/version/1/3/0/ ) result 301).
* [ ] http://db.apache.org/derby with 2 occurrences migrated to:
https://db.apache.org/derby ([https](https://db.apache.org/derby ) result 301).
* [ ] http://dev.w3.org/html5/eventsource/ with 2 occurrences migrated to:
https://dev.w3.org/html5/eventsource/ ([https](https://dev.w3.org/html5/eventsource/ ) result 301).
* [ ] http://domain.com with 24 occurrences migrated to:
https://domain.com ([https](https://domain.com ) result 301).
* [ ] http://domain.com/ with 1 occurrences migrated to:
https://domain.com/ ([https](https://domain.com/ ) result 301).
* [ ] http://en.wikipedia.org/wiki/Cache_ with 1 occurrences migrated to:
https://en.wikipedia.org/wiki/Cache_ ([https](https://en.wikipedia.org/wiki/Cache_ ) result 301).
* [ ] http://facebook.github.io/react/ with 2 occurrences migrated to:
https://facebook.github.io/react/ ([https](https://facebook.github.io/react/ ) result 301).
* [ ] http://forum.springframework.org/showthread.php?t=41350 with 1 occurrences migrated to:
https://forum.springframework.org/showthread.php?t=41350 ([https](https://forum.springframework.org/showthread.php?t=41350 ) result 301).
* [ ] http://github.com/SpringSource/spring-framework with 1 occurrences migrated to:
https://github.com/SpringSource/spring-framework ([https](https://github.com/SpringSource/spring-framework ) result 301).
* [ ] http://hdiv.org/ with 1 occurrences migrated to:
https://hdiv.org/ ([https](https://hdiv.org/ ) result 301).
* [ ] http://jakarta.apache.org/commons/fileupload with 1 occurrences migrated to:
https://jakarta.apache.org/commons/fileupload ([https](https://jakarta.apache.org/commons/fileupload ) result 301).
* [ ] http://jira.springframework.org/browse/SPR-5708 with 1 occurrences migrated to:
https://jira.springframework.org/browse/SPR-5708 ([https](https://jira.springframework.org/browse/SPR-5708 ) result 301).
* [ ] http://jira.springframework.org/browse/SPR-6124 with 1 occurrences migrated to:
https://jira.springframework.org/browse/SPR-6124 ([https](https://jira.springframework.org/browse/SPR-6124 ) result 301).
* [ ] http://jira.springframework.org/browse/SPR-6128 with 1 occurrences migrated to:
https://jira.springframework.org/browse/SPR-6128 ([https](https://jira.springframework.org/browse/SPR-6128 ) result 301).
* [ ] http://jira.springframework.org/browse/SPR-7064 with 1 occurrences migrated to:
https://jira.springframework.org/browse/SPR-7064 ([https](https://jira.springframework.org/browse/SPR-7064 ) result 301).
* [ ] http://maven.apache.org/plugins/maven-surefire-plugin/test-mojo.html with 1 occurrences migrated to:
https://maven.apache.org/plugins/maven-surefire-plugin/test-mojo.html ([https](https://maven.apache.org/plugins/maven-surefire-plugin/test-mojo.html ) result 301).
* [ ] http://mockito.org/ (301) with 1 occurrences migrated to:
https://mockito.github.io ([https](https://mockito.org/ ) result 301).
* [ ] http://mydomain1.com with 37 occurrences migrated to:
https://mydomain1.com ([https](https://mydomain1.com ) result 301).
* [ ] http://mydomain1.com/ with 2 occurrences migrated to:
https://mydomain1.com/ ([https](https://mydomain1.com/ ) result 301).
* [ ] http://mydomain1.com/path with 2 occurrences migrated to:
https://mydomain1.com/path ([https](https://mydomain1.com/path ) result 301).
* [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-2660 with 1 occurrences migrated to:
https://opensource.atlassian.com/projects/spring/browse/SPR-2660 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-2660 ) result 301).
* [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-2754 with 1 occurrences migrated to:
https://opensource.atlassian.com/projects/spring/browse/SPR-2754 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-2754 ) result 301).
* [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-2789 with 1 occurrences migrated to:
https://opensource.atlassian.com/projects/spring/browse/SPR-2789 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-2789 ) result 301).
* [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-3127 with 1 occurrences migrated to:
https://opensource.atlassian.com/projects/spring/browse/SPR-3127 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-3127 ) result 301).
* [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-3775 with 1 occurrences migrated to:
https://opensource.atlassian.com/projects/spring/browse/SPR-3775 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-3775 ) result 301).
* [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-3880 with 1 occurrences migrated to:
https://opensource.atlassian.com/projects/spring/browse/SPR-3880 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-3880 ) result 301).
* [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-3896 with 7 occurrences migrated to:
https://opensource.atlassian.com/projects/spring/browse/SPR-3896 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-3896 ) result 301).
* [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-3949 with 1 occurrences migrated to:
https://opensource.atlassian.com/projects/spring/browse/SPR-3949 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-3949 ) result 301).
* [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-4008 with 2 occurrences migrated to:
https://opensource.atlassian.com/projects/spring/browse/SPR-4008 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-4008 ) result 301).
* [ ] http://opensource.atlassian.com/projects/spring/browse/SPR-4040 with 2 occurrences migrated to:
https://opensource.atlassian.com/projects/spring/browse/SPR-4040 ([https](https://opensource.atlassian.com/projects/spring/browse/SPR-4040 ) result 301).
* [ ] http://publib.boulder.ibm.com/infocenter/wasinfo/v5r1//topic/com.ibm.websphere.base.doc/info/aes/ae/rdat_extiapi.html with 1 occurrences migrated to:
https://publib.boulder.ibm.com/infocenter/wasinfo/v5r1//topic/com.ibm.websphere.base.doc/info/aes/ae/rdat_extiapi.html ([https](https://publib.boulder.ibm.com/infocenter/wasinfo/v5r1//topic/com.ibm.websphere.base.doc/info/aes/ae/rdat_extiapi.html ) result 301).
* [ ] http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/topic/com.ibm.websphere.javadoc.doc/public_html/api/com/ibm/websphere/rsadapter/JDBCConnectionSpec.html with 1 occurrences migrated to:
https://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/topic/com.ibm.websphere.javadoc.doc/public_html/api/com/ibm/websphere/rsadapter/JDBCConnectionSpec.html ([https](https://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/topic/com.ibm.websphere.javadoc.doc/public_html/api/com/ibm/websphere/rsadapter/JDBCConnectionSpec.html ) result 301).
* [ ] http://site2.com with 3 occurrences migrated to:
https://site2.com ([https](https://site2.com ) result 301).
* [ ] http://slack.kotlinlang.org/ with 2 occurrences migrated to:
https://slack.kotlinlang.org/ ([https](https://slack.kotlinlang.org/ ) result 301).
* [ ] http://sourceforge.net/projects/c3p0 with 2 occurrences migrated to:
https://sourceforge.net/projects/c3p0 ([https](https://sourceforge.net/projects/c3p0 ) result 301).
* [ ] http://sourceforge.net/projects/javadiff with 1 occurrences migrated to:
https://sourceforge.net/projects/javadiff ([https](https://sourceforge.net/projects/javadiff ) result 301).
* [ ] http://springframework.org with 2 occurrences migrated to:
https://springframework.org ([https](https://springframework.org ) result 301).
* [ ] http://www-01.ibm.com/software/webservers/appserv/was/ with 1 occurrences migrated to:
https://www-01.ibm.com/software/webservers/appserv/was/ ([https](https://www-01.ibm.com/software/webservers/appserv/was/ ) result 301).
* [ ] http://www.atomenabled.org/developers/syndication/ with 1 occurrences migrated to:
https://www.atomenabled.org/developers/syndication/ ([https](https://www.atomenabled.org/developers/syndication/ ) result 301).
* [ ] http://www.eclipse.org/aspectj with 2 occurrences migrated to:
https://www.eclipse.org/aspectj ([https](https://www.eclipse.org/aspectj ) result 301).
* [ ] http://www.google.com/ig/calculator?q=1USD=?EUR with 1 occurrences migrated to:
https://www.google.com/ig/calculator?q=1USD=?EUR ([https](https://www.google.com/ig/calculator?q=1USD=?EUR ) result 301).
* [ ] http://www.javaworld.com/javaworld/jw-01-2009/jw-01-spring-transactions.html with 1 occurrences migrated to:
https://www.javaworld.com/javaworld/jw-01-2009/jw-01-spring-transactions.html ([https](https://www.javaworld.com/javaworld/jw-01-2009/jw-01-spring-transactions.html ) result 301).
* [ ] http://www.jboss.org/jbossas/ with 1 occurrences migrated to:
https://www.jboss.org/jbossas/ ([https](https://www.jboss.org/jbossas/ ) result 301).
* [ ] http://www.junit.org/ with 1 occurrences migrated to:
https://www.junit.org/ ([https](https://www.junit.org/ ) result 301).
* [ ] http://www.mnot.net/cache_docs with 1 occurrences migrated to:
https://www.mnot.net/cache_docs ([https](https://www.mnot.net/cache_docs ) result 301).
* [ ] http://www.sf.net/home.view?siteLanguage=nl with 1 occurrences migrated to:
https://www.sf.net/home.view?siteLanguage=nl ([https](https://www.sf.net/home.view?siteLanguage=nl ) result 301).
* [ ] http://www.springframework.org with 7 occurrences migrated to:
https://www.springframework.org ([https](https://www.springframework.org ) result 301).
* [ ] http://www.springframework.org/ with 3 occurrences migrated to:
https://www.springframework.org/ ([https](https://www.springframework.org/ ) result 301).
* [ ] http://xyz.com/path with 2 occurrences migrated to:
https://xyz.com/path ([https](https://xyz.com/path ) result 301).
* [ ] http://commons.apache.org/codec/ with 1 occurrences migrated to:
https://commons.apache.org/codec/ ([https](https://commons.apache.org/codec/ ) result 302).
* [ ] http://commons.apache.org/logging with 2 occurrences migrated to:
https://commons.apache.org/logging ([https](https://commons.apache.org/logging ) result 302).
* [ ] http://download.oracle.com/javaee/6/api/javax/inject/Scope.html with 1 occurrences migrated to:
https://download.oracle.com/javaee/6/api/javax/inject/Scope.html ([https](https://download.oracle.com/javaee/6/api/javax/inject/Scope.html ) result 302).
* [ ] http://download.oracle.com/javase/1.5.0/docs/api/java/lang/System.html with 4 occurrences migrated to:
https://download.oracle.com/javase/1.5.0/docs/api/java/lang/System.html ([https](https://download.oracle.com/javase/1.5.0/docs/api/java/lang/System.html ) result 302).
* [ ] http://download.oracle.com/javase/6/docs/technotes/guides/jar/jar.html with 1 occurrences migrated to:
https://download.oracle.com/javase/6/docs/technotes/guides/jar/jar.html ([https](https://download.oracle.com/javase/6/docs/technotes/guides/jar/jar.html ) result 302).
* [ ] http://download.oracle.com/javase/8/docs/api/java/beans/ConstructorProperties.html with 1 occurrences migrated to:
https://download.oracle.com/javase/8/docs/api/java/beans/ConstructorProperties.html ([https](https://download.oracle.com/javase/8/docs/api/java/beans/ConstructorProperties.html ) result 302).
* [ ] http://download.oracle.com/javase/jndi/tutorial/beyond/misc/policy.html with 1 occurrences migrated to:
https://download.oracle.com/javase/jndi/tutorial/beyond/misc/policy.html ([https](https://download.oracle.com/javase/jndi/tutorial/beyond/misc/policy.html ) result 302).
* [ ] http://gafter.blogspot.nl/2006/12/super-type-tokens.html with 1 occurrences migrated to:
https://gafter.blogspot.nl/2006/12/super-type-tokens.html ([https](https://gafter.blogspot.nl/2006/12/super-type-tokens.html ) result 302).
* [ ] http://git-scm.com/book/en/Distributed-Git-Contributing-to-a-Project with 1 occurrences migrated to:
https://git-scm.com/book/en/Distributed-Git-Contributing-to-a-Project ([https](https://git-scm.com/book/en/Distributed-Git-Contributing-to-a-Project ) result 302).
* [ ] http://git-scm.com/book/en/Git-Tools-Rewriting-History with 1 occurrences migrated to:
https://git-scm.com/book/en/Git-Tools-Rewriting-History ([https](https://git-scm.com/book/en/Git-Tools-Rewriting-History ) result 302).
* [ ] http://glassfish.dev.java.net/ with 1 occurrences migrated to:
https://glassfish.dev.java.net/ ([https](https://glassfish.dev.java.net/ ) result 302).
* [ ] http://java.sun.com/docs/books/jls/third_edition/html/conversions.html with 1 occurrences migrated to:
https://java.sun.com/docs/books/jls/third_edition/html/conversions.html ([https](https://java.sun.com/docs/books/jls/third_edition/html/conversions.html ) result 302).
* [ ] http://java.sun.com/docs/books/jls/third_edition/html/expressions.html with 1 occurrences migrated to:
https://java.sun.com/docs/books/jls/third_edition/html/expressions.html ([https](https://java.sun.com/docs/books/jls/third_edition/html/expressions.html ) result 302).
* [ ] http://java.sun.com/j2se/ with 2 occurrences migrated to:
https://java.sun.com/j2se/ ([https](https://java.sun.com/j2se/ ) result 302).
* [ ] http://java.sun.com/j2se/1.4.1/docs/tooldocs/solaris/javadoc.html with 1 occurrences migrated to:
https://java.sun.com/j2se/1.4.1/docs/tooldocs/solaris/javadoc.html ([https](https://java.sun.com/j2se/1.4.1/docs/tooldocs/solaris/javadoc.html ) result 302).
* [ ] http://java.sun.com/j2se/1.4.2/docs/api/java/text/SimpleDateFormat.html with 1 occurrences migrated to:
https://java.sun.com/j2se/1.4.2/docs/api/java/text/SimpleDateFormat.html ([https](https://java.sun.com/j2se/1.4.2/docs/api/java/text/SimpleDateFormat.html ) result 302).
* [ ] http://java.sun.com/j2se/javadoc with 1 occurrences migrated to:
https://java.sun.com/j2se/javadoc ([https](https://java.sun.com/j2se/javadoc ) result 302).
* [ ] http://java.sun.com/j2se/javadoc/ with 1 occurrences migrated to:
https://java.sun.com/j2se/javadoc/ ([https](https://java.sun.com/j2se/javadoc/ ) result 302).
* [ ] http://java.sun.com/j2se/javadoc/faq.html with 1 occurrences migrated to:
https://java.sun.com/j2se/javadoc/faq.html ([https](https://java.sun.com/j2se/javadoc/faq.html ) result 302).
* [ ] http://java.sun.com/webservices/jaxb/ with 1 occurrences migrated to:
https://java.sun.com/webservices/jaxb/ ([https](https://java.sun.com/webservices/jaxb/ ) result 302).
* [ ] http://java.sun.com/xml/jaxp/properties/schemaLanguage with 1 occurrences migrated to:
https://java.sun.com/xml/jaxp/properties/schemaLanguage ([https](https://java.sun.com/xml/jaxp/properties/schemaLanguage ) result 302).
* [ ] http://java.sun.com/xml/ns/j2ee/connector_1_5.xsd with 1 occurrences migrated to:
https://java.sun.com/xml/ns/j2ee/connector_1_5.xsd ([https](https://java.sun.com/xml/ns/j2ee/connector_1_5.xsd ) result 302).
* [ ] http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd with 2 occurrences migrated to:
https://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd ([https](https://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd ) result 302).
* [ ] http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd with 2 occurrences migrated to:
https://java.sun.com/xml/ns/javaee/web-app_3_0.xsd ([https](https://java.sun.com/xml/ns/javaee/web-app_3_0.xsd ) result 302).
* [ ] http://java.sun.com/xml/stream/properties/report-cdata-event with 1 occurrences migrated to:
https://java.sun.com/xml/stream/properties/report-cdata-event ([https](https://java.sun.com/xml/stream/properties/report-cdata-event ) result 302).
* [ ] http://sourceforge.net/projects/cglib/files/cglib3/3.0/cglib-3.0.jar/download with 1 occurrences migrated to:
https://sourceforge.net/projects/cglib/files/cglib3/3.0/cglib-3.0.jar/download ([https](https://sourceforge.net/projects/cglib/files/cglib3/3.0/cglib-3.0.jar/download ) result 302).
* [ ] http://other.info/foo/bar (301) with 1 occurrences migrated to:
https://weibo.com/otherinfo/foo/bar ([https](https://other.info/foo/bar ) result 302).
* [ ] http://www.iana.org/assignments/http-status-codes with 1 occurrences migrated to:
https://www.iana.org/assignments/http-status-codes ([https](https://www.iana.org/assignments/http-status-codes ) result 302).
* [ ] http://www.iana.org/assignments/media-types/ with 1 occurrences migrated to:
https://www.iana.org/assignments/media-types/ ([https](https://www.iana.org/assignments/media-types/ ) result 302).
* [ ] http://www.springsource.org/download with 1 occurrences migrated to:
https://www.springsource.org/download ([https](https://www.springsource.org/download ) result 302).
* [ ] http://www.sys-con.com/java with 1 occurrences migrated to:
https://www.sys-con.com/java ([https](https://www.sys-con.com/java ) result 302).
These URLs were intentionally ignored.
* http://java.sun.com/jsp/jstl/core with 1 occurrences
* http://java.sun.com/xml/ns/j2ee with 6 occurrences
* http://java.sun.com/xml/ns/javaee with 4 occurrences
* http://java.sun.com/xml/ns/persistence with 1 occurrences
* http://localhost with 86 occurrences
* http://localhost/ with 16 occurrences
* http://localhost/42 with 1 occurrences
* http://localhost/?cookie=foo with 1 occurrences
* http://localhost/FILE.TXT with 1 occurrences
* http://localhost/abc with 1 occurrences
* http://localhost/abc/def with 1 occurrences
* http://localhost/app%20/path/ with 1 occurrences
* http://localhost/app/path%20with%20spaces/ with 1 occurrences
* http://localhost/bar with 2 occurrences
* http://localhost/context/a with 3 occurrences
* http://localhost/contextPath/main/path with 2 occurrences
* http://localhost/file.foo with 1 occurrences
* http://localhost/file.txt with 1 occurrences
* http://localhost/foo with 2 occurrences
* http://localhost/foo%20bar with 1 occurrences
* http://localhost/foo/bar with 1 occurrences
* http://localhost/foo/bar/baz with 1 occurrences
* http://localhost/forward with 1 occurrences
* http://localhost/hotels/42/bookings/21 with 4 occurrences
* http://localhost/input with 1 occurrences
* http://localhost/jquery-1.11.0.min.js with 5 occurrences
* http://localhost/messages/form with 1 occurrences
* http://localhost/mvc-showcase with 2 occurrences
* http://localhost/mvc-showcase/app with 1 occurrences
* http://localhost/mvc-showcase/data/foo%20bar with 1 occurrences
* http://localhost/mvc-showcase/data/param with 1 occurrences
* http://localhost/mvc-showcase/data/param?foo=123 with 2 occurrences
* http://localhost/myapp/main with 1 occurrences
* http://localhost/myapp/people/1/addresses/DE with 1 occurrences
* http://localhost/path with 3 occurrences
* http://localhost/path;a=b/with/semicolon with 1 occurrences
* http://localhost/persons with 1 occurrences
* http://localhost/prefix with 1 occurrences
* http://localhost/prefix/app with 1 occurrences
* http://localhost/prefix/bar with 1 occurrences
* http://localhost/prefix/mvc-showcase with 3 occurrences
* http://localhost/query= with 1 occurrences
* http://localhost/query=foo@bar with 1 occurrences
* http://localhost/resources/child/response.txt with 1 occurrences
* http://localhost/resources/foo with 2 occurrences
* http://localhost/resources/foo.txt with 1 occurrences
* http://localhost/resources/response.txt with 2 occurrences
* http://localhost/rest/books/6/pages/1.json with 1 occurrences
* http://localhost/something/1/foo with 1 occurrences
* http://localhost/something/optional-param with 1 occurrences
* http://localhost/test with 4 occurrences
* http://localhost/test.html with 1 occurrences
* http://localhost/test/this with 2 occurrences
* http://localhost:7070/example/adminhandle.vm with 1 occurrences
* http://localhost:7070/example/bingo.html with 1 occurrences
* http://localhost:80/jquery-1.11.0.min.js with 1 occurrences
* http://localhost:8080 with 34 occurrences
* http://localhost:8080/ with 4 occurrences
* http://localhost:8080/OrderService with 3 occurrences
* http://localhost:8080/aA/bB/cC with 1 occurrences
* http://localhost:8080/context with 1 occurrences
* http://localhost:8080/context/myapiresource with 1 occurrences
* http://localhost:8080/gamecast/admin/index.html with 1 occurrences
* http://localhost:8080/gamecast/display.html with 1 occurrences
* http://localhost:8080/gamecast/displayShoppingCart.html with 1 occurrences
* http://localhost:8080/jquery-1.11.0.min.js with 1 occurrences
* http://localhost:8080/mvc-showcase with 1 occurrences
* http://localhost:8080/myapiresource with 1 occurrences
* http://localhost:8080/myapp/js/sockjs-client.js with 1 occurrences
* http://localhost:8080/path with 3 occurrences
* http://localhost:8080/people with 2 occurrences
* http://localhost:8080/portfolio with 1 occurrences
* http://localhost:8080/spring/ with 2 occurrences
* http://localhost:8080/test/ with 2 occurrences
* http://localhost:8080/test/print?value=%EA%B0%80+%EB%82%98 with 1 occurrences
* http://localhost:8081 with 1 occurrences
* http://localhost:8081/ with 1 occurrences
* http://localhost:8181 with 1 occurrences
* http://localhost:8888/AccountServiceEndpoint?WSDL with 1 occurrences
* http://localhost:9000 with 7 occurrences
* http://localhost:9090 with 18 occurrences
* http://localhost:9090/jquery-1.11.0.min.js with 2 occurrences
* http://localhost:9990/mail/messages/form with 1 occurrences
* http://localhost:9999/ with 1 occurrences
* http://localhost:9999/OrderService?wsdl with 4 occurrences
* http://localhosta/testbean with 3 occurrences
* http://samples.springframework.org/flight with 27 occurrences
* http://springframework.org/spring-ws with 17 occurrences
* http://test.com with 1 occurrences
* http://test.com/ with 1 occurrences
* http://testng.org/ with 1 occurrences
* http://tiles.apache.org/tags-tiles with 1 occurrences
* http://www.foo.com/schema/component with 6 occurrences
* http://www.mycompany.com/schema/myns with 4 occurrences
* http://www.springframework.org/schema/aop with 30 occurrences
* http://www.springframework.org/schema/beans with 169 occurrences
* http://www.springframework.org/schema/beans/test with 2 occurrences
* http://www.springframework.org/schema/c with 1 occurrences
* http://www.springframework.org/schema/cache with 5 occurrences
* http://www.springframework.org/schema/context with 28 occurrences
* http://www.springframework.org/schema/jdbc with 8 occurrences
* http://www.springframework.org/schema/jee with 9 occurrences
* http://www.springframework.org/schema/jms with 5 occurrences
* http://www.springframework.org/schema/lang with 10 occurrences
* http://www.springframework.org/schema/mvc with 8 occurrences
* http://www.springframework.org/schema/oxm with 4 occurrences
* http://www.springframework.org/schema/p with 4 occurrences
* http://www.springframework.org/schema/task with 2 occurrences
* http://www.springframework.org/schema/tool with 27 occurrences
* http://www.springframework.org/schema/tx with 18 occurrences
* http://www.springframework.org/schema/util with 8 occurrences
* http://www.springframework.org/schema/websocket with 26 occurrences
* http://www.springframework.org/spring-ws with 1 occurrences
* http://www.springframework.org/tags with 4 occurrences
* http://www.springframework.org/tags/form with 2 occurrences
* http://www.w3.org/1999/XSL/Transform with 8 occurrences
* http://www.w3.org/2001/XMLSchema with 24 occurrences
* http://www.w3.org/2001/XMLSchema-instance with 79 occurrences
* http://www.w3.org/2005/Atom with 4 occurrences
* http://www.w3.org/TR/html4/charset.html with 5 occurrences
* http://www.w3.org/TR/html4/sgml/entities.html with 14 occurrences
2019-03-21 15:08:55 -05:00
Rob Winch
c8732d0258
Polish URL Cleanup
...
Closes gh-22617
2019-03-21 15:07:40 -05:00
Spring Operator
6a0ef1aa64
URL Cleanup
...
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).
# HTTP URLs that Could Not Be Fixed
These URLs were unable to be fixed. Please review them to see if they can be manually resolved.
* http://www.foo.com/schema/component/component.xsd (404) with 1 occurrences could not be migrated:
([https](https://www.foo.com/schema/component/component.xsd ) result SSLHandshakeException).
# Fixed URLs
## Fixed But Review Recommended
These URLs were fixed, but the https status was not OK. However, the https status was the same as the http request or http redirected to an https URL, so they were migrated. Your review is recommended.
* http://www.kbcafe.com/rss/atom.xsd.xml (ConnectTimeoutException) with 1 occurrences migrated to:
https://www.kbcafe.com/rss/atom.xsd.xml ([https](https://www.kbcafe.com/rss/atom.xsd.xml ) result ConnectTimeoutException).
* http://domain1.com (UnknownHostException) with 2 occurrences migrated to:
https://domain1.com ([https](https://domain1.com ) result UnknownHostException).
* http://domain2.com (UnknownHostException) with 1 occurrences migrated to:
https://domain2.com ([https](https://domain2.com ) result UnknownHostException).
* http://mydomain1.com,http://mydomain2.com (UnknownHostException) with 1 occurrences migrated to:
https://mydomain1.com,http://mydomain2.com ([https](https://mydomain1.com,https://mydomain2.com ) result UnknownHostException).
* http://mydomain2.com (UnknownHostException) with 2 occurrences migrated to:
https://mydomain2.com ([https](https://mydomain2.com ) result UnknownHostException).
* http://mydomain3.com,http://mydomain4.com (UnknownHostException) with 1 occurrences migrated to:
https://mydomain3.com,http://mydomain4.com ([https](https://mydomain3.com,https://mydomain4.com ) result UnknownHostException).
* http://www.springframework.org/schema/beans/factory/xml/support/CustomNamespaceHandlerTests.xsd (404) with 1 occurrences migrated to:
https://www.springframework.org/schema/beans/factory/xml/support/CustomNamespaceHandlerTests.xsd ([https](https://www.springframework.org/schema/beans/factory/xml/support/CustomNamespaceHandlerTests.xsd ) result 404).
## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.
* http://example.com with 1 occurrences migrated to:
https://example.com ([https](https://example.com ) result 200).
* http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd (301) with 2 occurrences migrated to:
https://hibernate.org/dtd/hibernate-mapping-3.0.dtd ([https](https://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd ) result 200).
* http://testng.org/testng-1.0.dtd with 3 occurrences migrated to:
https://testng.org/testng-1.0.dtd ([https](https://testng.org/testng-1.0.dtd ) result 200).
* http://tiles.apache.org/dtds/tiles-config_2_0.dtd with 2 occurrences migrated to:
https://tiles.apache.org/dtds/tiles-config_2_0.dtd ([https](https://tiles.apache.org/dtds/tiles-config_2_0.dtd ) result 200).
* http://tiles.apache.org/dtds/tiles-config_2_1.dtd with 2 occurrences migrated to:
https://tiles.apache.org/dtds/tiles-config_2_1.dtd ([https](https://tiles.apache.org/dtds/tiles-config_2_1.dtd ) result 200).
* http://tiles.apache.org/dtds/tiles-config_3_0.dtd with 4 occurrences migrated to:
https://tiles.apache.org/dtds/tiles-config_3_0.dtd ([https](https://tiles.apache.org/dtds/tiles-config_3_0.dtd ) result 200).
* http://www.quartz-scheduler.org/xml/job_scheduling_data_1_8.xsd with 1 occurrences migrated to:
https://www.quartz-scheduler.org/xml/job_scheduling_data_1_8.xsd ([https](https://www.quartz-scheduler.org/xml/job_scheduling_data_1_8.xsd ) result 200).
* http://www.springframework.org/dtd/spring-beans-2.0.dtd with 168 occurrences migrated to:
https://www.springframework.org/dtd/spring-beans-2.0.dtd ([https](https://www.springframework.org/dtd/spring-beans-2.0.dtd ) result 200).
* http://www.springframework.org/schema/aop/spring-aop-2.0.xsd with 68 occurrences migrated to:
https://www.springframework.org/schema/aop/spring-aop-2.0.xsd ([https](https://www.springframework.org/schema/aop/spring-aop-2.0.xsd ) result 200).
* http://www.springframework.org/schema/aop/spring-aop-2.5.xsd with 11 occurrences migrated to:
https://www.springframework.org/schema/aop/spring-aop-2.5.xsd ([https](https://www.springframework.org/schema/aop/spring-aop-2.5.xsd ) result 200).
* http://www.springframework.org/schema/aop/spring-aop-3.0.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/aop/spring-aop-3.0.xsd ([https](https://www.springframework.org/schema/aop/spring-aop-3.0.xsd ) result 200).
* http://www.springframework.org/schema/aop/spring-aop.xsd with 7 occurrences migrated to:
https://www.springframework.org/schema/aop/spring-aop.xsd ([https](https://www.springframework.org/schema/aop/spring-aop.xsd ) result 200).
* http://www.springframework.org/schema/beans/spring-beans-2.0.xsd with 112 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans-2.0.xsd ([https](https://www.springframework.org/schema/beans/spring-beans-2.0.xsd ) result 200).
* http://www.springframework.org/schema/beans/spring-beans-2.5.xsd with 46 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans-2.5.xsd ([https](https://www.springframework.org/schema/beans/spring-beans-2.5.xsd ) result 200).
* http://www.springframework.org/schema/beans/spring-beans-3.0.xsd with 10 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans-3.0.xsd ([https](https://www.springframework.org/schema/beans/spring-beans-3.0.xsd ) result 200).
* http://www.springframework.org/schema/beans/spring-beans-3.1.xsd with 33 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans-3.1.xsd ([https](https://www.springframework.org/schema/beans/spring-beans-3.1.xsd ) result 200).
* http://www.springframework.org/schema/beans/spring-beans-3.2.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans-3.2.xsd ([https](https://www.springframework.org/schema/beans/spring-beans-3.2.xsd ) result 200).
* http://www.springframework.org/schema/beans/spring-beans-4.0.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans-4.0.xsd ([https](https://www.springframework.org/schema/beans/spring-beans-4.0.xsd ) result 200).
* http://www.springframework.org/schema/beans/spring-beans-4.1.xsd with 3 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans-4.1.xsd ([https](https://www.springframework.org/schema/beans/spring-beans-4.1.xsd ) result 200).
* http://www.springframework.org/schema/beans/spring-beans-4.2.xsd with 4 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans-4.2.xsd ([https](https://www.springframework.org/schema/beans/spring-beans-4.2.xsd ) result 200).
* http://www.springframework.org/schema/beans/spring-beans-4.3.xsd with 4 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans-4.3.xsd ([https](https://www.springframework.org/schema/beans/spring-beans-4.3.xsd ) result 200).
* http://www.springframework.org/schema/beans/spring-beans.xsd with 142 occurrences migrated to:
https://www.springframework.org/schema/beans/spring-beans.xsd ([https](https://www.springframework.org/schema/beans/spring-beans.xsd ) result 200).
* http://www.springframework.org/schema/cache/spring-cache.xsd with 10 occurrences migrated to:
https://www.springframework.org/schema/cache/spring-cache.xsd ([https](https://www.springframework.org/schema/cache/spring-cache.xsd ) result 200).
* http://www.springframework.org/schema/context/spring-context-2.5.xsd with 41 occurrences migrated to:
https://www.springframework.org/schema/context/spring-context-2.5.xsd ([https](https://www.springframework.org/schema/context/spring-context-2.5.xsd ) result 200).
* http://www.springframework.org/schema/context/spring-context-3.0.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/context/spring-context-3.0.xsd ([https](https://www.springframework.org/schema/context/spring-context-3.0.xsd ) result 200).
* http://www.springframework.org/schema/context/spring-context-3.1.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/context/spring-context-3.1.xsd ([https](https://www.springframework.org/schema/context/spring-context-3.1.xsd ) result 200).
* http://www.springframework.org/schema/context/spring-context-3.2.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/context/spring-context-3.2.xsd ([https](https://www.springframework.org/schema/context/spring-context-3.2.xsd ) result 200).
* http://www.springframework.org/schema/context/spring-context-4.0.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/context/spring-context-4.0.xsd ([https](https://www.springframework.org/schema/context/spring-context-4.0.xsd ) result 200).
* http://www.springframework.org/schema/context/spring-context-4.2.xsd with 4 occurrences migrated to:
https://www.springframework.org/schema/context/spring-context-4.2.xsd ([https](https://www.springframework.org/schema/context/spring-context-4.2.xsd ) result 200).
* http://www.springframework.org/schema/context/spring-context-4.3.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/context/spring-context-4.3.xsd ([https](https://www.springframework.org/schema/context/spring-context-4.3.xsd ) result 200).
* http://www.springframework.org/schema/context/spring-context.xsd with 10 occurrences migrated to:
https://www.springframework.org/schema/context/spring-context.xsd ([https](https://www.springframework.org/schema/context/spring-context.xsd ) result 200).
* http://www.springframework.org/schema/jdbc/spring-jdbc-3.0.xsd with 9 occurrences migrated to:
https://www.springframework.org/schema/jdbc/spring-jdbc-3.0.xsd ([https](https://www.springframework.org/schema/jdbc/spring-jdbc-3.0.xsd ) result 200).
* http://www.springframework.org/schema/jdbc/spring-jdbc-3.1.xsd with 5 occurrences migrated to:
https://www.springframework.org/schema/jdbc/spring-jdbc-3.1.xsd ([https](https://www.springframework.org/schema/jdbc/spring-jdbc-3.1.xsd ) result 200).
* http://www.springframework.org/schema/jdbc/spring-jdbc-4.2.xsd with 9 occurrences migrated to:
https://www.springframework.org/schema/jdbc/spring-jdbc-4.2.xsd ([https](https://www.springframework.org/schema/jdbc/spring-jdbc-4.2.xsd ) result 200).
* http://www.springframework.org/schema/jdbc/spring-jdbc-4.3.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/jdbc/spring-jdbc-4.3.xsd ([https](https://www.springframework.org/schema/jdbc/spring-jdbc-4.3.xsd ) result 200).
* http://www.springframework.org/schema/jdbc/spring-jdbc.xsd with 8 occurrences migrated to:
https://www.springframework.org/schema/jdbc/spring-jdbc.xsd ([https](https://www.springframework.org/schema/jdbc/spring-jdbc.xsd ) result 200).
* http://www.springframework.org/schema/jee/spring-jee-3.1.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/jee/spring-jee-3.1.xsd ([https](https://www.springframework.org/schema/jee/spring-jee-3.1.xsd ) result 200).
* http://www.springframework.org/schema/jms/spring-jms-4.1.xsd with 9 occurrences migrated to:
https://www.springframework.org/schema/jms/spring-jms-4.1.xsd ([https](https://www.springframework.org/schema/jms/spring-jms-4.1.xsd ) result 200).
* http://www.springframework.org/schema/jms/spring-jms-4.2.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/jms/spring-jms-4.2.xsd ([https](https://www.springframework.org/schema/jms/spring-jms-4.2.xsd ) result 200).
* http://www.springframework.org/schema/lang/spring-lang-2.0.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/lang/spring-lang-2.0.xsd ([https](https://www.springframework.org/schema/lang/spring-lang-2.0.xsd ) result 200).
* http://www.springframework.org/schema/lang/spring-lang-2.5.xsd with 3 occurrences migrated to:
https://www.springframework.org/schema/lang/spring-lang-2.5.xsd ([https](https://www.springframework.org/schema/lang/spring-lang-2.5.xsd ) result 200).
* http://www.springframework.org/schema/lang/spring-lang-3.0.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/lang/spring-lang-3.0.xsd ([https](https://www.springframework.org/schema/lang/spring-lang-3.0.xsd ) result 200).
* http://www.springframework.org/schema/lang/spring-lang-3.1.xsd with 5 occurrences migrated to:
https://www.springframework.org/schema/lang/spring-lang-3.1.xsd ([https](https://www.springframework.org/schema/lang/spring-lang-3.1.xsd ) result 200).
* http://www.springframework.org/schema/lang/spring-lang-4.2.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/lang/spring-lang-4.2.xsd ([https](https://www.springframework.org/schema/lang/spring-lang-4.2.xsd ) result 200).
* http://www.springframework.org/schema/lang/spring-lang.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/lang/spring-lang.xsd ([https](https://www.springframework.org/schema/lang/spring-lang.xsd ) result 200).
* http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd ([https](https://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd ) result 200).
* http://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd ([https](https://www.springframework.org/schema/mvc/spring-mvc-4.3.xsd ) result 200).
* http://www.springframework.org/schema/mvc/spring-mvc.xsd with 26 occurrences migrated to:
https://www.springframework.org/schema/mvc/spring-mvc.xsd ([https](https://www.springframework.org/schema/mvc/spring-mvc.xsd ) result 200).
* http://www.springframework.org/schema/oxm/spring-oxm.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/oxm/spring-oxm.xsd ([https](https://www.springframework.org/schema/oxm/spring-oxm.xsd ) result 200).
* http://www.springframework.org/schema/task/spring-task-4.1.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/task/spring-task-4.1.xsd ([https](https://www.springframework.org/schema/task/spring-task-4.1.xsd ) result 200).
* http://www.springframework.org/schema/task/spring-task.xsd with 6 occurrences migrated to:
https://www.springframework.org/schema/task/spring-task.xsd ([https](https://www.springframework.org/schema/task/spring-task.xsd ) result 200).
* http://www.springframework.org/schema/tx/spring-tx-2.5.xsd with 3 occurrences migrated to:
https://www.springframework.org/schema/tx/spring-tx-2.5.xsd ([https](https://www.springframework.org/schema/tx/spring-tx-2.5.xsd ) result 200).
* http://www.springframework.org/schema/tx/spring-tx-4.0.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/tx/spring-tx-4.0.xsd ([https](https://www.springframework.org/schema/tx/spring-tx-4.0.xsd ) result 200).
* http://www.springframework.org/schema/tx/spring-tx.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/tx/spring-tx.xsd ([https](https://www.springframework.org/schema/tx/spring-tx.xsd ) result 200).
* http://www.springframework.org/schema/util/spring-util-2.0.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/util/spring-util-2.0.xsd ([https](https://www.springframework.org/schema/util/spring-util-2.0.xsd ) result 200).
* http://www.springframework.org/schema/util/spring-util-2.5.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/util/spring-util-2.5.xsd ([https](https://www.springframework.org/schema/util/spring-util-2.5.xsd ) result 200).
* http://www.springframework.org/schema/util/spring-util-3.0.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/util/spring-util-3.0.xsd ([https](https://www.springframework.org/schema/util/spring-util-3.0.xsd ) result 200).
* http://www.springframework.org/schema/util/spring-util-3.1.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/util/spring-util-3.1.xsd ([https](https://www.springframework.org/schema/util/spring-util-3.1.xsd ) result 200).
* http://www.springframework.org/schema/util/spring-util-4.1.xsd with 1 occurrences migrated to:
https://www.springframework.org/schema/util/spring-util-4.1.xsd ([https](https://www.springframework.org/schema/util/spring-util-4.1.xsd ) result 200).
* http://www.springframework.org/schema/util/spring-util-4.2.xsd with 4 occurrences migrated to:
https://www.springframework.org/schema/util/spring-util-4.2.xsd ([https](https://www.springframework.org/schema/util/spring-util-4.2.xsd ) result 200).
* http://www.springframework.org/schema/util/spring-util.xsd with 2 occurrences migrated to:
https://www.springframework.org/schema/util/spring-util.xsd ([https](https://www.springframework.org/schema/util/spring-util.xsd ) result 200).
* http://www.springframework.org/schema/websocket/spring-websocket.xsd with 11 occurrences migrated to:
https://www.springframework.org/schema/websocket/spring-websocket.xsd ([https](https://www.springframework.org/schema/websocket/spring-websocket.xsd ) result 200).
* http://mydomain1.com with 2 occurrences migrated to:
https://mydomain1.com ([https](https://mydomain1.com ) result 301).
* http://www.springframework.org with 1 occurrences migrated to:
https://www.springframework.org ([https](https://www.springframework.org ) result 301).
* http://help.sap.com/saphelp_hanaplatform/helpdata/en/20/a78d3275191014b41bae7c4a46d835/content.htm with 1 occurrences migrated to:
https://help.sap.com/saphelp_hanaplatform/helpdata/en/20/a78d3275191014b41bae7c4a46d835/content.htm ([https](https://help.sap.com/saphelp_hanaplatform/helpdata/en/20/a78d3275191014b41bae7c4a46d835/content.htm ) result 302).
* http://java.sun.com/dtd/properties.dtd with 4 occurrences migrated to:
https://java.sun.com/dtd/properties.dtd ([https](https://java.sun.com/dtd/properties.dtd ) result 302).
* http://java.sun.com/xml/ns/j2ee/connector_1_5.xsd with 1 occurrences migrated to:
https://java.sun.com/xml/ns/j2ee/connector_1_5.xsd ([https](https://java.sun.com/xml/ns/j2ee/connector_1_5.xsd ) result 302).
* http://java.sun.com/xml/ns/javaee/web-fragment_3_0.xsd with 1 occurrences migrated to:
https://java.sun.com/xml/ns/javaee/web-fragment_3_0.xsd ([https](https://java.sun.com/xml/ns/javaee/web-fragment_3_0.xsd ) result 302).
* http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd with 12 occurrences migrated to:
https://java.sun.com/xml/ns/persistence/persistence_1_0.xsd ([https](https://java.sun.com/xml/ns/persistence/persistence_1_0.xsd ) result 302).
* http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd with 1 occurrences migrated to:
https://java.sun.com/xml/ns/persistence/persistence_2_0.xsd ([https](https://java.sun.com/xml/ns/persistence/persistence_2_0.xsd ) result 302).
# Ignored
These URLs were intentionally ignored.
* http://java.sun.com/xml/ns/j2ee with 2 occurrences
* http://java.sun.com/xml/ns/javaee with 2 occurrences
* http://java.sun.com/xml/ns/persistence with 27 occurrences
* http://localhost:8080 with 3 occurrences
* http://samples.springframework.org/flight with 3 occurrences
* http://www.foo.com/schema/component with 2 occurrences
* http://www.greeting.com/goodbye/ with 1 occurrences
* http://www.greeting.com/hello/ with 1 occurrences
* http://www.quartz-scheduler.org/xml/JobSchedulingData with 2 occurrences
* http://www.springframework.org/schema/aop with 176 occurrences
* http://www.springframework.org/schema/beans with 715 occurrences
* http://www.springframework.org/schema/beans/test with 2 occurrences
* http://www.springframework.org/schema/c with 9 occurrences
* http://www.springframework.org/schema/cache with 20 occurrences
* http://www.springframework.org/schema/context with 126 occurrences
* http://www.springframework.org/schema/jdbc with 66 occurrences
* http://www.springframework.org/schema/jee with 2 occurrences
* http://www.springframework.org/schema/jms with 20 occurrences
* http://www.springframework.org/schema/lang with 27 occurrences
* http://www.springframework.org/schema/mvc with 58 occurrences
* http://www.springframework.org/schema/oxm with 2 occurrences
* http://www.springframework.org/schema/p with 16 occurrences
* http://www.springframework.org/schema/task with 14 occurrences
* http://www.springframework.org/schema/tx with 12 occurrences
* http://www.springframework.org/schema/util with 28 occurrences
* http://www.springframework.org/schema/websocket with 22 occurrences
* http://www.w3.org/2001/XMLSchema-instance with 375 occurrences
* http://www.w3.org/2005/Atom with 2 occurrences
2019-03-21 15:07:40 -05:00
armansimonyan13
3e4f8905a7
Fix grammar issue ( #22628 )
2019-03-21 19:32:10 +01:00
Sebastien Deleuze
5a0ac42b85
Merge branch '5.1.x'
2019-03-21 19:17:22 +01:00
Sebastien Deleuze
d4714847a0
Restore 2 digit days format in HttpHeaders
...
As recommended by RFC 7231, this commit restore using 2 digit days
when formatting dates while still using
DateTimeFormatter.RFC_1123_DATE_TIME for parsing.
Closes gh-22478
2019-03-21 18:31:45 +01:00
Sebastien Deleuze
0d8fbb4c65
Merge branch '5.1.x'
2019-03-21 11:34:10 +01:00
Sebastien Deleuze
35010149f8
Fix Jackson builder modulesToInstall override behavior
...
This commit updates Jackson2ObjectMapperBuilder in order
to ensure that modules specified via modulesToInstall
eventually override the default ones.
Closes gh-22576
2019-03-21 11:24:03 +01:00
arman simonyan
b7f5d1f031
Fix grammar issues
2019-03-21 10:05:31 +01:00
Rossen Stoyanchev
4938831575
Register custom before default codecs
...
Closes gh-22612
2019-03-20 20:52:57 -04:00
Rossen Stoyanchev
e9819b7535
Raise ISE if @RequestBody is used for form data
...
Closes gh-22486
2019-03-20 20:30:36 -04:00
Arjen Poutsma
b67039d19a
Fix checkstyle issue
2019-03-20 20:29:43 +01:00
Rossen Stoyanchev
2e7f98d7f6
Merge branch '5.1.x'
2019-03-20 14:47:02 -04:00
Rossen Stoyanchev
c6a655275d
Allow overriding of FormHttpMessageWriter#getMediaType
...
Closes gh-22588
2019-03-20 14:46:38 -04:00
Arjen Poutsma
0e9ea2c94d
Fix review remarks on Servlet.fn
...
This commit incoporates the remarks made during the Servlet.fn review.
See gh-21490
2019-03-20 16:47:50 +01:00
Arjen Poutsma
2f682e1035
Polishing
2019-03-20 16:47:27 +01:00
Arjen Poutsma
e638fef508
Add Servlet.fn integration with DispatcherServlet
...
This commit adds support for HandlerFunctions and RouterFunctions to
DispatcherServlet, in the form of a HandlerAdapter and HandlerMapping.
See gh-21490
2019-03-20 16:47:27 +01:00
Arjen Poutsma
85082fc10c
Add Tests for Servlet.fn
...
This commit adds tests for Servlet.fn, the servlet-based version of
HandlerFunctions and RouterFunctions.
See gh-21490
2019-03-20 16:47:27 +01:00
Arjen Poutsma
5d2fd75cf9
Introduce Servlet.fn
...
This commit introduces Servlet.fn, a servlet-based version of
WebFlux.fn, i.e. HandlerFunctions and RouterFunctions.
This commit contains the web framework only, further commits provide
tests and DispatcherServlet integration.
See gh-21490
2019-03-20 16:47:27 +01:00
Rossen Stoyanchev
5f111098b1
Check for Reactor Netty disconnected client errors
...
Extend the list of disconnected client errors in HttpWebHandlerAdapter
to include the Reactor Netty AbortedException as well exceptions with
the message "connection reset by peer".
Closes gh-21790
2019-03-20 09:01:22 -04:00
Sam Brannen
7d498ba681
Fix Checkstyle error and polish Javadoc for ResourceHttpMessageReader
2019-03-20 11:03:54 +01:00
Rossen Stoyanchev
4a397f108a
ResourceDecoder supports filename hint
...
Closes gh-22267
2019-03-19 17:50:06 -04:00
Rossen Stoyanchev
5a3ff35215
Map arg resolver backs out if annotations present
...
Closes gh-21874
2019-03-19 16:41:26 -04:00
Rossen Stoyanchev
a2fcf0a821
ReactorNettyWebSocketSession uses correct frame size
...
See gh-22367
2019-03-19 15:42:06 -04:00
Rossen Stoyanchev
48ec875a7f
Merge branch '5.1.x'
2019-03-19 14:41:00 -04:00
Rossen Stoyanchev
c7401dbe1f
Fix @since typo
2019-03-19 14:40:34 -04:00
Rossen Stoyanchev
581e77c0fb
Merge branch '5.1.x'
2019-03-19 14:18:52 -04:00
Rossen Stoyanchev
f52c1fda3b
Polish
2019-03-19 14:18:33 -04:00
Sam Brannen
3e2dbd03b9
Merge branch '5.1.x'
2019-03-19 19:00:12 +01:00
Sam Brannen
ef11aa4583
Update documentation for WebJar support
...
Prior to this commit, documentation for WebJar support referenced the
webjars-locator artifact; however, Spring now uses the
webjars-locator-core artifact.
This commit updates the documentation to reflect this.
Closes gh-22613
2019-03-19 18:59:03 +01:00
Sam Brannen
2bbd52c9f3
Polishing
2019-03-19 18:46:05 +01:00
Arjen Poutsma
228cae216e
Merge branch '5.1.x'
2019-03-19 11:30:43 +01:00
Arjen Poutsma
4651039b1f
Use ChannelListener for Undertow zero-copy file transfers
...
This commit changes the UndertowServerHttpResponse to use a
listener-based approach instead of a blocking approach.
Closes gh-22413
2019-03-19 11:16:42 +01:00
Sam Brannen
0fc0849c0a
Upgrade to JUnit Jupiter 5.4.1
...
Closes gh-22308
2019-03-17 23:01:44 +01:00
Sam Brannen
2b88c47477
Polish Javadoc for application event infrastructure
2019-03-17 20:21:47 +01:00
Rossen Stoyanchev
e6d206b45a
Extra information in WebFlux stacktraces
...
Use the checkpoint operator at various places in WebFlux to insert
information that Reactor then uses to enrich exceptions, via suppressed
exceptions, when error signals flow through the operator.
Closes gh-22105
2019-03-15 16:25:43 -04:00
Sebastien Deleuze
495ba2f58c
Remove static import from InvocableHandlerMethod
...
See gh-19975
2019-03-15 19:38:14 +01:00
Sebastien Deleuze
9a81d0276e
Fix checkstyle issue
2019-03-15 19:02:33 +01:00
Sebastien Deleuze
1382220021
Add support for Deferred to ReactiveAdapterRegistry
...
See gh-19975
2019-03-15 18:22:19 +01:00
Sebastien Deleuze
1c9cbaf399
Introduce coroutinesVersion
...
See gh-19975
2019-03-15 18:22:06 +01:00
Sebastien Deleuze
22cf83edba
Add support for suspending handler methods in WebFlux
...
This commit turns Coroutines suspending methods to `Mono` which can be
handled natively by WebFlux.
See gh-19975
2019-03-15 18:21:50 +01:00
Sam Brannen
3cce85b402
Upgrade to latest Checkstyle Suppressions DTD
...
See https://github.com/checkstyle/checkstyle/blob/master/config/suppressions.xml
2019-03-15 16:49:41 +01:00
Sam Brannen
3967082c77
Upgrade to latest Checkstyle DTD
...
See http://checkstyle.sourceforge.net/config.html#Configuration_XML_Structure
2019-03-15 16:32:20 +01:00
Stephane Nicoll
a46a6e843b
Merge branch '5.1.x'
2019-03-15 10:51:59 +01:00
Stephane Nicoll
0552468998
Merge pull request #22597 from lwjli
...
* pr/22597:
Polish "Remove outdated link in documentation"
Remove outdated link in documentation
2019-03-15 10:51:41 +01:00
Stephane Nicoll
5e019e1769
Polish "Remove outdated link in documentation"
...
Closes gh-22597
2019-03-15 10:51:21 +01:00
lwjli
31a2b4ef46
Remove outdated link in documentation
...
See gh-22597
2019-03-15 10:50:13 +01:00
Sam Brannen
fef43048b2
Polish annotation-driven event listener support
2019-03-14 23:13:41 +01:00
Juergen Hoeller
0b53dbf38f
Allow usage of BeanNameGenerator in ImportBeanDefinitionRegistrars
...
Closes gh-22591
2019-03-14 17:35:04 +01:00
stsypanov
e94af52510
Use Arrays::fill instead of hand-written loop
2019-03-14 17:24:51 +01:00
stsypanov
29f382b04e
Simplify String concatenation
2019-03-14 17:24:33 +01:00
Sam Brannen
9d2e7ced89
Favor Math.[min|max]() over handcrafted code
...
In line with the general trend toward favoring core JDK APIs for common
tasks in Spring Framework 5.2, this commit replaces handcrafted
statements with Math.min() and Math.max() were applicable.
2019-03-14 16:48:44 +01:00
valery1707
9cf9d0fa21
Fix copy-n-paste error in Javadoc in ResponseEntityExceptionHandler
...
Closes gh-22589
2019-03-13 17:22:33 +01:00
Juergen Hoeller
840d80b994
Merge branch '5.1.x'
2019-03-13 16:24:01 +01:00
Juergen Hoeller
fcb3957884
Upgrade to Netty 4.1.34
2019-03-13 15:32:37 +01:00
Juergen Hoeller
fe56aa6fa4
Polishing
2019-03-13 15:32:24 +01:00
Juergen Hoeller
88049e9b5c
EventListenerMethodProcessor skips annotation search on java classes
...
Closes gh-22564
2019-03-13 15:32:14 +01:00
Sam Brannen
1e417146c9
Merge branch '5.1.x'
2019-03-13 15:28:58 +01:00
Sam Brannen
db56d348dc
Polishing
...
See gh-22577
2019-03-13 15:28:15 +01:00
Sam Brannen
f9e22a0f02
Merge branch '5.1.x'
2019-03-13 15:16:24 +01:00
Sam Brannen
8f7b118701
Ensure PDF version of Reference Manual does not contain HTML <strong> tags
...
Prior to this commit, the PDF version of the Spring Reference Manual
contained HTML <strong></strong> tags in code examples due to the fact
that Asciidoctor converts bold formatting (i.e., elements wrapped in
`**` or `*`) within source code blocks into HTML tags even for PDF
rendering.
This commit addresses this issue by removing all bold formatting from
example code blocks.
Closes gh-22577
2019-03-13 15:12:51 +01:00
Juergen Hoeller
4bee5073a0
Proper exception for non-matching argument on unique factory method
...
See gh-22420
2019-03-13 14:04:17 +01:00
Arjen Poutsma
88ca255c95
Fix checkstyle issue
2019-03-13 11:00:07 +01:00
Juergen Hoeller
c0ddaae5c0
Shared empty InjectionMetadata/LifecycleMetadata instance
...
Closes gh-22570
2019-03-12 22:45:24 +01:00
Juergen Hoeller
62c923711d
Consistent use of empty array constants in ReflectionUtils
...
Closes gh-22567
2019-03-12 22:44:15 +01:00
Juergen Hoeller
a7adafdb6a
Larger initial size for ASM type descriptor StringBuilder
...
Closes gh-22565
2019-03-12 22:44:00 +01:00
Rossen Stoyanchev
57a67a3c06
Header predicate option in AbstractRequestLoggingFilter
...
Closes gh-22244
2019-03-12 17:05:40 -04:00
Rossen Stoyanchev
19c024f91f
Improved logging for @MessageMapping methods
...
Closes gh-20564
2019-03-12 16:39:26 -04:00
Rossen Stoyanchev
b88aad6b39
Avoid payload conversion if unnecessary
...
Closes gh-22386
2019-03-12 16:17:39 -04:00
Rossen Stoyanchev
baa7e2e228
Merge pull request #22367 from envious/adding-maxframebuffersize
2019-03-12 15:59:19 -04:00
Rossen Stoyanchev
2d4247b2da
Polish
2019-03-12 15:58:25 -04:00
Usman
9f617be909
maxFramePayloadLength property in ReactorNettyWebSocketClient
...
Closes gh-22367
2019-03-12 15:41:45 -04:00
Rossen Stoyanchev
2b4cd5cf56
Fragment should be expanded last
...
Closes gh-22447
2019-03-12 15:10:35 -04:00
Sam Brannen
7dc522f0d6
Clean up warnings in Gradle build
2019-03-12 19:36:14 +01:00
Sam Brannen
79f416ddb8
Manual URL Cleanup
...
See gh-22515
2019-03-12 18:39:27 +01:00
Sam Brannen
00196ea14a
Merge branch 'spring-operator-polish-urls-build-5.1.x' into 5.1.x
2019-03-12 18:36:04 +01:00
Sam Brannen
7eb1a421f7
Manual URL Cleanup
...
Closes gh-22522
2019-03-12 17:52:46 +01:00
Spring Operator
9ca70dc1d3
URL Cleanup
...
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).
# Fixed URLs
## Fixed But Review Recommended
These URLs were fixed, but the https status was not OK. However, the https status was the same as the http request or http redirected to an https URL, so they were migrated. Your review is recommended.
* http://quartz-scheduler.org/api/2.2.1/ (301) migrated to:
https://www.quartz-scheduler.org/api/2.2.1/ ([https](https://quartz-scheduler.org/api/2.2.1/ ) result 404).
## Fixed Success
These URLs were fixed successfully.
* http://docs.jboss.org/jbossas/javadoc/4.0.5/connector/ migrated to:
https://docs.jboss.org/jbossas/javadoc/4.0.5/connector/ ([https](https://docs.jboss.org/jbossas/javadoc/4.0.5/connector/ ) result 200).
* http://docs.jboss.org/jbossas/javadoc/7.1.2.Final/ migrated to:
https://docs.jboss.org/jbossas/javadoc/7.1.2.Final/ ([https](https://docs.jboss.org/jbossas/javadoc/7.1.2.Final/ ) result 200).
* http://docs.oracle.com/cd/E13222_01/wls/docs90/javadocs/ migrated to:
https://docs.oracle.com/cd/E13222_01/wls/docs90/javadocs/ ([https](https://docs.oracle.com/cd/E13222_01/wls/docs90/javadocs/ ) result 200).
* http://docs.oracle.com/javaee/7/api/ migrated to:
https://docs.oracle.com/javaee/7/api/ ([https](https://docs.oracle.com/javaee/7/api/ ) result 200).
* http://docs.oracle.com/javase/8/docs/api/ migrated to:
https://docs.oracle.com/javase/8/docs/api/ ([https](https://docs.oracle.com/javase/8/docs/api/ ) result 200).
* http://fasterxml.github.io/jackson-core/javadoc/2.9/ migrated to:
https://fasterxml.github.io/jackson-core/javadoc/2.9/ ([https](https://fasterxml.github.io/jackson-core/javadoc/2.9/ ) result 200).
* http://fasterxml.github.io/jackson-databind/javadoc/2.9/ migrated to:
https://fasterxml.github.io/jackson-databind/javadoc/2.9/ ([https](https://fasterxml.github.io/jackson-databind/javadoc/2.9/ ) result 200).
* http://fasterxml.github.io/jackson-dataformat-xml/javadoc/2.9/ migrated to:
https://fasterxml.github.io/jackson-dataformat-xml/javadoc/2.9/ ([https](https://fasterxml.github.io/jackson-dataformat-xml/javadoc/2.9/ ) result 200).
* http://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/ migrated to:
https://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/ ([https](https://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/ ) result 200).
* http://issues.gradle.org/browse/GRADLE-1116 migrated to:
https://issues.gradle.org/browse/GRADLE-1116 ([https](https://issues.gradle.org/browse/GRADLE-1116 ) result 200).
* http://projectreactor.io/docs/core/release/api/ migrated to:
https://projectreactor.io/docs/core/release/api/ ([https](https://projectreactor.io/docs/core/release/api/ ) result 200).
* http://tiles.apache.org/framework/apidocs/ migrated to:
https://tiles.apache.org/framework/apidocs/ ([https](https://tiles.apache.org/framework/apidocs/ ) result 200).
* http://tiles.apache.org/tiles-request/apidocs/ migrated to:
https://tiles.apache.org/tiles-request/apidocs/ ([https](https://tiles.apache.org/tiles-request/apidocs/ ) result 200).
* http://www.apache.org/licenses/LICENSE-2.0 migrated to:
https://www.apache.org/licenses/LICENSE-2.0 ([https](https://www.apache.org/licenses/LICENSE-2.0 ) result 200).
* http://www.eclipse.org/aspectj/doc/released/aspectj5rt-api/ migrated to:
https://www.eclipse.org/aspectj/doc/released/aspectj5rt-api/ ([https](https://www.eclipse.org/aspectj/doc/released/aspectj5rt-api/ ) result 200).
* http://www.reactive-streams.org/reactive-streams-1.0.1-javadoc/ migrated to:
https://www.reactive-streams.org/reactive-streams-1.0.1-javadoc/ ([https](https://www.reactive-streams.org/reactive-streams-1.0.1-javadoc/ ) result 200).
* http://docs.spring.io/spring-framework/docs migrated to:
https://docs.spring.io/spring-framework/docs ([https](https://docs.spring.io/spring-framework/docs ) result 301).
* http://glassfish.java.net/nonav/docs/v3/api/ migrated to:
https://glassfish.java.net/nonav/docs/v3/api/ ([https](https://glassfish.java.net/nonav/docs/v3/api/ ) result 301).
* http://pic.dhe.ibm.com/infocenter/wasinfo/v7r0/topic/com.ibm.websphere.javadoc.doc/web/apidocs/ migrated to:
https://pic.dhe.ibm.com/infocenter/wasinfo/v7r0/topic/com.ibm.websphere.javadoc.doc/web/apidocs/ ([https](https://pic.dhe.ibm.com/infocenter/wasinfo/v7r0/topic/com.ibm.websphere.javadoc.doc/web/apidocs/ ) result 301).
* http://projects.spring.io/spring-framework migrated to:
https://projects.spring.io/spring-framework ([https](https://projects.spring.io/spring-framework ) result 301).
* http://springframework.org/schema migrated to:
https://springframework.org/schema ([https](https://springframework.org/schema ) result 301).
* http://ehcache.org/apidocs/2.10.4 (301) migrated to:
https://www.ehcache.org/apidocs/2.10.4 ([https](https://ehcache.org/apidocs/2.10.4 ) result 301).
2019-03-12 17:50:04 +01:00
Juergen Hoeller
40c62139ae
Early resolution of unique factory methods in configuration classes
...
Includes consistent bean class resolution in the enhancement step as well as general reflection optimizations for user-declared methods.
Closes gh-22420
2019-03-12 17:17:24 +01:00
Сергей Цыпанов
a35adc6ea6
Add missing break statements to stop looping when result is known
...
Closes gh-22573
2019-03-12 13:15:59 +01:00
Stephane Nicoll
96cd4411e5
Merge branch '5.1.x'
2019-03-12 09:10:49 +01:00
Stephane Nicoll
78bdb58356
Merge pull request #22572 from jorgheymans
...
* pr/22572:
Polish "Align RdbmsOperation javadoc with jdbcTemplate defaults"
Align RdbmsOperation javadoc with jdbcTemplate defaults
2019-03-12 09:10:29 +01:00
Stephane Nicoll
620ee018e7
Polish "Align RdbmsOperation javadoc with jdbcTemplate defaults"
...
Closes gh-22572
2019-03-12 09:09:34 +01:00
Jorg Heymans
abb178d0d5
Align RdbmsOperation javadoc with jdbcTemplate defaults
...
See gh-22572
2019-03-12 09:08:21 +01:00
Juergen Hoeller
e3a9826e56
Bypass method traversal for annotation introspection if possible
...
The isCandidateClass mechanism is consistently used for a bypass check before method traversal attempts. While by default this is only bypassing standard java types, the same mechanism can be used with index metadata which indicates non-presence of certain annotations.
See gh-22420
2019-03-12 00:12:22 +01:00
Sebastien Deleuze
6266370a7a
Polishing
2019-03-11 15:34:46 +01:00
Sebastien Deleuze
aabfc5f0a1
Support primitive types in BeanUtils.instantiateClass args
...
This commit adds support for primitive default values for
BeanUtils.instantiateClass arguments in Java in order to provide
a consistent behavior in both Java and Kotlin languages.
Closes gh-22531
2019-03-11 15:34:46 +01:00
Rossen Stoyanchev
256f8549d0
Merge branch '5.1.x'
2019-03-11 09:23:23 -04:00
Rossen Stoyanchev
b343e73eb0
Add streaming responses to Spring MVC Test section
...
Closes gh-22544
2019-03-11 09:13:49 -04:00
Rossen Stoyanchev
620a898e60
Fix typo in documentation
...
See gh-22394
2019-03-11 08:42:23 -04:00
Sam Brannen
b09e6c8aaf
Polishing
2019-03-09 16:53:09 +01:00
Tomasz Linkowski
8ddb1e7201
Fix a typo in @NonNullFields
...
Prior to this commit, `@NonNullFields` had a redundant `@see NonNullFields`
declaration instead of `@see NonNullApi` in its JavaDoc.
Closes gh-22553
2019-03-09 16:46:15 +01:00
Sam Brannen
b109f140a7
Improve documentation for annotation filters with component scanning
...
Prior to this commit the documentation for annotation-based include and
exclude filters used with component scanning did not explicitly mention
the fact that annotations are considered a match if they are either
present or meta-present on candidate classes.
This commit improves the documentation in this regard.
See gh-22551
2019-03-09 16:30:30 +01:00
Juergen Hoeller
c04eaf6b84
Merge branch '5.1.x'
2019-03-08 23:06:37 +01:00
Juergen Hoeller
fe0c2d6b6e
StringUtils.toStringArray/CollectionUtils.toIterator handle null input
...
Closes gh-22547
2019-03-08 22:40:18 +01:00
Juergen Hoeller
1a8b3fba94
Configuration classes can opt into lite mode (proxyBeanMethods=false)
...
Closes gh-22461
2019-03-08 15:59:11 +01:00
Juergen Hoeller
f5248ff13f
Upgrade to ASM 7.1
...
Closes gh-22503
2019-03-08 09:58:16 +01:00
Juergen Hoeller
a06ab6d0ad
Polishing
2019-03-08 09:54:44 +01:00
Lars Grefer
a98e3f0481
Migrate CacheControl to use java.time.Duration for durations
2019-03-08 09:12:19 +01:00
Sam Brannen
238286caaf
Update @since tag in Eclipse code template
2019-03-07 19:25:44 +01:00
Sam Brannen
45ae47d5cb
Polishing
2019-03-07 18:13:17 +01:00
Juergen Hoeller
ac4c37d8e2
Merge branch '5.1.x'
2019-03-07 18:05:46 +01:00
Juergen Hoeller
6c87ef09c1
Polishing
2019-03-07 17:55:32 +01:00
Juergen Hoeller
17930d6c27
Consistent formatting and related polishing
2019-03-07 17:25:48 +01:00
stsypanov
60b72d721d
Polish: do simple clean-up
2019-03-07 16:51:44 +01:00
stsypanov
cb4d6f097c
Use StringJoiner where possible to simplify String joining
2019-03-07 16:51:18 +01:00
Sam Brannen
f087fd5a93
Report offending class in SpringFactoriesLoader in exception message
...
Prior to this commit, the exception message generated by
instantiateFactory() in SpringFactoriesLoader did not report the
offending class in the top-level exception message. The offending class
was in fact included in the message of the nested exception, but the
top-level exception message on its own was a bit misleading.
This commit improves the diagnostics for such failures by including the
offending class and the target factory type in the top-level exception
message.
Closes gh-22453
2019-03-06 16:44:41 +01:00
Juergen Hoeller
0b8733747c
Upgrade to SnakeYAML 1.24 and HtmlUnit 2.34.1
2019-03-06 16:40:06 +01:00
Juergen Hoeller
5c1776ae8f
Merge branch '5.1.x'
2019-03-06 16:26:00 +01:00
Juergen Hoeller
b8f29962ac
Upgrade to SLF4J 1.7.26, H2 1.4.198, OkHttp 3.13.1, WebJars Locator 0.37
...
Includes Mockito 2.25, Undertow 2.0.19, OpenPDF 1.2.10, JRuby 9.2.6.
2019-03-06 16:24:14 +01:00
Juergen Hoeller
9cc862246f
Local https URL resolution attempt with fallback to parser's default
...
See gh-22504
2019-03-06 16:23:45 +01:00
Sam Brannen
7abe9c6a08
Polishing
2019-03-06 14:22:16 +01:00
Juergen Hoeller
777b4c809d
Merge branch '5.1.x'
2019-03-06 14:06:06 +01:00
Juergen Hoeller
7cbb3b06a0
Consistent local vs external resolution of https schema references
...
Closes gh-22504
2019-03-06 13:50:40 +01:00
www
fd5a7c2dcc
Fix Javadoc for AbstractApplicationContext.registerBeanPostProcessors()
...
Closes gh-22513
2019-03-06 12:12:17 +01:00
Konrad Kamiński
9302cb2f85
Support Kotlin suspending functions in MethodParameter
...
Before this commit, the return type for Kotlin suspending functions
(as returned by MethodParameter#getParameterType and
MethodParameter#getGenericReturnType methods) was incorrect.
This change leverages Kotlin reflection instead of Java one
to return the correct type.
Closes gh-21058
2019-03-06 10:14:34 +01:00
Spring Operator
5938742afd
URL Cleanup ( #22515 )
...
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).
# Fixed URLs
## Fixed Success
These URLs were fixed successfully.
* http://docs.jboss.org/jbossas/javadoc/4.0.5/connector/ migrated to:
https://docs.jboss.org/jbossas/javadoc/4.0.5/connector/ ([https](https://docs.jboss.org/jbossas/javadoc/4.0.5/connector/ ) result 200).
* http://docs.jboss.org/jbossas/javadoc/7.1.2.Final/ migrated to:
https://docs.jboss.org/jbossas/javadoc/7.1.2.Final/ ([https](https://docs.jboss.org/jbossas/javadoc/7.1.2.Final/ ) result 200).
* http://docs.oracle.com/javaee/7/api/ migrated to:
https://docs.oracle.com/javaee/7/api/ ([https](https://docs.oracle.com/javaee/7/api/ ) result 200).
* http://docs.oracle.com/javase/8/docs/api/ migrated to:
https://docs.oracle.com/javase/8/docs/api/ ([https](https://docs.oracle.com/javase/8/docs/api/ ) result 200).
* http://fasterxml.github.io/jackson-core/javadoc/2.9/ migrated to:
https://fasterxml.github.io/jackson-core/javadoc/2.9/ ([https](https://fasterxml.github.io/jackson-core/javadoc/2.9/ ) result 200).
* http://fasterxml.github.io/jackson-databind/javadoc/2.9/ migrated to:
https://fasterxml.github.io/jackson-databind/javadoc/2.9/ ([https](https://fasterxml.github.io/jackson-databind/javadoc/2.9/ ) result 200).
* http://fasterxml.github.io/jackson-dataformat-xml/javadoc/2.9/ migrated to:
https://fasterxml.github.io/jackson-dataformat-xml/javadoc/2.9/ ([https](https://fasterxml.github.io/jackson-dataformat-xml/javadoc/2.9/ ) result 200).
* http://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/ migrated to:
https://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/ ([https](https://hc.apache.org/httpcomponents-client-ga/httpclient/apidocs/ ) result 200).
* http://issues.gradle.org/browse/GRADLE-1116 migrated to:
https://issues.gradle.org/browse/GRADLE-1116 ([https](https://issues.gradle.org/browse/GRADLE-1116 ) result 200).
* http://projectreactor.io/docs/core/release/api/ migrated to:
https://projectreactor.io/docs/core/release/api/ ([https](https://projectreactor.io/docs/core/release/api/ ) result 200).
* http://tiles.apache.org/framework/apidocs/ migrated to:
https://tiles.apache.org/framework/apidocs/ ([https](https://tiles.apache.org/framework/apidocs/ ) result 200).
* http://tiles.apache.org/tiles-request/apidocs/ migrated to:
https://tiles.apache.org/tiles-request/apidocs/ ([https](https://tiles.apache.org/tiles-request/apidocs/ ) result 200).
* http://www.apache.org/licenses/LICENSE-2.0 migrated to:
https://www.apache.org/licenses/LICENSE-2.0 ([https](https://www.apache.org/licenses/LICENSE-2.0 ) result 200).
* http://www.eclipse.org/aspectj/doc/released/aspectj5rt-api/ migrated to:
https://www.eclipse.org/aspectj/doc/released/aspectj5rt-api/ ([https](https://www.eclipse.org/aspectj/doc/released/aspectj5rt-api/ ) result 200).
* http://www.reactive-streams.org/reactive-streams-1.0.1-javadoc/ migrated to:
https://www.reactive-streams.org/reactive-streams-1.0.1-javadoc/ ([https](https://www.reactive-streams.org/reactive-streams-1.0.1-javadoc/ ) result 200).
* http://docs.spring.io/spring-framework/docs migrated to:
https://docs.spring.io/spring-framework/docs ([https](https://docs.spring.io/spring-framework/docs ) result 301).
* http://glassfish.java.net/nonav/docs/v3/api/ migrated to:
https://glassfish.java.net/nonav/docs/v3/api/ ([https](https://glassfish.java.net/nonav/docs/v3/api/ ) result 301).
* http://projects.spring.io/spring-framework migrated to:
https://projects.spring.io/spring-framework ([https](https://projects.spring.io/spring-framework ) result 301).
* http://springframework.org/schema migrated to:
https://springframework.org/schema ([https](https://springframework.org/schema ) result 301).
* http://ehcache.org/apidocs/2.10.4 (301) migrated to:
https://www.ehcache.org/apidocs/2.10.4 ([https](https://ehcache.org/apidocs/2.10.4 ) result 301).
2019-03-05 23:21:36 +01:00
Juergen Hoeller
18f2e6a12d
AnnotationConfigRegistry exposes registerBean with supplier/qualifiers
...
Closes gh-22457
2019-03-05 18:26:04 +01:00
Juergen Hoeller
eeed20d8d9
Polishing
2019-03-05 18:25:36 +01:00
Sam Brannen
c0b6488ed5
Fix typo
2019-03-05 16:47:26 +01:00
www
ef91313342
Use String::isEmpty instead of "".equals(arg) when arg is not null
2019-03-05 14:32:56 +01:00
Juergen Hoeller
b2b0df893a
Merge branch '5.1.x'
2019-03-05 14:20:02 +01:00
Juergen Hoeller
d034c053b3
Jackson2Tokenizer passes DeserializationContext into all TokenBuffers
...
See gh-22510
2019-03-05 13:47:26 +01:00
Juergen Hoeller
216e4eeba4
General doc revision: configuration updates, consistent formatting etc
2019-03-05 13:08:34 +01:00
Juergen Hoeller
3eb1042a53
Revised AOP documentation: load-time weaving, CGLIB etc
...
Includes removal of outdated Spring 1.2/2.0 references.
Closes gh-22429
2019-03-05 13:08:24 +01:00
Juergen Hoeller
013c0bca92
Polishing
2019-03-05 13:08:11 +01:00
Juergen Hoeller
f6693e790a
Jackson2Tokenizer passes DeserializationContext into TokenBuffer
...
Closes gh-22510
2019-03-05 13:08:04 +01:00
Juergen Hoeller
6c599208f6
Remove javadoc reference to unsupported FieldInterceptor
...
Closes gh-22507
2019-03-05 13:07:57 +01:00
Sebastien Deleuze
412c673db2
Add missing MockMvc.head Kotlin extension
...
See gh-1951
2019-03-05 09:35:39 +01:00
Rossen Stoyanchev
1ec3261062
Initial support for RSocket in spring-messaging
2019-03-04 23:36:27 -05:00
Rossen Stoyanchev
9e7f557b4a
Updates for buffer management in RSocket
...
- Integration tests run with zero copy configuration.
- RSocketBufferLeakTests has been added.
- Updates in MessagingRSocket to ensure proper release
See gh-21987
2019-03-04 23:35:43 -05:00
Rossen Stoyanchev
23b39ad27b
Explicit handling of void return values
...
Do give HandlerMethodReturnValueHandler's a chance to handle return
values so the RSocket reply header is always set.
See gh-21987
2019-03-04 23:35:43 -05:00
Rossen Stoyanchev
fa95b010cb
Direct delegation to RSocketMessageHandler
...
Simplify handling by eliminating the use of a message channel. Instead
MessageHandlerAcceptor now extends from RSocketMessageHandler and
delegates directly to it.
See gh-21987
2019-03-04 23:35:43 -05:00
Rossen Stoyanchev
555dca9aff
Refactoring in AbstractMethodMessageHandler
...
Split out the mechanics of invoking a HandlerMethod and handling the
result into a separate helper class.
See gh-21987
2019-03-04 23:35:43 -05:00
Rossen Stoyanchev
4e1c0c6826
@MessageExceptionHandler supports error signal
...
Before this change if a controller method returned a Publisher whose
first signal was an error, the error signal would not be delegated to
a @MessageExceptionHandler method as expected.
To make this work for now we use a package private local copy of the
ChannelSendOperator from spring-web.
See gh-21987
2019-03-04 23:35:43 -05:00
Rossen Stoyanchev
d6f4ec8c33
MessagingAcceptor/RSocket refinements + upgrade to 0.11.17
...
See gh-21987
2019-03-04 23:35:43 -05:00
Rossen Stoyanchev
8bdd709683
RSocketRequester, RSocketStrategies, PayloadUtils
...
See gh-21987
2019-03-04 23:35:43 -05:00
Rossen Stoyanchev
4e78b5df2f
RSocket @MessageMapping handling
...
See gh-21987
2019-03-04 23:35:43 -05:00
Rossen Stoyanchev
f2bb95ba7b
Payload encoding/decoding and handling refinements
...
See gh-21987
2019-03-04 23:35:43 -05:00
Rossen Stoyanchev
33682d74c2
ReactiveMessageChannel and ReactiveSubscribableChannel
...
See gh-21987
2019-03-04 23:35:43 -05:00
Rossen Stoyanchev
ceccd9fbee
Polish
...
Updates to synchronize with newly created reactive equivalents.
2019-03-04 23:35:43 -05:00
Rossen Stoyanchev
5b3b0b1a7b
Polish
...
The package o.s.messaging.handler.annotation.support was missing
@NonnullApi and @NonNullFields. This commit corrects that and also
adds @Nullable to methods and arguments as needed to address
warnings.
2019-03-04 23:35:43 -05:00
Rossen Stoyanchev
567c559da8
Resolvers for destination vars and headers
...
See gh-21987
2019-03-04 23:35:43 -05:00
Rossen Stoyanchev
dda40c1516
Reactive @MessageMapping
...
See gh-21987
2019-03-04 23:35:43 -05:00
Rossen Stoyanchev
421090ca35
Reactive AbstractMessageMethodHandler
...
See gh-21987
2019-03-04 23:35:43 -05:00
Rossen Stoyanchev
e3e1ffc986
Encoder/Decoder based payload serialization
...
See gh-21987
2019-03-04 23:35:43 -05:00
Rossen Stoyanchev
bcf4f3911b
Reactive InvocableHandlerMethod in spring-messaging
...
See gh-21987
2019-03-04 23:35:43 -05:00
Sebastien Deleuze
9e873af6ab
Remove infix qualifier from ResultActionsDsl methods
...
The infix form limits the extensibility of the API and
prevents calling `andReturn()`.
See gh-1951
2019-03-04 19:17:21 +01:00
Sebastien Deleuze
0c332286f1
Add MockMvc Kotlin DSL
...
This commit introduces a `MockMvc` Kotlin DSL via a set of
extensions like `MockMvc.get` or `MockMvc.request`
that provide a Kotlin idiomatic and easily discoverable
API while staying close to the original Java API design.
Closes gh-1951
2019-03-04 18:00:49 +01:00
Sam Brannen
b7d60b9b89
Improve @EventListener documentation
2019-03-04 14:44:44 +01:00
Sam Brannen
70cf597484
Remove obsolete overview.html files
2019-03-04 14:07:48 +01:00
Brian Clozel
3ac1dddb9d
Merge branch '5.1.x'
2019-03-04 13:58:41 +01:00
Andrew Tulloch
090aceb3ad
Fix repeated calls to DataBuffer.write(CharSequence, Charset)
...
Prior to this commit, repeated calls to `DataBuffer.write(CharSequence,
Charset)` would not write the given chars to the expected position in
the original buffer.
This commit fixes that by writing to the `outBuffer.position()`, offset
by the current `DataBuffer.writePosition()`.
Fixes gh-22484
2019-03-04 13:37:06 +01:00
Stephane Nicoll
45b6c0fcb5
Merge branch '5.1.x'
2019-03-04 09:42:10 +01:00
Stephane Nicoll
2137cc4422
Merge pull request #22500 from DamianChlod
...
* pr/22500:
Fix typo in `my-property'
2019-03-04 09:41:42 +01:00
DamianChlod
fe458aabde
Fix typo in `my-property'
...
Closes gh-22500
2019-03-04 09:40:58 +01:00
Sam Brannen
0ca5afd8e4
Fix broken test
2019-03-03 23:08:44 +01:00
Sam Brannen
e7bd305e87
Suppress warnings in tests
2019-03-03 22:17:52 +01:00
Sam Brannen
4112ca7da8
Separate async/sync TestContext event listeners in tests
...
See gh-18490
2019-03-03 21:30:49 +01:00
Sam Brannen
6daf33deff
Document that @Async is not supported in @Configuration classes
2019-03-03 18:29:45 +01:00
Sam Brannen
a9f251db42
Fix broken Javadoc links
2019-03-03 17:18:18 +01:00
Sam Brannen
8e2b14a2b6
Fix Javadoc links to Quartz
...
See https://github.com/quartz-scheduler/quartz-scheduler.org-site/issues/42
2019-03-03 17:04:34 +01:00
Sam Brannen
b5fb7437c9
Test exception handling for TestContext event annotations
...
This commit introduces tests for both synchronous and asynchronous
exception handling for TestContext event annotations.
See gh-18490
2019-03-03 16:36:00 +01:00
Sam Brannen
6853d50ddb
Polishing
2019-03-03 16:29:49 +01:00
Sam Brannen
e272e2e151
Support conditional processing in TestContext event annotations
...
This commit introduces support for SpEL expressions for conditional
event processing in annotations such as @BeforeTestClass,
@BeforeTestMethod, etc.
This commit also introduces a new getTestContext() method in
TestContextEvent in order to improve the readability of such SpEL
expressions.
See gh-18490
2019-03-02 17:26:57 +01:00
Sam Brannen
f6d62eda8b
Add missing @Nullable declarations to TestContext return values
2019-03-02 16:36:23 +01:00
Sam Brannen
8649061acc
Polish Javadoc for TestContext
2019-03-02 16:25:23 +01:00
Sam Brannen
abda6a6c66
Polishing
2019-03-02 16:17:58 +01:00
Sam Brannen
d4f544d42f
Add missing precondition check to AutowireUtils.resolveDependency
...
See gh-2060
2019-03-02 14:39:43 +01:00
Sam Brannen
02be21d0dc
Polishing
2019-03-02 14:22:28 +01:00
Sam Brannen
7d926a847d
Polish tests for TestContext lifecycle events
...
See gh-18490
2019-03-01 21:26:37 +01:00
Sam Brannen
a16dd95ab7
Polishing
2019-03-01 20:39:25 +01:00
Sam Brannen
74e9825a65
Fix CheckStyle violation
2019-03-01 20:18:04 +01:00
Sam Brannen
416346200f
Polishing
2019-03-01 20:07:09 +01:00
Sam Brannen
297fd7629a
Polishing
2019-03-01 19:34:13 +01:00
Sam Brannen
dd1330d05e
Fix CheckStyle violations
...
See gh-18490
2019-03-01 17:40:32 +01:00
Sam Brannen
2d6624de71
Polish support for publishing TestContext lifecycle events
...
See gh-18490
2019-03-01 15:25:35 +01:00
Frank Scheffler
34fee867d2
Provide support for publishing TestContext lifecycle events
...
This commit introduces a new EventPublishingTestExecutionListener for
publishing events to the test ApplicationContext. These may be consumed
by @EventListener annotated methods to react to the TestContext
lifecycle. The listener is not registered by default.
Closes gh-18490
2019-03-01 15:22:54 +01:00
Juergen Hoeller
a7db395d9b
Merge branch '5.1.x'
2019-02-28 19:29:04 +01:00
Juergen Hoeller
5d8a34fee6
Only prefer JDK 9+ Lookup.defineClass API if ClassLoader matches
...
Closes gh-22416
2019-02-28 19:28:03 +01:00
Juergen Hoeller
7a7c7f51e3
Polishing
2019-02-28 15:37:47 +01:00
Juergen Hoeller
c41616e82d
Merge branch '5.1.x'
2019-02-28 11:14:49 +01:00
Juergen Hoeller
9c42fd7f17
JdbcTemplate preserves order of stored procedure output parameters
...
Closes gh-22491
2019-02-28 11:13:51 +01:00
Juergen Hoeller
fc7948c96b
Merge branch '5.1.x'
2019-02-27 17:34:46 +01:00
Juergen Hoeller
e583da0725
Polishing
2019-02-27 17:26:53 +01:00
Juergen Hoeller
0288878bcc
Consistent handling of early FactoryBean instantiation failures
...
Closes gh-22409
2019-02-27 17:26:35 +01:00
pelladigabor
a07245caf8
Exclude jdk package in ShadowingClassLoader
...
Many Java 11 internal classes are located in the jdk package. ShadowingClassLoader should not load them, because it can cause errors, e.g. java.lang.IllegalAccessError: class jdk.internal.reflect.ConstructorAccessorImpl loaded by org.springframework.instrument.classloading.ShadowingClassLoader @2bea5ab4 cannot access jdk/internal/reflect superclass jdk.internal.reflect.MagicAccessorImpl
2019-02-27 16:57:08 +01:00
Sam Brannen
f2a5415111
Fix CheckStyle violations
...
See gh-2060
2019-02-27 16:41:00 +01:00
Sam Brannen
40da78e9df
Polishing
2019-02-27 16:30:05 +01:00
Sam Brannen
6f6be27aae
Polish AutowireUtils[Tests]
...
See gh-2060
2019-02-27 16:25:34 +01:00
Loïc Ledoyen
d77b36bf3b
Open parameter autowiring utility for external use ( #2060 )
...
* Make AutowireUtils public and protect its current API
* Move ParameterAutowireUtils features to AutowireUtils
Closes gh-2060
2019-02-27 15:15:45 +01:00
Sam Brannen
3a42f1154d
Polishing
2019-02-27 14:03:11 +01:00
Stephane Nicoll
846ec31dfe
Merge branch '5.1.x'
2019-02-27 13:57:40 +01:00
Stephane Nicoll
46a39dbf99
Merge pull request #22482 from izeye
...
* pr/22482:
Polish
2019-02-27 13:57:24 +01:00
Johnny Lim
046531fc75
Polish
...
Closes gh-22482
2019-02-27 13:57:09 +01:00
Juergen Hoeller
3a641d9297
Merge branch '5.1.x'
2019-02-26 17:50:35 +01:00
Juergen Hoeller
79f91b4867
Upgrade to Hibernate ORM 5.3.9 and EclipseLink 2.7.4
2019-02-26 17:42:55 +01:00
Juergen Hoeller
490b23518b
Polishing
2019-02-26 17:42:49 +01:00
Juergen Hoeller
227c813c64
Revised AbstractAdvisorAutoProxyCreator javadoc
...
Closes gh-22473
2019-02-26 17:42:43 +01:00
Juergen Hoeller
00ed8da5c5
JmsTransactionManager supports lazy resource retrieval
...
Closes gh-22468
2019-02-26 17:42:36 +01:00
Sam Brannen
a7770e7448
Remove ApplicationContext dependency from ParameterAutowireUtils
...
This commit is a prerequisite for gh-2060.
2019-02-26 15:22:25 +01:00
Stephane Nicoll
49bbbb060d
Merge pull request #22472 from izeye
...
* pr/22472:
Polish
2019-02-26 08:57:16 +01:00
Johnny Lim
e21d94f91b
Polish
...
Closes gh-22472
2019-02-26 08:57:03 +01:00
Juergen Hoeller
7158acb8df
Merge branch '5.1.x'
2019-02-25 23:20:42 +01:00
Juergen Hoeller
8d9ef46d98
Upgrade to Checkstyle 8.18 and RxJava 2.2.7
2019-02-25 23:18:56 +01:00
Juergen Hoeller
6a7a4a2145
Upgrade to Caffeine 2.7
2019-02-25 23:15:01 +01:00
Juergen Hoeller
5c2f3079fd
Sync between MockHttpServletResponse copies
...
See gh-22466
2019-02-25 23:14:37 +01:00
www
c31613dc74
Instantiate ArrayList class with a exact initial capacity
2019-02-25 23:13:35 +01:00
Juergen Hoeller
bc0317af3b
Merge branch '5.1.x'
2019-02-25 17:57:49 +01:00
Juergen Hoeller
9eb7f7e294
Polishing
2019-02-25 17:36:37 +01:00
Juergen Hoeller
cb54f201c2
Break out of loop once an AspectJ advice has been found
...
Closes gh-22449
2019-02-25 17:24:02 +01:00
Juergen Hoeller
f07014ad37
MappingJackson2MessageConverter delegates default encoding to Jackson
...
Closes gh-22444
2019-02-25 17:21:08 +01:00
Juergen Hoeller
4be41e9e26
Only use payload if it actually matches declared event type
...
Closes gh-22426
2019-02-25 17:18:07 +01:00
Sam Brannen
d61c3d429c
Improve Javadoc and exception message for LTW classes
2019-02-25 14:21:23 +01:00
Sam Brannen
8dc82b9689
Re-enable @Ignore'd TxMgt integration test
...
See: gh-12857
2019-02-25 14:21:23 +01:00
Johnny Lim
625e210676
Polish
2019-02-25 12:17:53 +01:00
stsypanov
1c24dc1f27
Simplify String concatenation
2019-02-25 12:13:35 +01:00
Sebastien Deleuze
dc8fb8bc5e
Use StringJoiner where possible to simplify String joining
2019-02-25 12:11:57 +01:00
Stephane Nicoll
766a23bd93
Merge pull request #22463 from rupertw
...
* pr/22463:
Polish
2019-02-25 08:42:56 +01:00
www
f2aa374b73
Polish
...
Closes gh-22463
2019-02-25 08:41:00 +01:00
Sam Brannen
9093b870dd
Move mavenLocal() to bottom of repositories list
...
This commit moves mavenLocal() to the bottom of the repositories list
so that Gradle's Eclipse IDE support will properly link binary JARs to
their source JARS in generated Eclipse .classpath files.
According to Gradle experts, "`mavenLocal` should basically never be
the first repo in the list."
https://github.com/eclipse/buildship/issues/655#issuecomment-366227296
2019-02-23 00:50:57 +01:00
Sam Brannen
9f751ef914
Polish contribution
...
See: gh-456
2019-02-22 19:19:59 +01:00
Adib Saikali
b4fc7b410b
Document that @Transactional is not supported on test lifecycle methods
...
This commit adds a tip clarifying that TestNG's @BeforeClass and
@BeforeSuite methods can not be annotated with Spring's @Transactional
annotation.
Closes: gh-456
2019-02-22 17:56:19 +01:00
Juergen Hoeller
0652e4b485
Merge branch '5.1.x'
2019-02-22 14:51:00 +01:00
Juergen Hoeller
707b8c02fe
Upgrade to Jetty 9.4.15 and Undertow 2.0.18
2019-02-22 14:18:39 +01:00
Juergen Hoeller
c3fa900672
Upgrade to Hibernate Validator 5.4.3 and 6.0.15
2019-02-22 14:18:08 +01:00
Sebastien Deleuze
e5a595e77d
Merge branch '5.1.x'
2019-02-22 09:50:28 +01:00
Sebastien Deleuze
f19d7c0375
Fix AbstractTraceInterceptor null-safety annotations
...
Closes gh-22435
2019-02-22 09:47:14 +01:00
Brian Clozel
fb66619187
Merge branch '5.1.x'
2019-02-21 17:52:17 +01:00
Brian Clozel
e47f7ef7b5
Remove response content-type before error handling
...
Prior to this commit, the negotiated content-type during the request
mapping phase would be kept as the response content-type header; this
information is used when rendering the error response and prevents a new
round of content negotiation to choose the media type that fits best.
This commit removes the response content type information at the
beginning of the error handling phase.
Fixes gh-22452
2019-02-21 17:44:03 +01:00
Sebastien Deleuze
25d7f09f8d
Polishing
2019-02-18 14:50:27 +01:00
Sebastien Deleuze
caa1730169
Polishing
2019-02-18 14:13:51 +01:00
Sebastien Deleuze
19f792db66
Add Coroutines support for WebClient and WebFlux.fn
...
This commit is the first part of a more complete Coroutines
support coming in Spring Framework 5.2. It introduces suspendable
Kotlin extensions for Mono based methods in WebFlux classes like
WebClient, ServerRequest, ServerResponse as well as a Coroutines
router usable via `coRouter { }`.
Coroutines extensions use `await` prefix or `AndAwait` suffix,
and most are using names close to their Reactive counterparts,
except `exchange` in `WebClient.RequestHeadersSpec`
which translates to `awaitResponse`.
Upcoming expected changes are:
- Leverage `Dispatchers.Unconfined` (Kotlin/kotlinx.coroutines#972 )
- Expose extensions for `Flux` based API (Kotlin/kotlinx.coroutines#254 )
- Introduce interop with `CoroutineContext` (Kotlin/kotlinx.coroutines#284 )
- Support Coroutines in `ReactiveAdapterRegistry`
- Support Coroutines for WebFlux annotated controllers
- Fix return type of Kotlin suspending functions (gh-21058)
See gh-19975
2019-02-18 09:23:31 +01:00
Sebastien Deleuze
04bb114f05
Set Kotlin minimum version to 1.3 for Coroutines
...
See gh-20945
2019-02-18 09:11:52 +01:00
Sam Brannen
c95ffe3db2
Merge branch '5.1.x'
2019-02-17 17:25:47 +01:00
Sam Brannen
7c65b57530
Polish Kotlin chapter
2019-02-17 17:22:04 +01:00
Sebastien Deleuze
1d866053ed
Leverage RouterFunctions.Builder in RouterFunctionDsl
...
Closes gh-22423
2019-02-17 17:20:11 +01:00
Sebastien Deleuze
175c27657e
Merge branch '5.1.x'
2019-02-17 10:39:15 +01:00
Sebastien Deleuze
ab32dc8937
Document checked exceptions with proxies in Kotlin
...
Closes gh-22412
2019-02-17 10:37:11 +01:00
Sebastien Deleuze
6089ec1161
Add a warning in Kotlin Script Templates documentation
2019-02-17 10:11:00 +01:00
Ryan Scheidter
6e7c3f2893
Fix a typo in RouterFunctionDsl Javadoc
...
Closes gh-22419
2019-02-17 09:50:06 +01:00
olszewskimichal
60a7909fca
getFirst - check that values is not empty
2019-02-16 11:55:23 +01:00
Juergen Hoeller
c515de138a
Correct import order
2019-02-15 17:19:21 +01:00
Juergen Hoeller
6db75956b9
Merge branch '5.1.x'
2019-02-15 17:16:28 +01:00
Juergen Hoeller
e307dd58db
Polishing
2019-02-15 17:06:11 +01:00
Juergen Hoeller
c2bd229d4c
Clarify role of 'aware' callback interfaces
2019-02-15 17:06:03 +01:00
stsypanov
5e29ea30a3
Use StringJoiner where possible to simplify String joining
2019-02-15 14:55:35 +01:00
stsypanov
e44d3dabc4
use Method in fixedInterceptorMap instead of String returned from Method::toString
2019-02-15 14:53:26 +01:00
stsypanov
e7dc439f90
Simplify ConcurrentReferenceHashMap
2019-02-15 14:27:43 +01:00
stsypanov
d2bfca7900
Extract duplicated code into a separate method
2019-02-15 14:26:44 +01:00
stsypanov
92053bb84e
Some very simple improvements regarding ArrayList
2019-02-15 14:25:13 +01:00
Juergen Hoeller
5e0cd9fb60
Merge branch '5.1.x'
2019-02-14 13:39:58 +01:00
Juergen Hoeller
ac0e5d8ec6
DefaultConversionService properly converts Object[] to int[]
...
Closes gh-22410
2019-02-14 13:38:29 +01:00
Stephane Nicoll
9967ece49c
Merge branch '5.1.x'
2019-02-14 10:18:46 +01:00
Stephane Nicoll
1152e67bb7
Merge pull request #22385 from vpavic
...
* pr/22385:
Polish "Ensure indexer gracefully handle missing meta annotations"
Ensure indexer gracefully handle missing meta annotations
2019-02-14 10:17:54 +01:00
Stephane Nicoll
0cc77e812c
Polish "Ensure indexer gracefully handle missing meta annotations"
...
Closes gh-22385
2019-02-14 10:16:32 +01:00
Vedran Pavic
87e5f0db01
Ensure indexer gracefully handle missing meta annotations
...
See gh-22385
2019-02-14 10:16:04 +01:00
Spring Buildmaster
566cc87748
Next Development Version
2019-02-13 05:51:26 +00:00
Stephane Nicoll
77e815135b
Merge branch '5.1.x'
2019-02-12 21:30:32 +01:00
Stephane Nicoll
d703ca95d7
Upgrade to Reactor Californium SR5
2019-02-12 21:29:25 +01:00
Brian Clozel
d463598c09
Defer ExchangeFilterFunction to subscription time
...
Prior to this commit, the `ExchangeFilterFunction` instances configured
on a `WebClient` instance would be executed as soon as the `exchange`
method would be called. This behavior is not consistent with the server
side and can confuse filter developers as they'd need to manually
`Mono.defer()` their implementations if they want to record metrics.
This commit defers all `ExchangeFilterFunction` processing at
subscription time.
Fixes gh-22375
2019-02-12 10:52:49 +01:00
Juergen Hoeller
4e47006a17
Merge branch '5.1.x'
2019-02-12 09:09:19 +01:00
Juergen Hoeller
106a757098
Polishing
2019-02-12 09:07:58 +01:00
Juergen Hoeller
8637540678
Expose empty annotation array as empty AnnotationAttributes array
...
Closes gh-22405
2019-02-12 09:07:51 +01:00
Sebastien Deleuze
0bdacddc53
Remove SqlXmlObjectMappingHandler
...
This class is only known to be used in spring-data-jdbc-ext project
which was never upgraded to Spring Framework 5.x and is no longer
actively developed.
Closes gh-22402
2019-02-11 14:20:51 +01:00
Sebastien Deleuze
5bb1c3e1e3
Deprecate SqlXmlObjectMappingHandler
...
This class is only known to be used in spring-data-jdbc-ext project
which was never upgraded to Spring Framework 5.x and is no longer
actively developed.
Closes gh-11647
2019-02-11 13:18:28 +01:00
Sebastien Deleuze
9d0f97fa00
Merge branch '5.1.x'
2019-02-11 13:09:35 +01:00
Sebastien Deleuze
2a0a002bd3
Improve Kotlin documentation
...
Closes gh-22400
2019-02-11 13:08:04 +01:00
dzou
514f7e3328
Add link to Kotlin sample for Spring Cloud GCP
...
Closes gh-2070
2019-02-11 13:08:04 +01:00
Juergen Hoeller
4ca376ef31
Merge branch '5.1.x'
2019-02-11 11:55:59 +01:00
Juergen Hoeller
cdd0456aa4
Upgrade to Tomcat 9.0.16 and Log4J 2.11.2
2019-02-11 11:51:41 +01:00
Juergen Hoeller
b5e9fa5f1e
TransactionActionSupport evaluates Vavr Try failure as rollback-only
...
Closes gh-20361
2019-02-11 11:45:43 +01:00
Brian Clozel
afbe7b31bb
Polish
...
See gh-22341
2019-02-11 10:46:27 +01:00
Brian Clozel
fb4a28f904
Polish
...
See gh-22340
2019-02-11 10:45:50 +01:00
Sam Brannen
f7e53a071b
Polishing
2019-02-08 19:41:10 +01:00
Juergen Hoeller
783a7ca46b
Merge branch '5.1.x'
2019-02-08 18:16:27 +01:00
Juergen Hoeller
9f03d158ce
Upgrade to Checkstyle 8.17 and Mockito 2.24
2019-02-08 18:03:07 +01:00
Juergen Hoeller
ba0c48b933
Polishing
2019-02-08 18:02:28 +01:00
Mansur Mustaquim
82dbde13b6
Fix for ScriptUtils failure when '--' occurs inside a multi-line comment on the same line as '*/' ( #22392 )
...
* Test for multi-line comment block where the comment end delimiter occurs on a line starting with the single-line comment prefix
* ScriptUtils successfully parses a SQL script containing a multi-line comment block where the comment-end delimiter occurs on a line starting with the single-line comment prefix.
2019-02-08 16:20:51 +01:00
Sam Brannen
4f57d717ba
Upgrade to JUnit Jupiter 5.4
...
Closes gh-22308
2019-02-08 13:22:34 +01:00
Stephane Nicoll
f5ae288990
Merge branch '5.1.x'
2019-02-08 08:54:18 +01:00
Stephane Nicoll
a698adf125
Merge pull request #22382 from artembilan
...
* pr/22382:
Polish contribution
Polish warning message
2019-02-08 08:49:34 +01:00
Stephane Nicoll
50e4308779
Polish contribution
...
Closes gh-22382
2019-02-08 08:48:58 +01:00
Artem Bilan
07bac70c09
Polish warning message
...
See gh-22382
2019-02-08 08:48:18 +01:00
Stephane Nicoll
aff9e37b8d
Merge pull request #22373 from izeye
...
* pr/22373:
Fix casing for GitHub in the contributing guide
2019-02-08 08:41:21 +01:00
Johnny Lim
64c86623ee
Fix casing for GitHub in the contributing guide
...
Closes gh-22373
2019-02-08 08:41:03 +01:00
Juergen Hoeller
7cde283066
Merge branch '5.1.x'
2019-02-07 23:07:22 +01:00
Juergen Hoeller
cc740dfd93
Upgrade to Groovy 2.5.6 and Hibernate ORM 5.1.17
2019-02-07 23:02:59 +01:00
Juergen Hoeller
15af0d9787
Polishing
2019-02-07 23:02:35 +01:00
Rossen Stoyanchev
b4de3845c0
Merge branch '5.1.x'
2019-02-07 14:35:53 -05:00
Rossen Stoyanchev
2b974da395
Use snapshot instead of libs-snapshot repository
...
The latter has stale Reactor snapshots
2019-02-07 14:34:59 -05:00
Rossen Stoyanchev
cb9db70857
Merge branch '5.1.x'
2019-02-07 12:00:44 -05:00
Rossen Stoyanchev
e7c038f2d2
Switch to Reactor Californium snapshots
2019-02-07 11:59:54 -05:00
Juergen Hoeller
0b617a8c93
Deprecate PreferencesPlaceholderConfigurer along with its base class
...
Also removing common PropertyPlaceholderConfigurer doc references.
See gh-22181
2019-02-07 16:53:05 +01:00
Juergen Hoeller
d25783329a
Merge branch '5.1.x'
2019-02-07 16:01:14 +01:00
Juergen Hoeller
b8e663c531
AbstractAutoProxyCreator ignores unused early proxy references
...
Closes gh-22370
2019-02-07 15:57:44 +01:00
Juergen Hoeller
0f73a69033
AbstractApplicationContext resets local listeners to pre-refresh state
...
Closes gh-22325
2019-02-07 15:56:46 +01:00
Juergen Hoeller
e9626779ee
@Resource provides dependency descriptor for resolving beans by name
...
Closes gh-22359
2019-02-07 15:56:00 +01:00
Juergen Hoeller
5f4c461d4f
Documentation revision for @PostConstruct/PreDestroy and @Required
...
Closes gh-22348
2019-02-07 15:53:55 +01:00
Juergen Hoeller
bb05ee7bff
Upgrade to Kotlin 1.3.21
...
See #20945
2019-02-07 15:28:43 +01:00
Brian Clozel
05d7ab4328
Merge branch '5.1.x'
2019-02-06 20:00:02 +01:00
Brian Clozel
ef8652615c
Log exception at ERROR level in CompositeLog
...
Fixes gh-22364
2019-02-06 19:58:41 +01:00
Sebastien Deleuze
72ed274c6f
Merge branch '5.1.x'
2019-02-06 19:35:20 +01:00
Sebastien Deleuze
d1e5a3af9f
Fix truncated Value#value javadoc
...
Closes gh-22331
2019-02-06 19:28:31 +01:00
Sam Brannen
9bc2c99ce5
Suppress deprecation warning in Gradle build
...
See gh-22181
2019-02-06 16:37:23 +01:00
Sebastien Deleuze
3787b23a98
Deprecate PropertyPlaceholderConfigurer
...
This commit deprecates PropertyPlaceholderConfigurer in favor of
PropertySourcesPlaceholderConfigurer.
Closes gh-22181
2019-02-06 16:00:24 +01:00
Sebastien Deleuze
0ad9349d84
Limit ref() and provider() visibility in Kotlin DSL
...
This commit makes ref() and provider() only available from
inside the bean lambda and not from the root level of the beans DSL.
Closes gh-22177
2019-02-05 16:59:56 +01:00
Juergen Hoeller
34ddb1e3cd
Merge branch '5.1.x'
2019-02-05 16:32:58 +01:00
Juergen Hoeller
9895e44d73
Polishing
2019-02-05 16:03:24 +01:00
Juergen Hoeller
643a68f81b
Detect existing jar URLs from URLClassLoader.getURLs()
...
Closes gh-22346
2019-02-05 16:02:50 +01:00
Juergen Hoeller
ac4525ddf8
Detect MariaDB as MySQL (for mariadb-java-client 2.4+ compatibility)
...
Closes gh-22344
2019-02-05 16:02:17 +01:00
Yoann Rodière
17caac8f1f
Add tests for SpringBeanContainer (Hibernate ORM integration) and fix the behavior when requesting named beans ( #22260 )
...
* Add integration tests for SpringBeanContainer (Hibernate ORM integration)
* Autowire bean properties of beans retrieved by name in SpringBeanContainer
* Add integration tests for fallback cases in SpringBeanContainer (Hibernate ORM integration)
* Fix SpringBeanContainer incorrectly losing the bean name when calling the fallback producer
(cherry picked from commit 00855c4f5f )
2019-02-05 16:01:40 +01:00
Sebastien Deleuze
0b9522c84e
Migrate Kotlin Mockito tests to Mockk
...
Closes gh-22345
2019-02-05 15:47:08 +01:00
Yoann Rodière
00855c4f5f
Add tests for SpringBeanContainer (Hibernate ORM integration) and fix the behavior when requesting named beans ( #22260 )
...
* Add integration tests for SpringBeanContainer (Hibernate ORM integration)
* Autowire bean properties of beans retrieved by name in SpringBeanContainer
* Add integration tests for fallback cases in SpringBeanContainer (Hibernate ORM integration)
* Fix SpringBeanContainer incorrectly losing the bean name when calling the fallback producer
2019-02-05 15:39:46 +01:00
Juergen Hoeller
4c9ae6494f
Concurrency/nullability fine-tuning in MimeType(Utils)
...
See gh-22340
2019-02-05 15:38:41 +01:00
Brian Clozel
1bf3b36ce8
Polish
...
See gh-22340
2019-02-05 15:06:33 +01:00
Brian Clozel
ba8849dda3
Avoid MimeType garbage creation
...
Prior to this commit, calls to `MimeType` and `MediaType` would create a
significant amount of garbage:
* during startup time, in the static sections of `MimeType` and
`MediaType` when creating well-known types
* at runtime, when parsing media types for content negotiation or
writing known media types as strings in HTTP response headers
This commit does the following:
* Avoid parsing the well-known types and use regular constructors
instead
* Cache types in a simple LRU cache once they've been parsed, since an
application is likely to deal with a limited set of types
* Avoid using `java.util.stream.Stream` in hot code paths
Benchmarks show that a complete revision of the `MimeTypeUtils` parser
is not required, since the LRU cache is enough there.
Closes gh-22340
2019-02-05 14:33:43 +01:00
Brian Clozel
862fa557bd
Avoid java.util.stream.Stream usage in hot paths
...
Prior to this commit, profiling sessions would show that using
`java.util.stream.Stream` in some hot code paths creates significant
garbage.
Where streams aren't really required, this commit turns those snippets
into imperative logic because those are likely to be called once or
multiple times per request.
Closes gh-22341
2019-02-05 12:14:51 +01:00
Juergen Hoeller
4ec2f3cd17
Merge branch '5.1.x'
2019-02-05 00:55:20 +01:00
Juergen Hoeller
165d2511b9
Upgrade to Apache HttpClient 4.5.7 and Commons FileUpload 1.4
...
Includes RxJava 2.2.6, Netty 4.1.33, Undertow 2.0.17.
2019-02-05 00:46:07 +01:00
Juergen Hoeller
d27bae245a
Polishing
2019-02-05 00:45:28 +01:00
Juergen Hoeller
0ebc020b21
Load-time weaving support for WildFly 13+ (JBoss Modules 1.8+)
...
Fixes gh-22297
2019-02-05 00:44:52 +01:00
Juergen Hoeller
59a9c8e004
MethodReference.MethodValueRef.setValue throws SpelEvaluationException
...
Closes gh-22336
2019-02-05 00:43:56 +01:00
Juergen Hoeller
ca7634dfe8
Avoid duplicate class introspection during findAnnotationOnBean
...
Closes gh-22318
2019-02-05 00:42:24 +01:00
Juergen Hoeller
5eca512c46
Ref doc mentions SimpleTransactionScope next to SimpleThreadScope
...
Closes gh-22180
2019-02-05 00:41:53 +01:00
Juergen Hoeller
c700ccbc00
Upgrade to Apache HttpClient 4.5.7
...
Includes Hibernate ORM 5.4.1 for integration tests.
2019-02-05 00:10:40 +01:00
Juergen Hoeller
a27a6470f7
Polishing
2019-02-05 00:10:22 +01:00
kudrevatykh
85474297be
Load-time weaving support for WildFly 13+ ( #22297 )
...
Load-time weaving support for WildFly 13+ (JBoss Modules 1.8+)
2019-02-04 23:31:21 +01:00
stsypanov
248d3f8e8b
Use AtomicInteger instead of unsafe increment on volatile fields
2019-02-04 23:22:20 +01:00
Stephane Nicoll
e402a93e41
Merge branch '5.1.x'
2019-02-04 10:34:40 +01:00
Stephane Nicoll
99da6e9723
Merge pull request #22337 from mhewedy
...
* pr/22337:
Polish "Fix use CompletableFuture in DeferredResultReturnValueHandlerTest"
Fix use CompletableFuture in DeferredResultReturnValueHandlerTest
2019-02-04 10:33:58 +01:00
Stephane Nicoll
1241c3b2d1
Merge pull request #22339 from vpavic
...
* pr/22339:
Polish "Improve spring-context-indexer documentation"
Improve spring-context-indexer documentation
2019-02-04 10:33:54 +01:00
Stephane Nicoll
7c62d7cfe2
Polish "Fix use CompletableFuture in DeferredResultReturnValueHandlerTest"
...
Closes gh-22337
2019-02-04 10:31:31 +01:00
Muhammad Hewedy
6507b09c7f
Fix use CompletableFuture in DeferredResultReturnValueHandlerTest
...
See gh-22337
2019-02-04 10:24:52 +01:00
Stephane Nicoll
229f354df1
Polish "Improve spring-context-indexer documentation"
...
Closes gh-22339
2019-02-04 10:22:43 +01:00
Vedran Pavic
43ea25e413
Improve spring-context-indexer documentation
...
See gh-22339
2019-02-04 10:17:34 +01:00
Sam Brannen
0742986e0e
Suppress warnings from tests in Gradle build
2019-02-01 11:13:53 +01:00
Sam Brannen
5e7065d829
Upgrade to JUnit Jupiter 5.4 RC2
...
Issue: #22308
2019-02-01 10:59:20 +01:00
stsypanov
af13580fd5
Remove unnecessary array initialization
2019-01-31 09:00:22 -05:00
Juergen Hoeller
7a77e83e10
SpelNodeImpl manages start/end position in separate integer values
...
Fixes gh-22157
2019-01-28 22:50:56 +01:00
Juergen Hoeller
5aed117b68
Model interface exposes getAttribute method (next to add/contains)
...
Fixes gh-22145
2019-01-28 22:50:29 +01:00
Juergen Hoeller
80385ced4c
Remove java.sql dependency from ReflectionUtils/TransactionDefinition
...
Fixes gh-21996
2019-01-28 22:50:11 +01:00
Arjen Poutsma
d3b5ba7a36
Add test case for HttpRequest with relative URIs
...
Test case for #19890
2019-01-28 16:43:46 +01:00
Rossen Stoyanchev
b8f7c37cc4
Merge branch '5.1.x'
2019-01-25 17:01:51 -05:00
Rossen Stoyanchev
4560dc2818
Improve empty body check
...
Fixes gh-22265
2019-01-25 15:48:04 -05:00
Sam Brannen
439bc65b0e
Upgrade to JUnit Jupiter 5.4 RC1
...
Issue: #22308
2019-01-25 15:56:16 +01:00
Juergen Hoeller
05f1ea8515
Merge branch '5.1.x'
2019-01-25 15:46:01 +01:00
Juergen Hoeller
d0033f12d0
ApplicationListenerMethodAdapter uses target method for order lookup
...
Fixes #22307
2019-01-25 15:44:43 +01:00
Juergen Hoeller
85ec9b9df2
Avoid Class.getPackage() in favor of plain Class.getName() checks
...
Fixes #22306
2019-01-25 15:35:49 +01:00
Marten Deinum
6bdf2c2685
Upgrade to Commons-Fileupload 1.4
2019-01-24 17:53:22 +01:00
Arjen Poutsma
6004be9d31
Merge branch '5.1.x'
2019-01-24 15:55:46 +01:00
Arjen Poutsma
4732f83d70
Fix Java 9 Build
...
Fix Java 9 build by replacing deprecated method.
2019-01-24 15:44:58 +01:00
Juergen Hoeller
160ecdf956
Merge branch '5.1.x'
2019-01-24 15:35:28 +01:00
Juergen Hoeller
7cc700435b
HandlerMethod skips interface parameter introspection for return value
...
Fixes #22303
2019-01-24 15:18:55 +01:00
Juergen Hoeller
493e9c1ff0
Consistent upgrade to Rome 1.12 and WebJars Locator 0.36
2019-01-24 15:18:43 +01:00
Juergen Hoeller
8bed7d9bb0
Upgrade to Hibernate ORM 5.4.1
...
Includes EclipseLink 2.7.4.
Fixes #22049
2019-01-24 15:02:30 +01:00
Juergen Hoeller
b07b10de8c
Upgrade to Kotlin 1.3.20
...
Includes RxJava 2.2.6, Netty 4.1.33, Undertow 2.0.17.
Fixes #20945
2019-01-24 15:02:13 +01:00
Sam Brannen
83d06b8f4e
Merge branch '5.1.x'
2019-01-23 16:45:10 +01:00
Sam Brannen
edadb9efb6
Remove obsolete PetClinic Example section of Testing chapter
...
Issue: #22288
2019-01-23 16:40:21 +01:00
Arjen Poutsma
a5cef3845c
Improve message for HttpStatusCodeException with empty status text
...
This commit improves the message for HttpStatusCodeException so that it
defaults to the HttpStatus reason phrase if a status text is not
provided.
This commit also fixes SimpleClientHttpResponse so that it does not
return null for getStatusText().
Fixed #22162
2019-01-23 11:44:00 +01:00
Rossen Stoyanchev
155ef5fd77
Merge branch '5.1.x'
2019-01-22 12:04:09 -05:00
Rossen Stoyanchev
810b615471
Correct issus in Spring MVC section
...
Fixes #22282
2019-01-22 09:06:18 -05:00
Rossen Stoyanchev
51f9e0aaca
Typo in webmvc.adoc
2019-01-22 09:06:18 -05:00
Brian Clozel
46c0366594
Merge branch '5.1.x'
2019-01-22 14:56:02 +01:00
Brian Clozel
d6aa589c50
Wrap DecodingException in DefaultServerRequest
...
Prior to this commit, Spring WebFlux function would let
`DecodingException` thrown by codecs bubble up to the web handler level.
Since this exception is not handled by default there, the response would
be turned into a HTTP 500 status.
In the annotation model, `ArgumentResolver` implementations wrap this
exception with a `ServerWebInputException`, which itself extends
`ResponseStatusException`. The latter is supported by the error handling
infrastructure as a HTTP 400 response.
This commit ensures that `DecodingException` instances are properly
wrapped in `ServerWebInputException` at the `ServerRequest` level
directly, thus supporting all setup modes ("standalone" and through the
`DispatcherHandler`).
Fixes #22290
2019-01-22 14:54:44 +01:00
Sebastien Deleuze
81ec1d8284
Merge branch '5.1.x'
2019-01-22 10:55:06 +01:00
Sebastien Deleuze
fc6cff53bb
Clarify documentation about JSON Views
...
This commit intends to clarify the documentation by avoiding confusion
between @JsonView and Spring MVC JSON views.
Fixes #22280
2019-01-22 10:51:25 +01:00
Rossen Stoyanchev
f6c16815b4
Merge branch '5.1.x'
2019-01-21 10:00:15 -05:00
Rossen Stoyanchev
20f4022e7b
Correctly truncate logging of response body
...
Fixes #22287
2019-01-21 09:57:52 -05:00
Rossen Stoyanchev
020c537c03
Add note to CorsFilter section
...
Fixes #19841
2019-01-21 09:47:30 -05:00
Stephane Nicoll
bd3d7dbc0c
Merge pull request #22283 from izeye
...
* pr/22283:
Polish AutowireUtils.EXECUTABLE_COMPARATOR
2019-01-20 17:38:06 +01:00
Johnny Lim
963cc09c2e
Polish AutowireUtils.EXECUTABLE_COMPARATOR
...
Closes gh-22283
2019-01-20 17:37:46 +01:00
Rossen Stoyanchev
b0a3a6f79f
Merge branch '5.1.x'
2019-01-18 18:29:39 -05:00
Rossen Stoyanchev
e373b46660
Jackson2JsonDecoder tolerates null literal
...
Fixes #22042
2019-01-18 18:27:40 -05:00
Rossen Stoyanchev
5dcde9e7d7
Trim decoded SSE data
...
Fixes #22043
2019-01-18 18:13:58 -05:00
Rossen Stoyanchev
ef72ef54fa
Avoid NPE when setting warnLogCategory
...
Fixes #22159
2019-01-18 18:08:48 -05:00
Rossen Stoyanchev
a77eee899a
Document synchronous use of the WebClient
...
Fixes #22173
2019-01-18 17:46:16 -05:00
Rossen Stoyanchev
f9ba069b9d
Add "Affects" field to issue template
2019-01-18 15:27:43 -05:00
Rossen Stoyanchev
4fdfa4246f
Merge branch '5.1.x'
2019-01-17 18:01:41 -05:00
Rossen Stoyanchev
9837ec5904
Fix Javadoc typos
...
Closes #22261
2019-01-17 18:01:08 -05:00
Rossen Stoyanchev
2a57b40515
Merge branch '5.1.x'
2019-01-17 17:13:30 -05:00
Rossen Stoyanchev
bdac937a43
Replace more references to issue tracker
...
Fixes #22254
2019-01-17 17:08:39 -05:00
Sanghyuk Jung
6ca3884759
Update links to issue tracker
2019-01-17 16:44:41 -05:00
Rossen Stoyanchev
ffe888ca18
Merge branch '5.1.x'
2019-01-17 12:56:46 -05:00
Rossen Stoyanchev
189e1afc6e
Use try-with-resources in documentation samples
...
Fixes #22269
2019-01-17 12:53:59 -05:00
Rossen Stoyanchev
2043793899
Merge branch '5.1.x'
2019-01-17 12:31:46 -05:00
Rossen Stoyanchev
d1862a26dd
Typo in web documentation
...
Fixes #22270
2019-01-17 12:27:00 -05:00
Brian Clozel
0450b07c21
Merge branch '5.1.x'
2019-01-17 11:26:35 -05:00
Brian Clozel
2b65d0e51f
Fix error when writing empty String to DataBuffer
...
Prior to this commit, `DataBuffer.write` would throw an
`IllegalStateException` when called with an empty `String`, since the
`CharsetEncoder` would be flushed on an incorrent state.
This commit skips entirely the encoding phase for empty `String`.
Fixes #22262
2019-01-17 11:09:48 -05:00
Stephane Nicoll
0db4c22656
Merge pull request #22256 from KyleRogers
...
* pr/22256:
Fix typo in cache abstraction chapter
2019-01-15 06:24:59 -05:00
Stefan Penndorf
04ce61968d
Fix typo in cache abstraction chapter
...
Closes gh-22256
2019-01-15 06:23:34 -05:00
Rossen Stoyanchev
7a9e2f5edc
Update issue template
...
Closes #22253
2019-01-14 19:26:23 -05:00
Rossen Stoyanchev
f557f313c2
Update issue template
2019-01-14 13:48:59 -05:00
Rossen Stoyanchev
2b530bac39
Update issue template
2019-01-14 12:26:38 -05:00
Rossen Stoyanchev
66359e2e9e
Update issue templates
2019-01-14 09:40:51 -05:00
Arjen Poutsma
5938ca9a7c
Deprecate JiBX marshaller
...
Resolves #22249
2019-01-14 11:57:15 +01:00
Arjen Poutsma
86fb43900e
Deprecate JiBX marshaller
...
Resolves #22249
2019-01-14 11:50:21 +01:00
Arjen Poutsma
89a7e752ef
Remove Castor marshaller
...
Resolves #22250
2019-01-14 11:28:16 +01:00
Arjen Poutsma
bfff9ca0ce
Fix typo
...
Resolves #22241
2019-01-14 10:49:11 +01:00
Brian Clozel
33cbe2e77a
Remove admonitions surrounding code snippets
2019-01-09 18:38:31 +01:00
Brian Clozel
8c768e48fa
Use Spring Doc Resources for reference docs
...
This commit removes the custom static resources for the reference
documentation and instead uses the new Spring Doc Resources project
https://github.com/spring-io/spring-doc-resources
The asciidoctor theme is now shared between Spring projects and
integrated in the project build.
2019-01-09 18:38:31 +01:00
Sam Brannen
e1e6224acb
Document effect of preemptive timeouts on transactional tests
...
Issue: SPR-17647
2019-01-09 16:38:47 +01:00
Sam Brannen
df13e4dd5e
Document effect of preemptive timeouts on transactional tests
...
Issue: SPR-17647
2019-01-09 16:37:56 +01:00
Sam Brannen
cf565067fe
Document effect of @DirtiesContext when used with constructor injection
...
Issue: SPR-17654
2019-01-09 15:43:41 +01:00
Sam Brannen
2159518252
Improve documentation for DI options in the TestContext framework
2019-01-09 15:43:31 +01:00
Sam Brannen
bd9d3334a2
Document effect of @DirtiesContext when used with constructor injection
...
Issue: SPR-17654
2019-01-09 15:39:56 +01:00
Sam Brannen
9ea618ede9
Improve documentation for DI options in the TestContext framework
2019-01-09 14:54:14 +01:00
Stephane Nicoll
2a76a65708
Switch master to 5.2.0.BUILD-SNAPSHOT
2019-01-09 14:12:05 +01:00
Spring Buildmaster
754ad4d0d3
Next Development Version
2019-01-09 12:43:27 +00:00
Juergen Hoeller
72dddfbc7b
Polishing
2019-01-09 12:26:58 +01:00
Rossen Stoyanchev
dc3f953f4b
Correction for commit #b219c6c
...
Issue: SPR-17630
2019-01-08 22:43:42 -05:00
Juergen Hoeller
4058361e84
Upgrade to Reactor Californium SR4
2019-01-08 23:37:26 +01:00
Andrzej Leśkiewicz
952045c216
SPR-17606 @Profile mishandles "not" operand mixed with "&" ( #2066 )
...
Correct handling of not/and expressions in ProfilesParser
Issue: SPR-17606
2019-01-08 22:24:15 +01:00
Juergen Hoeller
815f151448
Upgrade to Checkstyle 8.16
2019-01-08 21:57:24 +01:00
Juergen Hoeller
605e2477b9
Polishing
2019-01-08 21:57:13 +01:00
Sam Brannen
304c85ec70
Link explicitly to JUnit 5.3.2 instead of current version
2019-01-08 18:08:31 +01:00
Juergen Hoeller
f56fa91430
Polishing
2019-01-08 17:11:34 +01:00
Juergen Hoeller
9cb5369cb9
DependencyDescriptor supports TypeDescriptor resolution for fields
...
This allows for proper nested type conversion in @Value Optional fields analogous to method parameters, through a new TypeDescriptor-based method in the TypeConverter SPI. As an additional and less involved measure that is worth backporting, DefaultListableBeanFactory defensively checks for pre-converted Optional wrappers.
Issue: SPR-17607
2019-01-08 17:11:27 +01:00
Juergen Hoeller
a82f049083
FormHttpMessageConverter officially supports non-String form values
...
Issue: SPR-17645
2019-01-08 17:11:07 +01:00
Rossen Stoyanchev
b219c6ce15
Adjust UriComponentsBuilder#toUriString behavior
...
Commit #93b7a4 added support for pre-configuring URI variables at the
UriComponentsBuilder level, and also changed toUriString to encode
template and URI variables separately. However this went a bit too far
causing side effects for URLs with curly braces that don't represent
URI variables.
This commit restores the original toUriString behavior which is to
encode template and URI variables sepraately only if URI variables have
been pre-configured.
Issue: SPR-17630
2019-01-08 11:06:33 -05:00
Sam Brannen
17a4193810
Link explicitly to JUnit 4.12 instead of beta version
...
For details, see: https://github.com/junit-team/junit4/issues/1585
2019-01-08 16:29:46 +01:00
Sam Brannen
29ab38acb2
Provide external links to JUnit in published Javadoc API
2019-01-08 16:19:01 +01:00
Michel Schudel
4938dab0ae
Fix XML parser default value handling
...
The xml parser does not fill in defaults provided in the XSD when
validation is disabled. As a result, attributes like default-lazy-init
will not receive the value "default" but an empty string.
With this commit, BeanDefinitionParserDelegate now takes this into
account, checking default values against empty string as well as
"default".
As a consequence, default-lazy-init attribute should now work correctly
even when the XSD validation is disabled.
Issue: SPR-8335
2019-01-08 15:36:01 +01:00
王诗峣
b94e8c4bef
Fix ClassCastException in FormHttpMessageConverter
...
We should not cast MultiValueMap<String, ?> to MultiValueMap<String, String>
2019-01-08 12:19:51 +01:00
Brian Clozel
abc68ef8ea
Revert "package list URL for Reactor javadoc in Dokka"
...
This reverts commit dc2535516c .
The Reactor project reverted its Javadoc changes.
2019-01-08 10:31:00 +01:00
Juergen Hoeller
d37a18ff03
Upgrade to Hibernate Validator 6.0.14 and Apache Johnzon 1.1.11
...
Includes OkHttp MockWebServer 3.12.1.
2019-01-08 00:50:44 +01:00
Juergen Hoeller
11976fa949
Upgrade to Groovy 2.5.5 and RxJava 2.2.5
2019-01-08 00:32:46 +01:00
Juergen Hoeller
6e3f974951
HttpHeaders.writableHttpHeaders properly handles HttpHeaders.EMPTY
...
Issue: SPR-17633
2019-01-08 00:32:27 +01:00
Juergen Hoeller
1faeeaea14
HandlerMethodParameter defensively handles interface annotation arrays
...
Issue: SPR-17629
2019-01-08 00:32:09 +01:00
Brian Clozel
dc2535516c
Fix package list URL for Reactor javadoc in Dokka
...
Reactor is now building its Javadoc with a recent JDK version, which
changes the structure of the published HTML pages.
Without this change, the build fails during the Dokka generation with
the following exception:
```
Exception while loading package-list from
ExternalDocumentationLinkImpl(
url=http://projectreactor.io/docs/core/release/api/ ,
packageListUrl=http://projectreactor.io/docs/core/release/api/package-list )
```
This commit now points to the `/element-list` page, which seems to
contain the same information as the `package-list` page.
2019-01-07 20:53:56 +01:00
Rossen Stoyanchev
673a20cb10
Defensive initialization of AsyncXMLInputFactory
...
Aalto's InputFactoryImpl already disables loading of external entities
by default (property "javax.xml.stream.isSupportingExternalEntities").
This commit goes further by applying the same defensive measures as we
do elsewhere for XMLInputFactory, which disables DTD completely.
Arguably there is no good reason to enable that by default in WebFlux.
2019-01-07 13:52:46 -05:00
Brian Clozel
f52f3a2f35
Upgrade to Reactor Californium SNAPSHOTs
2019-01-07 18:10:55 +01:00
Stephane Nicoll
77129f5a2b
Polish
2019-01-05 09:57:46 +01:00
Stephane Nicoll
d289befa2b
Fix assertions
2019-01-03 14:20:57 +01:00
Stephane Nicoll
b802c28d27
Merge pull request #2068 from Niconal
...
* pr/2068:
Polish "Add missing [ in toString of WebSocketMessageBrokerStats"
Add missing [ in toString of WebSocketMessageBrokerStats
2019-01-03 13:55:40 +01:00
Stephane Nicoll
556656b35a
Polish "Add missing [ in toString of WebSocketMessageBrokerStats"
...
Closes gh-2068
2019-01-03 13:55:03 +01:00
Niconal
74630a1b0c
Add missing [ in toString of WebSocketMessageBrokerStats
...
See gh-2068
2019-01-03 13:54:16 +01:00
Rossen Stoyanchev
63984800e4
Lenient URI template encoding
...
URI template encoding ignores mismatched curly braces, treating them as
literal parts instead.
Issue: SPR-17630
2019-01-02 16:36:08 -05:00
Rossen Stoyanchev
4b24bcb799
More accurate checks for presence of MediaType.ALL
...
Typically a straight up equals as well as Collections#contains
checks for MediaType.ALL is susceptible to the presence of
media type parameters.
This commits adds equalsTypeAndSubtype as well as an
isPresentIn(Collection<MimeType>) methods to MimeType to faciliate
with checks for MediaType.ALL.
Issue: SPR-17550
2019-01-02 14:32:50 -05:00
Rossen Stoyanchev
1cb9f2c7b2
Explicit HEAD sorted higher than implicit one
...
Same fix as #7cdcc1 but for WebFlux.
Issue: SPR-14182
2019-01-02 09:23:05 -05:00
Stephane Nicoll
72fbbb2403
Merge pull request #2064 from pierDipi
...
* pr/2064:
Fix typo
2019-01-01 11:07:29 +01:00
Pier Dipi
d459e1ad61
Fix typo
...
Closes gh-2064
2019-01-01 11:07:11 +01:00
Sebastien Deleuze
78a6429c32
Document NumberUtils.parseNumber() trim behavior
...
Issue: SPR-9523
2018-12-28 09:58:25 +01:00
Chen Dayu
bd6432cb79
Fix formatting in data-access.adoc ( #2062 )
2018-12-26 15:08:44 +01:00
Sébastien Deleuze
fced4e1f9c
Merge pull request #2061 from Gyllsdorff
...
Fix spelling of "reactive HttpClient" in doc
2018-12-26 13:54:48 +01:00
Gyllsdorff
56d93bac89
Fix spelling of "reactive HttpClient" in doc
2018-12-26 13:13:09 +01:00
Juergen Hoeller
8d1de75b60
Upgrade to WebJars Locator 0.36 and OkHttp 3.12.1
...
Includes JRuby 9.2.5 and Jetty Reactive HttpClient 1.0.2.
2018-12-25 13:22:17 +01:00
Juergen Hoeller
b2756f5bd2
Relaxed position assertion (for overflows in large inline maps)
...
Issue: SPR-17605
2018-12-25 13:22:00 +01:00
Juergen Hoeller
31a24720a6
Consistent support for EnumSet subclasses in CollectionFactory
...
Issue: SPR-17619
2018-12-25 13:20:31 +01:00
Juergen Hoeller
7a7958f275
MockMvcResultMatchers.forwardedUrl argument declared as nullable
...
Issue: SPR-17623
2018-12-25 13:20:09 +01:00
Stephane Nicoll
ca9c34710f
Merge pull request #2052 from igor-suhoruko
...
* pr/2052:
Polish "Join identical catch branches"
Join identical catch branches
2018-12-25 09:46:53 +01:00
Stephane Nicoll
9cbd585c30
Polish "Join identical catch branches"
...
Closes gh-2052
2018-12-25 09:46:35 +01:00
igor-suhorukov
a218bf40cd
Join identical catch branches
...
See gh-2052
2018-12-25 09:46:11 +01:00
Stephane Nicoll
93e7a0a59d
Merge pull request #1452 from diguage
...
* pr/1452:
Polish "Refactor duplicate code"
Refactor duplicate code
2018-12-21 15:10:05 +01:00
Stephane Nicoll
b83ceab88a
Polish "Refactor duplicate code"
...
Closes gh-1452
2018-12-21 15:07:09 +01:00
diguage
c15bbd675f
Refactor duplicate code
...
See gh-1452
2018-12-21 15:06:56 +01:00
Arjen Poutsma
5a8b8b11e4
Add test for calculateCapacity
...
Issue: SPR-17558
Closes gh-2054
2018-12-20 21:34:15 +01:00
Arjen Poutsma
a00be62b04
Calculating capacity before allocation.
...
This commit optimizes the `CharSequenceEncoder` to allocate `DataBuffer`
instances with a predicted capacity.
Issue: SPR-17558
2018-12-20 21:33:50 +01:00
Brian Clozel
4955d08f28
Use DataBuffer.write in CharSequenceEncoder
...
Since SPR-17558, `DataBuffer` now offers a new method to write Strings
to them. This commit makes `CharSequenceEncoder` use that.
Issue: SPR-17558
2018-12-20 21:33:44 +01:00
Brian Clozel
6361b0cb23
Write CharSequence instances to DataBuffers
...
Prior to this commit, one could write a `CharSequence` to an existing
`DataBuffer` instance by turning it into a byte array or `ByteBuffer`
first. This had the following disadvantages:
1. Memory allocation was not efficient (not leveraging pooled memory
when available)
2. Dealing with `CharsetEncoder` is not always easy
3. `DataBuffer` implementations, like `NettyDataBuffer` can use
optimized implementations in some cases
This commit adds a new `DataBuffer#write(CharSequence, Charset)` method
for those cases and also an `ensureCapacity` method useful for checking
that the current buffer has enough capacity to write to it..
Issue: SPR-17558
2018-12-20 21:33:33 +01:00
Arjen Poutsma
5e4a8966ee
Make TomcatHttpHandlerAdapter aware of request/response wrappers
...
This commit makes TomcatServerHttpRequest aware of
HttpServletRequestWrappers, and TomcatServerHttpResponse aware of
HttpServletResponseWrappers.
Issue: SPR-17611
2018-12-19 12:16:14 +01:00
Violeta Georgieva
09da10cc6c
Propagate the cancel signal to the downstream
...
Issue: SPR-17609
2018-12-18 15:04:08 -05:00
Sam Brannen
44f39d4ce0
Fix Java comment in Reference Manual
2018-12-18 13:22:24 +01:00
Stephane Nicoll
1d593a970a
Merge pull request #2057 from kimsaabyepedersen
...
* pr/2057:
Polish "Fix method name in comment"
Fix method name in comment
2018-12-18 07:56:43 +01:00
Stephane Nicoll
e42cf9dc56
Polish "Fix method name in comment"
...
Closes gh-2057
2018-12-18 07:56:10 +01:00
Kim Saabye Pedersen
65cb935333
Fix method name in comment
...
See gh-2057
2018-12-18 07:55:49 +01:00
Juergen Hoeller
0e8ed5931d
Revised backport version 5.0.11
...
Issue: SPR-17410
Issue: SPR-17433
2018-12-17 18:19:21 +01:00
Juergen Hoeller
a240cfcf2f
Consistent support for if-(un)modified-since as ZonedDateTime/Instant
...
Includes DefaultRequestBodyUriSpec pre-resolving URI for HttpRequest.
Issue: SPR-17571
2018-12-17 16:21:39 +01:00
Juergen Hoeller
199be6aec5
ValidationUtils.invokeValidator assertion for non-null target object
2018-12-17 14:24:56 +01:00
Juergen Hoeller
99da8e1477
Upgrade to Jackson 2.9.8
2018-12-17 14:24:43 +01:00
Juergen Hoeller
2f04cbba51
Upgrade to Gradle 4.10.3
...
Issue: SPR-17155
2018-12-17 14:24:34 +01:00
Juergen Hoeller
fc9d1760be
Revised c-namespace example
...
Issue: SPR-17601
2018-12-17 14:24:21 +01:00
Juergen Hoeller
aab421167b
Revised format annotation docs
2018-12-13 17:19:50 +01:00
stsypanov
112cc70231
Improve performance of ConcurrentReferenceHashMap creation
2018-12-13 16:57:48 +01:00
igor-suhorukov
93189a6733
String.indexOf() expressions can be replaced with a call to the String.contains() method available in Java 5 and newer.
2018-12-13 12:29:31 +01:00
Stephane Nicoll
81d77b9872
Merge pull request #2050 from diguage
...
* pr/2050:
Fix sample in EnableAsync Javadoc
2018-12-13 10:18:08 +01:00
diguage
ee95a110bd
Fix sample in EnableAsync Javadoc
...
Closes gh-2050
2018-12-13 10:16:56 +01:00
Juergen Hoeller
c48672c4c7
ParameterNameDiscoverer may return individual null entries in an array
...
Issue: SPR-17565
2018-12-12 21:56:17 +01:00
Juergen Hoeller
ef72baad3a
Revised @AspectJ vs XML section
...
Issue: SPR-17597
2018-12-12 21:56:01 +01:00
Rossen Stoyanchev
14e87d2733
Add reference to ConcurrentWebSocketSessionDecorator in the docs.
...
Issue: SPR-12886
2018-12-12 11:57:51 -05:00
Rossen Stoyanchev
388ce92861
Enable io.netty.leakDetection.level=paranoid in tests
...
Issue: SPR-17574
2018-12-12 11:40:33 -05:00
Rossen Stoyanchev
38ae282c3b
Update log category precision for all tests
...
Replace the full category capped at 36 chars with the class name only
and 1 char per package, e.g. org.apache.commons.Foo -> o.a.c.Foo
2018-12-12 11:40:33 -05:00
Rossen Stoyanchev
05d616240a
StringHttpMessageConverter defaults to UTF-8 for JSON
...
Issue: SPR-17568
2018-12-12 11:40:33 -05:00
Rossen Stoyanchev
8eef97da33
HTTP header adapters print header values
...
Issue: SPR-17546
2018-12-12 11:40:33 -05:00
Rossen Stoyanchev
270099383b
Add protected method in StandaloneMockMvcBuilder
...
To allow sub-classes to register additional MVC infrastructure.
Issue: SPR-17520
2018-12-12 11:40:33 -05:00
Juergen Hoeller
0ad35053fb
Upgrade to CGLIB 3.2.10
...
Includes upgrade to JarJar 1.7.2 and Tomcat 9.0.14.
Issue: SPR-17595
2018-12-12 16:03:31 +01:00
Arjen Poutsma
058608021e
Fix invalid String representation for composed RequestPredicates
...
Issue: SPR-17594
2018-12-12 15:33:33 +01:00
Juergen Hoeller
106ae0cc5b
Polishing
2018-12-12 13:21:06 +01:00
Juergen Hoeller
7b7a8196f5
Revised HttpHeaders javadoc
2018-12-12 13:20:58 +01:00
Juergen Hoeller
2c98c1b81a
Relaxed assertion in NotificationPublisherAwareLazyTargetSource
...
Issue: SPR-17592
2018-12-12 12:16:14 +01:00
Juergen Hoeller
7b9c30f26e
Explicit documentation notes on JMS 2.0 vs 1.1 compatibility
...
Issue: SPR-17583
2018-12-12 12:15:34 +01:00
Juergen Hoeller
474ac2d975
Revised SimpleEvaluationContext example
...
Issue: SPR-17581
2018-12-12 12:11:15 +01:00
Juergen Hoeller
6eb0a60df9
Polishing
2018-12-12 11:16:53 +01:00
Juergen Hoeller
5bbbc82e19
Consistent handling of null header values in HttpHeaders
...
Issue: SPR-17588
2018-12-12 11:16:45 +01:00
Juergen Hoeller
4b4503085a
Prefer SLF4J SPI over Log4J in case of log4j-to-slf4j bridge
...
Issue: SPR-17586
2018-12-12 11:16:36 +01:00
Stephane Nicoll
73a96c5152
Merge pull request #2049 from wonwoo
...
* pr/2049:
Fix typo in javadoc
2018-12-12 08:00:48 +01:00
wonwoo
9a13d93a6b
Fix typo in javadoc
...
Closes gh-2049
2018-12-12 08:00:15 +01:00
Kamil Szymanski
894044cea0
Optimize ResourceUrlProvider
...
Closes gh-2008
2018-12-11 12:12:15 +01:00
Stephane Nicoll
0550c08f86
Merge pull request #2044 from chendy560
...
* pr/2044:
Fix typo
2018-12-08 16:03:17 +01:00
chendayu
073f304db9
Fix typo
...
Closes gh-2044
2018-12-08 16:02:52 +01:00
Stephane Nicoll
58a99e3983
Merge pull request #2043 from marchpig
...
* pr/2043:
Fix typo in webflux.adoc
2018-12-08 16:00:48 +01:00
Sangwoo Lee
62f2a6352f
Fix typo in webflux.adoc
...
Closes gh-2043
2018-12-08 16:00:30 +01:00
Stephane Nicoll
528b9c17ec
Merge pull request #2046 from yepapa
...
* pr/2046:
Fix typo in websocket.adoc
2018-12-08 16:00:00 +01:00
Juhyoung Jeon
31318652ea
Fix typo in websocket.adoc
...
Closes gh-2046
2018-12-08 15:59:45 +01:00
Arjen Poutsma
f15bd88211
Fix checkstyle
2018-12-07 15:06:56 +01:00
Stephane Nicoll
220951707b
Merge pull request #2042 from PascalSchumacher
...
* pr/2042:
Fix typo in core-beans.adoc
2018-12-07 11:29:56 +01:00
Pascal Schumacher
18ac86ae16
Fix typo in core-beans.adoc
...
Closes gh-2042
2018-12-07 11:29:35 +01:00
Arjen Poutsma
3258ac1ec4
Expose request in WebClientResponseException
...
This commit exposes the request that lead to it in
WebClientResponseException, as a HttpRequest object.
Issue: SPR-17087
2018-12-07 11:08:02 +01:00
Stephane Nicoll
54f5b7d0ee
Polish
...
Issue: SPR-17572
2018-12-07 10:54:03 +01:00
Juergen Hoeller
aaaf81ed99
Polishing
2018-12-06 15:53:57 +01:00
Juergen Hoeller
6a012147c4
Consistent support for last-modified argument as Instant/ZonedDateTime
...
Issue: SPR-17571
2018-12-06 15:53:47 +01:00
Lars Grefer
9abd4ed33d
Allow Instant and ZonedDateTime as Last-Modified header.
...
Issues: SPR-17571
2018-12-06 14:49:12 +01:00
Juergen Hoeller
cf7ee0739f
Upgrade to Checkstyle 8.15
2018-12-05 14:13:57 +01:00
Juergen Hoeller
db63f7dd4a
StandardEvaluationContext.setVariable leniently ignores null name
...
Issue: SPR-17565
2018-12-05 14:13:24 +01:00
Rossen Stoyanchev
7a5f8e03bc
Refine check for multiple subscribers
...
Commit #c187cb2 introduced proactive rejection of multiple subscribers
in ReactorClientHttpResponse, instead of hanging indefinitely as per
https://github.com/reactor/reactor-netty/issues/503 .
However FluxReceive also rejects subsequent subscribers if the response
is consumed fully, as opposed to being canceled, e.g. as with
bodyToMono(Void.class). In that case, a subsequent subscriber causes
two competing error signals to be sent, and one gets dropped and
logged by reactor-core.
This fix ensures that a rejection is raised in
ReactorClientHttpResponse only after a cancel() was detected.
Issue: SPR-17564
2018-12-04 21:27:37 -05:00
Juergen Hoeller
50e5bdb813
Clarified VfsResource constructor
...
Issue: SPR-17563
2018-12-04 22:09:06 +01:00
Juergen Hoeller
9efea7eb73
MockHttpServletRequest preserves original Accept-Language header value
...
Issue: SPR-17566
2018-12-04 22:07:43 +01:00
Juergen Hoeller
d3cdecc621
Upgrade to Rome 1.12 and POI 4.0.1
2018-12-04 02:16:03 +01:00
Juergen Hoeller
c024bdcc6f
Cleanup after unexpected exception from external delegation call
...
Issue: SPR-17559
2018-12-04 02:15:47 +01:00
Juergen Hoeller
6d7827e36b
Polishing
2018-12-03 23:53:00 +01:00
Juergen Hoeller
d5dab12909
NettyDataBufferFactory.join returns single-element buffer as-is
...
Issue: SPR-17560
2018-12-03 23:52:35 +01:00
Juergen Hoeller
7854b7ac40
Avoid log statements between resource opening and returning
...
Issue: SPR-17559
2018-12-03 23:50:50 +01:00
Pascal Schumacher
26b1c848b8
Fix typo in core-beans.adoc (Obvious Fix)
2018-12-03 22:09:06 +01:00
Juergen Hoeller
5e153e4a77
Revised section on custom BeanPostProcessors
...
Issue: SPR-17556
2018-12-03 19:52:25 +01:00
Juergen Hoeller
16e9b83d43
JavaMailSenderImpl calls sendMessage with empty array instead of null
...
Issue: SPR-17540
2018-12-03 19:49:21 +01:00
Juergen Hoeller
516c01c438
Upgrade javadoc links to Jackson 2.9
...
Includes rollback to Hibernate ORM 5.1.16 for integration tests.
2018-12-03 19:09:39 +01:00
Juergen Hoeller
43077072ad
Upgrade to Netty 4.1.32, Undertow 2.0.16, OpenPDF 1.2.7
...
Includes Hibernate ORM 5.1.17 for integration tests.
2018-12-03 18:28:50 +01:00
Juergen Hoeller
0841dc5f99
Restore Hibernate ORM 5.1 compatibility in HibernateTransactionManager
...
Issue: SPR-17557
2018-12-03 18:27:30 +01:00
Rossen Stoyanchev
15f8863f19
Add sub-section on validation for functional endpoints
...
Issue: SPR-17401
2018-11-30 10:56:29 -05:00
Bertrand Guay-Paquet
bc3b95db92
Fix typo in Javadoc for transaction Propagation annotation
2018-11-29 16:32:28 -05:00
Francesco Komauli
66f822e600
Fix typo in Javadoc for UnsupportedMediaTypeStatusException
...
Response status 415 (unsupported media type) reported as of 416 (which is Range Not Satisfiable), mismatching with superclass constructor parameter HttpStatus.UNSUPPORTED_MEDIA_TYPE
2018-11-29 16:36:56 +01:00
Spring Buildmaster
dfc193b85e
Next Development Version
2018-11-27 09:29:05 +00:00
Rossen Stoyanchev
029101c79a
Merge pull request #2025 from neVERberleRfellerER/SPR-17535
2018-11-26 16:02:08 -05:00
Rossen Stoyanchev
3eee118b44
Polish
2018-11-26 16:00:47 -05:00
Ondrej Kraus
959cf61647
Sanitize request fragment in ResourceUrlEncodingFilter
...
Prior to this change, ResourceUrlEncodingFilter would try to resolve
the resource path using request URL without removing fragment first,
whereas only paths should be used.
This commit synchronizes behavior of ResourceUrlEncodingFilter with
behavior of ResourceUrlProvider.
Issue: SPR-17535
2018-11-26 13:48:48 -05:00
Sam Brannen
82eb82a040
Upgrade to JUnit 5.3.2
...
Issue: SPR-17537
2018-11-25 21:44:12 +01:00
Juergen Hoeller
80b8382f00
Revised alias definition example in reference documentation
...
Issue: SPR-17536
2018-11-25 21:27:49 +01:00
Juergen Hoeller
ebbe14c363
ResolvableType-based matching consistently respects generic factory method return type (even for pre-initialized raw singleton instance)
...
Issue: SPR-17524
2018-11-25 21:27:19 +01:00
Juergen Hoeller
c2e545776d
Upgrade to RxJava 2.2.4
2018-11-23 23:46:37 +01:00
Juergen Hoeller
97ac1c22c5
DefaultResponseErrorHandler makes use of HttpStatus.isError()
...
Issue: SPR-17439
2018-11-23 19:27:47 +01:00
Sam Brannen
a528407d0c
Suppress warning
2018-11-23 18:05:47 +01:00
Sam Brannen
58cde3c2e6
Avoid test compile-time dependency on junit-jupiter-engine
...
Issue: SPR-17533
2018-11-23 18:05:34 +01:00
Arjen Poutsma
fedbb09ad9
Improve RouterFunctions reference documentation
...
Changed WebFlux.fn docs to use router function builder.
Issue: SPR-17016
2018-11-23 17:48:11 +01:00
Sam Brannen
81fde5ec41
Ensure that MethodParameter.findParameterIndex() is thread-safe
...
Prior to this commit, parallel invocations of
MethodParameter.findParameterIndex() (invoked indirectly via
SynthesizingMethodParameter.forParameter() and
MethodParameter.forParameter()) could intermittently lead to an
IllegalArgumentException being thrown due to a race condition in the
internal implementation of the JDK's
java.lang.reflect.Executable.getParameters() method.
This commit addresses this issue by introducing a fallback for-loop
that iterates over the candidate parameters a second time using
equality checks instead of identity checks.
Issue: SPR-17534
2018-11-23 17:37:20 +01:00
Sam Brannen
aa7f69a5d1
Ensure that parameter resolution in SpringExtension is thread-safe
...
Prior to this commit, parallel execution of @BeforeEach and @AfterEach
methods that accepted @Autowired arguments would fail intermittently
due to a race condition in the internal implementation of the JDK's
java.lang.reflect.Executable.getParameters() method.
This commit addresses this issue by creating instances of
SynthesizingMethodParameter via
SynthesizingMethodParameter.forExecutable(Executable, int) instead of
SynthesizingMethodParameter.forParameter(Parameter), since the latter
looks up the parameter index by iterating over the array returned by
Executable.getParameters() (which is not thread-safe).
Issue: SPR-17533
2018-11-23 16:35:19 +01:00
Sebastien Deleuze
91de8d265e
Fix ProtobufDecoder handling of split message size
...
This commit introduces a new readMessageSize(DataBuffer input) private
method, inspired from CodedInputStream#readRawVarint32(int, InputStream)
and adapted for DataBuffer using MessageDecoderFunction fields in
order to support use cases where the message size is split between
distinct chunks.
It also fixes handling of end of streams by using
DataBuffer#readableByteCount instead of -1 which is only relevant with
InputStream.
Issue: SPR-17429
2018-11-23 14:22:58 +01:00
Juergen Hoeller
77ab88b144
Polishing
2018-11-23 13:56:02 +01:00
Juergen Hoeller
738097def2
DefaultResponseErrorHandler detects non-standard error code as well
...
Issue: SPR-17439
2018-11-23 13:55:50 +01:00
Juergen Hoeller
b90553db5c
Upgrade to Reactor Californium SR3
2018-11-22 22:03:56 +01:00
Juergen Hoeller
56234fe877
Polishing
2018-11-22 22:03:36 +01:00
Juergen Hoeller
c16f36b537
Upgrade to Mockito 2.23.4, Selenium 3.141.59, JSON-P 1.1.4
2018-11-22 18:24:18 +01:00
Juergen Hoeller
ae8f680d2e
Polishing
2018-11-22 18:21:56 +01:00
Juergen Hoeller
bf272b0b21
Nullability fine-tuning based on IntelliJ IDEA 2018.3 inspection
...
Issue: SPR-15540
2018-11-22 16:12:38 +01:00
Juergen Hoeller
b1b28d4641
ToStringVisitor consistently returns platform-independent line breaks
...
Issue: SPR-17322
2018-11-22 16:11:59 +01:00
Johnny Lim
17b2b8af86
Remove an unnecessary local variable
2018-11-22 13:56:22 +01:00
Juergen Hoeller
262c702da4
CachingMetadataReaderFactory releases shared cache Map on clearCache()
...
LocalResourceCache properly initializes cacheLimit on construction.
Issue: SPR-17527
2018-11-22 11:20:47 +01:00
Rossen Stoyanchev
548126ddd8
Consistently pass param info to ServerWebInputException
...
Issue: SPR-17232
2018-11-21 14:41:42 -05:00
Rossen Stoyanchev
7e9857a663
ForwardedHeaderTransformer handles encoding correctly
...
Issue: SPR-17525
2018-11-21 10:54:39 -05:00
Rossen Stoyanchev
0134c9d608
Update @since version after backport
2018-11-21 09:35:33 -05:00
Brian Clozel
5fe628a811
Polish
2018-11-21 10:27:49 +01:00
Rossen Stoyanchev
759013eb17
Consistent isEmpty check in WebTestClient
...
Issue: SPR-17522
2018-11-20 23:02:53 -05:00
Rossen Stoyanchev
a55ca56e34
BEST_MATCHING_HANDLER_ATTRIBUTE for spring-webmvc
...
Issue: SPR-17518
2018-11-20 22:31:02 -05:00
Rossen Stoyanchev
d6a5c3428b
Improve docs on STOMP / WebSocket frame max size
...
Issue: SPR-17514
2018-11-20 21:59:47 -05:00
Rossen Stoyanchev
24848ec1bc
Configurable TcpClient for ReactorNettyTcpClient
...
Issue: SPR-17523
2018-11-20 21:20:21 -05:00
Juergen Hoeller
fef0e21d8b
Remove unused LinkedList import
2018-11-20 22:16:51 +01:00
Juergen Hoeller
8c7579eba8
Polishing
2018-11-20 22:06:44 +01:00
Juergen Hoeller
a3d763d137
Consistent parameter resolution for batch updates (IN clauses etc)
...
Includes deprecation of (NamedParameter)BatchUpdateUtils in favor of inlined code in (NamedParameter)JdbcTemplate itself.
Issue: SPR-17402
2018-11-20 22:05:53 +01:00
Juergen Hoeller
2a5d7690b6
CglibAopProxy skips method proxy for equals/hashCode/toString override
...
Issue: SPR-17500
2018-11-20 22:04:28 +01:00
Juergen Hoeller
f5aeb81473
SerializedBeanFactoryReference falls back to dummy with specific id
...
Issue: SPR-17508
2018-11-20 22:02:10 +01:00
stsypanov
02d3cfa42d
Use ArrayList instead of LinkedList
2018-11-20 21:54:51 +01:00
Vojtech Janota
12f168290d
SPR-17492: FastByteArrayOutputStream.read byte-to-int conversion
2018-11-20 17:08:01 +01:00
Arjen Poutsma
88cb126511
Add RequestPredicate Visitor to WebFlux.fn
...
This commit introduces RequestPredicates.Visitor, an implementation of
the visitor pattern for RequestPredicates.
Issue: SPR-17322
2018-11-20 14:05:17 +01:00
Arjen Poutsma
f3c29fe2e6
Add test for UriUtils.encode(String, Charset)
...
Issue: SPR-17451
2018-11-20 10:51:19 +01:00
Rossen Stoyanchev
abf9ce8a34
Improve handling of empty response with Mono<T>
...
Issue: SPR-17560
2018-11-19 16:48:38 -05:00
Arjen Poutsma
63275ae2b7
Add Test for LeakAwareDataBufferFactory
2018-11-19 16:56:25 +01:00
Brian Clozel
3203d39821
Remove Content-Length response header from errors
...
Prior to this commit, when errors happened before the response was
committed, the `Content-Length` response header would be left as is.
This can be problematic since the error can be handled later in the
chain and the response body changed accordingly. For example, Spring
Boot renders error pages in those cases. If the `Content-Length` is set,
HTTP clients can get confused and only consider part of the error
response body.
This commit ensures that any `Content-Length` response header is removed
in case of errors, if the response is not already committed.
This is done at the `AbstractServerHttpResponse` level, since errors can
be handled in multiple places and the response itself is the safest
place to handle this case.
As a consequence, this commit also removes `Content-Length` checks in
`EncoderHttpMessageWriter` since we now consider that we should rely on
the response body we're about to write rather than any previously set
value.
Issue: SPR-17502
2018-11-19 15:49:54 +01:00
Juergen Hoeller
ce5c65c0b0
Upgrade to JAXB 2.3.1, Groovy 2.5.4, Jetty 9.4.14, Tomcat 9.0.13
...
Includes JAX-WS 2.3.1, Awaitility 3.1.3, OkHttp 3.12, Woodstox 5.2.
2018-11-19 12:41:26 +01:00
Stephane Nicoll
afa38f5f97
Merge pull request #2019 from Hanope
...
* pr/2019:
Polish contribution
Fix typos
2018-11-19 08:50:49 +01:00
Stephane Nicoll
7b6f2f8fb3
Polish contribution
...
Closes gh-2019
2018-11-19 08:45:33 +01:00
Hanope
bfb49c7249
Fix typos
...
See gh-2019
2018-11-19 08:41:21 +01:00
HeemangHan
729ce4108d
Correct typos ( #2018 )
2018-11-17 16:31:01 +01:00
Rossen Stoyanchev
1a37345e84
Fix checkstyle violation and polish
2018-11-16 19:42:42 -05:00
Rossen Stoyanchev
c89e6c616a
Improve logging of request mapping information
...
Issue: SPR-17450
2018-11-16 17:30:18 -05:00
Arjen Poutsma
539cfc24c6
Refactor AbstractEncoderTestCase
...
Refactor AbstractEncoderTestCase to resemble AbstractDecoderTestCase
Issue: SPR-17449
2018-11-16 14:33:26 +01:00
Arjen Poutsma
39ce989d1a
Add and use AbstractDecoderTestCase
...
Introduce new base test case for decoder tests, and use it.
Issue: SPR-17449
2018-11-16 14:33:26 +01:00
Brian Clozel
0f2d9df79f
Upgrade to Reactor Californium SNAPSHOTs
2018-11-16 11:13:17 +01:00
Jay Bryant
b9603680bc
Fixing typoes
...
Jim Showalter found two typoes in the web section. This PR fixes them. Thanks, Jim.
2018-11-14 16:10:17 -05:00
Rossen Stoyanchev
7bbd4c681f
Merge pull request #2010 from dimitrisli/SPR-17459
2018-11-13 23:05:07 -05:00
Rossen Stoyanchev
ba3fef3e8a
Refactor media types parsing improvements
...
Issue: SPR-17459
2018-11-13 23:02:09 -05:00
Dimitrios Liapis
f4b05dc2e7
MediaType parsing supports comma inside quotes
...
Issue: SPR-17459
2018-11-13 16:59:57 -05:00
Rossen Stoyanchev
46a5fb7a91
Configurable Marshaller/Unmarshaller in JAXB2 codecs
...
Issue: SPR-17388
2018-11-13 16:56:56 -05:00
Juergen Hoeller
093254b2b3
Jackson2ObjectMapperBuilder stores visibility declarations in order
...
Issue: SPR-17489
2018-11-13 21:17:55 +01:00
Rossen Stoyanchev
9f857c1f16
Replace constant exceptions with inlined ones
...
Issue: SRP-17475
2018-11-13 14:49:23 -05:00
Rossen Stoyanchev
75b1396768
Fall back on default server response status code
...
Update the ServerHttpRespnose contract to indicate that server specific
sub-classes should fall back on the default status, if a status code
has not been set explicitly.
Issue: SPR-17368
2018-11-13 14:10:48 -05:00
Arjen Poutsma
4182935b7a
Revert optimization in StringDecoder
...
This commit reverts the first optimizations listed in
fa096dc60f , as the default delimiters
do vary, namely by the charset given in the message mime type.
The mimetype charset might not be compatible with ASCII (i.e. anything
but UTF-8 or ISO-8859-1, for instance it might be UTF-16), and will not
successfully find the default delimiters as a consequence.
Added test to indicate the bug.
2018-11-13 13:38:13 +01:00
Arjen Poutsma
445b76bbe8
Polishing
2018-11-13 13:35:37 +01:00
Arjen Poutsma
3bab3515b1
Add and use AbstractEncoderTestCase
...
Introduce new base test case for encoder tests, and use it.
Issue: SPR-17449
2018-11-13 13:35:37 +01:00
Arjen Poutsma
0c0de851f4
Add LeakAwareDataBufferFactory
...
Introduce a data buffer factory that can check for memory leaks in
@After methods.
Issue: SPR-17449
2018-11-13 13:35:37 +01:00
Arjen Poutsma
e31914bada
Polishing
2018-11-13 13:35:37 +01:00
Juergen Hoeller
40148c0560
Consistent use of ResolvableType.toClass() for assignability checks
...
Issue: SPR-17086
2018-11-12 20:29:37 +01:00
Juergen Hoeller
3a66927bd2
Polishing
2018-11-12 16:43:43 +01:00
Juergen Hoeller
c58da71006
Synthesize parameter annotations from interface methods as well
...
Issue: SPR-17460
2018-11-12 16:23:14 +01:00
Juergen Hoeller
818c2aa3b9
ServerRequest.attribute(name) defensively accesses concurrent map
...
Issue: SPR-17486
2018-11-12 16:22:42 +01:00
Juergen Hoeller
d96a7b4bfc
ClientRequest.attribute(name) defensively handles null value
...
Issue: SPR-17486
2018-11-12 11:52:21 +01:00
Sam Brannen
b3aad549c9
Fix @since tag
2018-11-10 16:56:39 +01:00
Sam Brannen
865f1f692a
Introduce tests for @Sql and @Transactional support in @Nested test classes
...
This commit was inspired by the following question on Stack Overflow.
https://stackoverflow.com/questions/53236807/spring-boot-testing-run-script-in-a-nested-test-sql-script-sql
2018-11-10 15:47:30 +01:00
Sam Brannen
93df24af16
Polishing
2018-11-10 15:47:29 +01:00
Rossen Stoyanchev
a5339d71ea
WebClient handles no Content-Type with data correctly
...
Issue: SPR-17482
2018-11-09 16:16:03 -05:00
Rossen Stoyanchev
e4c84ec757
Consistent default encoding in DefaultUriBuilderFactory
...
Issue: SPR-17465
2018-11-09 14:13:51 -05:00
Rossen Stoyanchev
f5da737bd4
Polish
2018-11-08 23:13:48 -05:00
Rossen Stoyanchev
c187cb2fa1
Ensure client response is drained with onStatus hook
...
Issue: SPR-17473
2018-11-08 22:41:22 -05:00
Rossen Stoyanchev
ed1d63dcc3
ResolvableMethod copy in spring-messaging src/test
2018-11-08 13:29:21 -05:00
Juergen Hoeller
e26ae9853e
Up-to-date version and link in ASM/CGLIB/Objenesis package javadoc
...
Issue: SPR-17267
Issue: SPR-17372
2018-11-08 16:56:48 +01:00
Juergen Hoeller
362c59c310
Consistently return empty array in case of empty batch arguments
...
Issue: SPR-17476
2018-11-08 13:43:07 +01:00
Stephane Nicoll
b6e8674700
Merge pull request #2011 from bactoria
...
* pr/2011:
Fix typo
2018-11-07 07:48:22 +01:00
황준오
db8a94ce5f
Fix typo
...
Closes gh-2011
2018-11-07 07:47:55 +01:00
Stephane Nicoll
3232825a55
Clarify @Async documentation
...
Issue: SPR-17458
2018-11-06 08:30:30 +01:00
Juergen Hoeller
e71ff2901a
Polishing
2018-11-05 22:59:33 +01:00
Juergen Hoeller
d9c1811d21
Deprecate NON_BRIDGED_METHODS constant as of 5.0.11 as well
...
Issue: SPR-17464
2018-11-05 22:59:18 +01:00
Juergen Hoeller
5e7a8b275d
Polishing
2018-11-05 19:33:24 +01:00
Juergen Hoeller
ea3250c8d6
Explicit notes on class/method-level semantics in class hierarchies
...
Issue: SPR-17445
2018-11-05 19:32:34 +01:00
Juergen Hoeller
b1f5f51503
Synchronized onRefresh execution for concurrent ContextRefreshedEvent
...
Issue: SPR-17442
2018-11-05 19:27:43 +01:00
Rossen Stoyanchev
2ce03f34d9
Fix formatting on index.adoc
2018-11-05 13:16:04 -05:00
Rossen Stoyanchev
9280e32d5d
Feature Github Wiki more prominently
...
Issue: SPR-17469
2018-11-05 13:12:18 -05:00
Juergen Hoeller
5cd525a2b0
Enforce use of ClassLoader.loadClass in case of temporary ClassLoader
...
Issue: SPR-17452
2018-11-05 17:44:46 +01:00
Juergen Hoeller
2ac4355ec0
ASM ClassReader leniently handles label offset mismatch (again)
...
Issue: SPR-17467
2018-11-05 17:44:23 +01:00
Juergen Hoeller
a3cd7af72d
Polishing
2018-11-05 12:27:35 +01:00
Juergen Hoeller
6a9f91081e
Upgrade to Netty 4.1.31 and Undertow 2.0.15
2018-11-05 12:27:20 +01:00
Juergen Hoeller
f65408f646
Avoid references to groovy-all artifact across all modules
...
Issue: SPR-17446
2018-11-05 12:27:07 +01:00
Juergen Hoeller
59fa647e2d
StandardEvaluationContext supports concurrent variable modification
...
Issue: SPR-17448
2018-11-05 12:26:35 +01:00
Juergen Hoeller
0a7dcf14f9
Deprecate ReflectionUtils.invokeJdbcMethod (for removal in 5.2)
...
Issue: SPR-17464
2018-11-05 12:26:20 +01:00
Stephane Nicoll
86846507e2
Remove trailing whitespace
2018-11-05 07:44:36 +01:00
Rossen Stoyanchev
133b8b0b5a
Polish
2018-11-02 16:19:53 -04:00
Juergen Hoeller
dc8f6f7177
Upgrade to CGLIB 3.2.9
...
This CGLIB upgrade literally does not make any difference to Spring users since its only purpose is a default ASM7 declaration in its AsmApi class (which we patched a month ago). We nevertheless leave our local AsmApi copy in place for the time being, allowing for an individual upgrade of the declared ASM API version in the future.
Issue: SPR-17267
Issue: SPR-17371
2018-11-02 19:55:13 +01:00
Rossen Stoyanchev
c2b55e60cd
Fix failing test
...
After the fix #658c7f for lenient parsing of dates, the error message
raised uses an HttpHeaders-formatted date. As a result the test
verifying the error message fails in the beginning of the month between
1-9 because it's formatted slightly differently.
2018-11-01 15:27:39 -04:00
Rossen Stoyanchev
48654c6483
Polish
2018-11-01 14:21:00 -04:00
Stephane Nicoll
47aec50917
Merge pull request #2004 from MasterEx
...
* pr/2004:
Polish reference documentation
2018-11-01 10:22:27 +09:00
Periklis Ntanasis
6f36514369
Polish reference documentation
...
Issue: SRP-17453
Closes gh-2004
2018-11-01 10:21:48 +09:00
Rossen Stoyanchev
9da9bb9652
Fix since tag
2018-10-31 10:56:17 -04:00
Rossen Stoyanchev
3f42e16172
Increase sharing among InvocableHandlerMethod variants
...
In particular between reactive and non-reactive web variants, but
also preparing for a messaing reactive variant.
2018-10-30 17:15:09 -04:00
Rossen Stoyanchev
7c36549e3a
Consistent InvocableHandlerMethod implementations
...
This commit makes the 3 existing InvocableHandlerMethod types more
consistent and comparable with each other.
1. Use of consistent method names and method order.
2. Consistent error formatting.
3. Explicit for loops for resolving argument values in webflux variant
because that makes it more readable, creates less garabage, and it's
the only way to bring consistency since the other two variants cannot
throw exceptions inside Optional lambdas (vs webflux variant which can
wrap it in a Mono).
4. Use package private HandlerMethodArgumentComposite in webflux
variant in order to pick up the resolver argument caching that the
other two variants have.
5. Polish tests.
6. Add missing tests for messaging variant.
2018-10-30 16:36:01 -04:00
Juergen Hoeller
991e9f4269
Upgrade to Joda-Time 2.10.1
2018-10-29 18:33:36 +01:00
Brian Clozel
2a41067a17
Update reactive streams spec URL in ref docs
2018-10-29 15:10:03 +01:00
Sam Brannen
42a95b8f35
Fix typo and polish
2018-10-29 14:47:20 +01:00
Rossen Stoyanchev
76d203fc61
Merge pull request #2001 from tamkylet/readme-writing-edit
2018-10-29 09:28:18 -04:00
Rossen Stoyanchev
9fc7bfde99
Polish README
2018-10-29 09:27:19 -04:00
tamkylet
a999c4aa7e
readme writing changes to improve readability
2018-10-29 09:18:45 -04:00
Spring Buildmaster
a82d726f76
Next Development Version
2018-10-29 10:33:23 +00:00
Brian Clozel
5fb8dec50e
Upgrade to Reactor Californium-SR2
2018-10-29 10:31:29 +01:00
Juergen Hoeller
dc1e3b4628
Exclude FactoryBean implementation methods on CGLIB proxies as well
...
Issue: SPR-17374
2018-10-27 14:36:56 +02:00
Rossen Stoyanchev
fa096dc60f
Minor refactoring in StringDecoder + polish
...
1. Avoid re-creating the List with delimited byte arrays on every
request if using the default delimiters which don't vary by charset.
2. Replace flatMap with flatMapIterable for splitOnDelimiter.
3. Avoid going through DataBufferUtils#join, and unnecessarily creating
Flux from the List, since the join method needs a list anyway.
2018-10-26 13:24:53 -04:00
Brian Clozel
fc957e95bb
Configure ResourceUrlProvider in WebFlux
...
Prior to this commit, no `ResourceUrlProvider` was configured
in WebFlux (no bean was contributed by the WebFlux infrastructure).
Also, several `ResourceTransformer` instances that extend the
`ResourceTransformerSupport` base class need a `ResourceUrlProvider`
to resolve absolute URLs when rewriting resource URLs. At this point,
no `ResourceUrlProvider` was configured and they could only resolve
relative URLs.
This commit contributes a new `ResourceUrlProvider` to the WebFlux
configuration; this bean can be reused by the WebFlux infrastructure and
application code.
This also automatically configure this shared `ResourceUrlProvider`
instance on the resource chain where needed.
Issue: SPR-17433
2018-10-26 13:56:00 +02:00
Juergen Hoeller
3fee8cb625
Polishing
2018-10-26 11:43:46 +02:00
Arjen Poutsma
e68bf010da
Fix memory leak for ServerSentEventHttpMessageWriter
...
Issue: SPR-17419
2018-10-26 11:36:05 +02:00
Juergen Hoeller
f32e1bcbe3
Polishing
2018-10-26 11:07:29 +02:00
Vikash Tiwari
8df3fd3f1d
Remove unnecessary null check
2018-10-26 10:17:04 +02:00
Rossen Stoyanchev
4faee165db
Documentation updates for working with DataBuffers
...
Issue: SPR-17409
2018-10-25 23:46:39 -04:00
Rossen Stoyanchev
8223ed38c8
Polish Reactive Core and Codecs sections
...
Issue: SPR-17409
2018-10-25 23:45:09 -04:00
Juergen Hoeller
3681d58e98
SpringBeanContainer leniently applies fallback on any BeansException
...
Issue: SPR-17430
2018-10-25 18:06:06 +02:00
Brian Clozel
2146e13787
Fix absolute paths when transforming resources
...
Prior to this commit, `ResourceTransformerSupport.toAbsolutePath`
would call `StringUtils.applyRelativePath` in all cases. But this
implementation is prepending the given path even if the relative path
starts with `"/"`.
This commit skips the entire operation if the given path is absolute,
i.e. it starts with `"/"`.
Issue: SPR-17432
2018-10-25 16:42:47 +02:00
Juergen Hoeller
a61d107606
Asciidoc revision (chapter declarations, javadoc references, etc)
2018-10-25 15:15:58 +02:00
Juergen Hoeller
67bd3f670f
Upgrade to AspectJ 1.9.2, Rome 1.11.1, OpenPDF 1.2.5, POI 4.0
2018-10-25 15:15:47 +02:00
Arjen Poutsma
95542778ad
Fix MultipartHttpMessageWriterTests
...
Issue: SPR-17419
2018-10-25 12:13:03 +02:00
Arjen Poutsma
7a8a2d9608
Fix HttpMessageWriter tests
...
Issue: SPR-17419
2018-10-25 12:13:03 +02:00
Arjen Poutsma
256a6fe6cb
Fix memory leak for ServerSentEventHttpMessageWriter
...
This commit fixes a memory leak in ServerSentEventHttpMessageWriter
that occurs when the input stream contains an error. Test added as well.
Issue: SPR-17419
2018-10-25 12:13:03 +02:00
Brian Clozel
d28b73ad22
Rollback to Asciidoctor 1.5.8
2018-10-25 10:12:01 +02:00
Juergen Hoeller
56a8526f3c
Upgrade to Checkstyle 8.14
2018-10-25 00:29:08 +02:00
Juergen Hoeller
fb2565f2fe
Upgrade plugins to Kotlin 1.2.71 and Asciidoctor 1.5.9
2018-10-24 23:57:33 +02:00
Brian Clozel
50a4769162
Fix ResourceUrlEncodingFilter lifecycle
...
Prior to this commit, the `ResourceUrlEncodingFilter` would wrap the
response and keep a reference to the request. When
`HttpServletResponse.encodeURL` is later called during view rendering,
the filter looks at the request and extracts context mapping information
in order to resolve resource paths in views.
This approach is flawed, when the filter is used with JSPs - if the
request is forwarded to the container by the `InternalResourceView`,
the request information is overwritten by the container. When the view
is being rendered, the information available in the request is outdated
and does not allow to correctly compute that context mapping
information.
This commit ensures that that information is being extracted from the
request as soon as the `ResourceUrlProvider` is set as a request
attribute.
Issue: SPR-17421
2018-10-24 21:18:57 +02:00
Juergen Hoeller
ffa032e78f
Polishing
2018-10-24 20:46:26 +02:00
Juergen Hoeller
f0f1979fc5
Support for @RequestParam Map declared with MultipartFile/Part values
...
Issue: SPR-17405
2018-10-24 20:44:58 +02:00
Arjen Poutsma
488a1d4561
Review DataBufferUtils for cancellation memory leaks
...
Issue: SPR-17408
2018-10-24 16:28:21 +02:00
Arjen Poutsma
611019b73c
Fix memory leak for Jaxb2XmlEncoder
...
This commit fixes a memory leak in Jaxb2XmlEncoder that occurs when
the input stream contains an error. Test added as well.
Issue: SPR-17419
2018-10-24 16:28:21 +02:00
Arjen Poutsma
11a017d8b7
Add error stream tests for ProtobufEncoderTests
...
Issue: SPR-17419
2018-10-24 16:28:21 +02:00
Rossen Stoyanchev
2439f87a48
Add onDiscard hook to Jetty client request
...
The flatMap operation in writeAndFlushWith could buffer internally.
Issue: SPR-17424
2018-10-23 21:41:27 -04:00
Rossen Stoyanchev
2ba5ded306
Polish Jetty reactive HttpClient connector
2018-10-23 21:34:42 -04:00
Rossen Stoyanchev
2eae37dde0
Update ref docs on ResponseEntity and reactive types
...
Issue: SPR-17400
2018-10-23 16:42:31 -04:00
Rossen Stoyanchev
42b7c5a79b
Upgrade to Californium snapshots
...
Towards Californium SR2 to confirm fix for SPR-17306.
2018-10-23 15:52:05 -04:00
Juergen Hoeller
1cb08f5782
Upgrade to RxJava 2.2.3 and Undertow 2.0.14
2018-10-23 19:34:39 +02:00
Rossen Stoyanchev
feeec344e5
ForwardedHeaderFilter works with Servlet FORWARD
...
Issue: SPR-16983
2018-10-23 11:53:46 -04:00
Arjen Poutsma
51bb96db47
Fix ResourceRegionEncoder and tests
...
Fix ResourceRegionEncoder so that it checks for resource existance
before writing boundaries. Also defer data buffer allocation until
necessary.
Issue: SPR-17419
2018-10-23 16:41:48 +02:00
Arjen Poutsma
eac9e66c46
Fix memory leak when canceling read from AsynchronousFileChannel
...
This commit fixes a memory leak that occurs when reading from a
AsynchronousFileChannel, and cancelling the subscription.
Issue: SPR-17419
2018-10-23 16:41:48 +02:00
Brian Clozel
28cf7b728f
Relax handler supports checks in RequestMappingHandlerAdapter
...
Issue: SPR-17420
2018-10-22 20:31:41 +02:00
Juergen Hoeller
f68b1e0bce
Upgrade to Objenesis 3.0.1
...
Issue: SPR-17372
2018-10-22 18:54:18 +02:00
Juergen Hoeller
c3c2383b0d
Align serialVersionUID declaration with ASM master
...
Issue: SPR-17267
2018-10-22 18:53:23 +02:00
Rossen Stoyanchev
41e6aa6de2
Restore log level for resolved exceptions
...
The fix for SPR-17178 switched from debug to warn level warning for
all sub-classes of AbstractHandlerExceptionResolver where the request
concerned the DefaultHandlerExceptionResolver only.
This commit restores the original DEBUG level logging that was in
AbstractHandlerExceptionResolver from before SPR-17178. In addition
DefaultHandlerExceptionResolver registers a warnLogCategory by default
which enables warn logging and hence fulfilling the original goal
for SPR-17178.
Issue: SPR-17383
2018-10-22 12:13:18 -04:00
Rossen Stoyanchev
de453ace86
Revert "@ExceptionHandler methods logs at DEBUG level again"
...
This reverts commit 162112.
Instead we'll go for a bigger rollback of the change from SPR-17178 so
that only DefaultHandlerExceptionResolver does warn logging by default.
Issue: SPR-17388
2018-10-22 11:46:02 -04:00
Arjen Poutsma
0176d362be
Add error stream tests for Jackson2JsonDecoder
...
Issue: SPR-17418
2018-10-22 16:00:32 +02:00
Arjen Poutsma
946ec7e22e
Fix memory leaks in ProtobufDecoder
...
Issue: SPR-17418
2018-10-22 16:00:32 +02:00
Arjen Poutsma
a64e85fcc6
Javadoc
2018-10-22 16:00:32 +02:00
Arjen Poutsma
47fe05066d
Add error stream tests for Jaxb2XmlDecoderTests
...
Issue: SPR-17418
2018-10-22 16:00:32 +02:00
Arjen Poutsma
a37efc9881
Add error stream tests for XmlEventDecoder
...
Issue: SPR-17418
2018-10-22 16:00:32 +02:00
Arjen Poutsma
f738273486
Fix buffering issue in StringDecoder
...
Issue: SPR-17418
2018-10-22 16:00:32 +02:00
Juergen Hoeller
1c67ef4bed
ConfigurableWebApplicationContext needed for contextClass parameter
...
Issue: SPR-17414
2018-10-22 15:14:08 +02:00
Juergen Hoeller
dd2ce20687
SpringFactoriesLoader tolerates whitespace around class names
...
Issue: SPR-17413
2018-10-22 15:13:58 +02:00
Juergen Hoeller
83a54dba7e
Avoid stacktrace if root resource is not resolvable in file system
...
Issue: SPR-17417
2018-10-22 15:13:49 +02:00
Brian Clozel
85262a7932
Fix Map.put contract for HeadersAdapter impl.
...
This commit fixes the `Map.put` contract for both Reactor Netty and
Tomcat specific `HeadersAdapter` implementations.
Issue: SPR-17415
2018-10-22 14:53:14 +02:00
Rossen Stoyanchev
862dd23975
Server adapters release buffers on error/cancel
...
Review and update Servlet and Undertow adapters to release any data
buffers they be holding on to at the time of error or cancellation.
Also remove onDiscard hooks from Reactor and Undertow request body.
For Reactor we expect it to be handled. For Undertow there isn't
any Reactor Core upstream for the callback to be useful.
Issue: SPR-17410
2018-10-19 21:45:14 -04:00
Arjen Poutsma
149d416e8e
Review DataBufferUtils for error/cancellation memory leaks
...
Issue: SPR-17408
2018-10-19 12:16:18 +02:00
Rossen Stoyanchev
1621125ccf
@ExceptionHandler methods logs at DEBUG level again
...
Issue: SPR-17383
2018-10-18 22:49:47 -04:00
Juergen Hoeller
a0b42a3dfd
Upgrade to Hibernate ORM 5.3.7
2018-10-18 18:05:26 +02:00
Juergen Hoeller
5b5f7190bf
Declare InvocableHandlerMethod.getMethodArgumentValues as protected
...
Issue: SPR-17404
2018-10-18 18:05:07 +02:00
Juergen Hoeller
7ff938b3ef
LogFormatUtils.formatValue leniently handles toString() exceptions
...
Issue: SPR-17397
2018-10-18 18:04:32 +02:00
Juergen Hoeller
da23505e94
Clarify FactoryBean initialization effect in getBeanNamesForAnnotation
...
Issue: SPR-17392
2018-10-18 18:04:04 +02:00
Juergen Hoeller
00b7782b5f
Clarify destruction order effect in @DependsOn annotation javadoc
...
Issue: SPR-17384
2018-10-18 18:03:44 +02:00
Arjen Poutsma
6f0c869afe
Polishing
2018-10-18 17:16:34 +02:00
Arjen Poutsma
857b600675
Fix memory leak in AbstractJackson2Encoder
...
Fixes a DataBuffer memory leak where a created buffer was not release
if Jackson threw an exception.
2018-10-18 17:09:53 +02:00
Arjen Poutsma
d303c8a20f
Store PathPattern instead of String in attributes
...
This commit changes the attributes stored under
RouterFunctions.MATCHING_PATTERN_ATTRIBUTE and
HandlerMapping.BEST_MATCHING_PATTERN_ATTRIBUTE from a String to a
PathPattern, similar to what annotated controllers set.
Issue: SPR-17395
2018-10-18 14:48:45 +02:00
Brian Clozel
ab8310b5f3
Fix HeadersAdapters implementations
...
This commit harmonizes the `HeadersAdapter` implementations across all
supported servers with regards to the `get(Object key)` contract; some
server implementations are not sticking to a `Map`-like contract and
return empty `List` instead of `null` when a header is not present.
This also fixes the `size()` implementations to reflect the number of
header keys, as some implementations consider multiple values for the
same header as different entries.
Issue: SPR-17396
2018-10-18 11:18:29 +02:00
Rossen Stoyanchev
fdaceeb6c9
Remove checks and updates to transfer-encoding
...
Issue: SPR-17393
2018-10-16 16:49:46 -04:00
Sebastien Deleuze
2c5a1af236
Leverage Java reflection for Kotlin enums
...
As discussed in KT-25165, from a Kotlin POV enum constructors
have no parameter, this is an "implementation detail"
required for running on the JVM, so it seems relevant to skip
Kotlin reflection in that case and just delegate to Java
reflection.
Issue: SPR-16931
2018-10-16 16:40:02 +02:00
Rossen Stoyanchev
f885910887
Remove unused bom import too
2018-10-15 14:39:20 -04:00
Rossen Stoyanchev
e14cf699c8
Remove unused dependencies from spring-messaging
...
Tomcat and Jetty integration tests were moved out of spring-messaging
a very long time ago (before 4.0), but the dependencies remained
unnoticed until now.
2018-10-15 14:04:15 -04:00
Juergen Hoeller
93bb78ec23
Avoid private bean classes in integration tests (for CGLIB on JDK 11)
...
Issue: SPR-16391
2018-10-15 12:26:38 +02:00
Spring Buildmaster
b2bf5fe0f3
Next Development Version
2018-10-15 07:20:38 +00:00
Rossen Stoyanchev
423aa28ed5
HttpRange validates requested ranges
...
Issue: SPR-17318
2018-10-14 22:49:25 -04:00
Juergen Hoeller
50949415d7
Upgrade spring-test to Hibernate ORM 5.3.6 (for JDK 11 compatibility)
...
Issue: SPR-16391
2018-10-15 00:39:25 +02:00
Juergen Hoeller
608fd766cb
Upgrade to Checkstyle 8.13, Groovy 2.5.3, Aalto XML 1.1.1
2018-10-15 00:01:45 +02:00
Juergen Hoeller
58b3af9475
Nullability fine-tuning and related polishing
...
Issue: SPR-17250
2018-10-14 23:29:46 +02:00
Juergen Hoeller
5f2d47a17e
MethodValidationInterceptor excludes FactoryBean metadata methods
...
Issue: SPR-17374
2018-10-14 21:07:56 +02:00
Tomasz Nurkiewicz
2255d222e3
Fix punctuation in reference manual ( #1992 )
2018-10-13 11:44:49 +03:00
Rossen Stoyanchev
ecd0d7f0f6
Complete initialization with bindToRouterFunction
...
Issue: SPR-17239
2018-10-12 17:11:35 -04:00
Juergen Hoeller
309e70a48e
Separate factory method cache for introspection purposes
...
Issue: SPR-17358
Issue: SPR-8891
2018-10-12 22:53:50 +02:00
Rossen Stoyanchev
658c7f99d7
Lenient date parsing in HeadersResultMatchers
...
Rather than formatting the expected value, and be susceptible to
minor formatting differences (e.g. 01 vs 1 for day of month), parse the
actual header value leniently with HttpHeaders and compare time values.
Issue: SPR-17330
2018-10-12 15:41:42 -04:00
Rossen Stoyanchev
c5ca56bd50
Polish
2018-10-12 12:15:45 -04:00
Stephane Nicoll
05830912a5
Merge pull request #1991 from Cikey
...
* pr/1991:
Fix deprecated property in MBeanExporter documentation
2018-10-12 16:15:12 +02:00
Christian Kulpa
864d7eaf11
Fix deprecated property in MBeanExporter documentation
...
Closes gh-1991
2018-10-12 16:10:02 +02:00
Juergen Hoeller
bfc5ad890e
MockHttpServletRequest resets InputStream/Reader on setContent
...
Issue: SPR-17373
2018-10-12 16:00:31 +02:00
Juergen Hoeller
b7e4a56e5c
Mark PathResourceTests as deprecated (along with PathResource)
...
Issue: SPR-17320
2018-10-12 13:17:28 +02:00
Juergen Hoeller
0b2c482e29
Upgrade to Selenium HtmlUnit Driver 2.33
2018-10-12 13:17:14 +02:00
Juergen Hoeller
dcf2861db5
Upgrade to Objenesis 3.0
...
Includes jarjar upgrade since jarjar 1.3 fails to properly relocate Objenesis 3.0 classes into org.springframework.objenesis package.
Issue: SPR-17372
2018-10-12 13:17:01 +02:00
Juergen Hoeller
5474995288
Exclude original AsmApi class from CGLIB repack jar
...
Issue: SPR-17371
2018-10-12 12:14:00 +02:00
Juergen Hoeller
a2ae5f6972
Force CGLIB to always specify ASM7 for its visitors
...
Issue: SPR-17371
2018-10-12 12:01:50 +02:00
陈灵敏
4ee704cedf
Supplier for timeout result in DeferredResult
...
Issue: SPR-17364
2018-10-11 20:26:01 -04:00
Rossen Stoyanchev
8df0bc88d2
Improve access to raw content in WebTestClient
...
If the content has not been consumed, cause it to be produced, and
wait for a certain amount of time before giving up, so the raw content
can be made available. This can occur when:
1) In a mock server scenario the Flux representing the client request
content is passed directly to the mock server request, but is never
consumed because of an error before the body is read.
2) Test obtains FluxExchangeResult (e.g. for streaming) but instead of
consuming the Flux, it calls getResponseBodyContent() instead.
Issue: SPR-17363
2018-10-11 20:25:56 -04:00
Rossen Stoyanchev
c567e65eea
WritetapConnector internal refactoring
...
Extract a common delegate class to share between the request and the
to wiretap a Publisher and record and buffer its data.
Preparation for SPR-17363.
2018-10-11 19:47:37 -04:00
Rossen Stoyanchev
050f44d75b
Rename WebTestClientConnectorTests to match class name
2018-10-11 19:47:37 -04:00
Stephane Nicoll
60b5161fbe
Upgrade to Reactor Californium-SR1
2018-10-11 20:30:43 +02:00
Brian Clozel
10d5de7d63
Handle special headers in Tomcat and Jetty
...
This commit adds special processing of some HTTP response headers in
Jetty and Tomcat; they both consider some headers like "Content-Length"
as specific and require explicit calls on the `HttpServletResponse`
itself on top of setting the HTTP response header.
Issue: SPR-17250
2018-10-11 14:37:14 +02:00
Arjen Poutsma
8de5c05af0
Set BEST_MATCHING_HANDLER_ATTRIBUTE in WebFlux.fn
...
SPR-17367
2018-10-11 13:44:06 +02:00
Brian Clozel
f12c28e402
Avoid copying in DefaultServerHttpRequestBuilder
...
This commit avoids copying HTTP headers when mutating an HTTP request.
Instead, we're now unwrapping the `ReadOnlyHttpHeaders` (which is most
likely backed by the native request headers).
Issue: SPR-17250
2018-10-11 12:11:47 +02:00
Brian Clozel
ce7278aaf4
Optimize HTTP headers management
...
Several benchmarks underlined a few hotspots for CPU and GC pressure in
the Spring Framework codebase:
1. `org.springframework.util.MimeType.<init>(String, String, Map)`
2. `org.springframework.util.LinkedCaseInsensitiveMap.convertKey(String)`
Both are linked with HTTP request headers parsing and response headers
writin during the exchange processing phase.
1) is linked to repeated calls to `HttpHeaders.getContentType`
within a single request handling. The media type parsing operation
is expensive and the result doesn't change between calls, since
the request headers are immutable at that point.
This commit improves this by caching the parsed `MediaType` for the
`"Content-Type"` request header in the `ReadOnlyHttpHeaders` class.
This change is available for both Spring MVC and Spring WebFlux.
2) is linked to insertions/lookups in the `LinkedCaseInsensitiveMap`,
which is the data structure behind `HttpHeaders`.
Those operations are creating a lot of garbage (including a lot of
`String` created by `toLowerCase`). We could choose a more efficient
data structure for storing HTTP headers data.
As a first step, this commit is focusing on Spring WebFlux and
introduces `MultiValueMap` implementations mapped by native HTTP headers
for the following servers: Tomcat, Jetty, Netty and Undertow.
Such implementations avoid unnecessary copying of the headers
and leverages as much as possible optimized operations provided by the
native implementations.
This change has a few consequences:
* `HttpHeaders` can now wrap a `MultiValueMap` directly
* The default constructor of `HttpHeaders` is still backed by a
`LinkedCaseInsensitiveMap`
* The HTTP request headers for the websocket HTTP handshake now need to
be cloned, because native headers are likely to be pooled/recycled by
the server implementation, hence gone when the initial HTTP exchange is
done
Issue: SPR-17250
2018-10-11 12:11:47 +02:00
volkovandr
61403e3bd3
Updated Javadoc: date format patterns SPR-17366
2018-10-11 10:52:32 +02:00
Brian Clozel
cc172bcedc
Upgrade to Reactor Californium SNAPSHOTs
...
Preparing for Californium-SR1
2018-10-11 10:46:01 +02:00
Juergen Hoeller
e18149878c
Upgrade to Mockito 2.23
...
Includes JSON-P 1.1.3.
2018-10-10 23:53:33 +02:00
Juergen Hoeller
c89e3e6e0d
Restore original factory method caching (addressing Boot regressions)
...
Issue: SPR-17358
2018-10-10 23:53:13 +02:00
Rossen Stoyanchev
d05924165b
Refactor FilterWebHandler and DefaultWebFilterChain
...
The chain is initialized once and re-used vs creating the "next" chains
on every request.
2018-10-10 14:33:51 -04:00
Stephane Nicoll
82a211fa96
Fix checkstyle violation
2018-10-10 10:45:08 +02:00
Stephane Nicoll
062805fcb3
Recursively process DeferredImportSelector properly
...
Previously, if a DeferredImportSelector was identified at a later stage
as part of processing the collected set of deferred imports, such
selector was processed as a regular import selector.
Semantically, it makes sense as we already are in the deferred phase at
this point and it doesn't make much sense to bother about the extra
contract.
However, Spring Framework 5 introduced the notion of Group that a
deferred import selector can define. When it does, the container has to
honour the contract of the Group rather than calling the simpler
ImportSelector parent contract.
This commit restructures the processing of such case. When a deferred
import selector is detected while processing deferred import selectors,
a group is created with only that selector and the group API is invoked.
Issue: SPR-17351
2018-10-10 10:19:11 +02:00
Juergen Hoeller
053820c4ff
Polishing
2018-10-09 23:14:49 +02:00
Juergen Hoeller
f662e3b85e
BeanFactoryAnnotationUtils provides qualifiedBeansOfType method
...
Includes consistent upfront resolution of factory method annotations.
Issue: SPR-8891
2018-10-09 23:14:27 +02:00
Juergen Hoeller
44afed426a
ObjectProvider stream consistently includes beans from parent context
...
Issue: SPR-17356
2018-10-09 23:14:19 +02:00
Juergen Hoeller
83909e6e1e
Consistent exposure of empty attribute arrays in AnnotationMetadata
...
Issue: SPR-17347
2018-10-09 23:14:13 +02:00
Juergen Hoeller
fdf340306d
Defensively use Class.forName instead of ClassLoader.loadClass
...
Issue: SPR-17333
2018-10-09 23:14:05 +02:00
Juergen Hoeller
d9e7253532
SpringBeanContainer exposes bean instance returned from initializeBean
...
Issue: SPR-17332
2018-10-09 23:13:58 +02:00
Juergen Hoeller
2b986af310
BasicAuthenticationInterceptor with HttpHeaders.setBasicAuth alignment
...
Issue: SPR-17326
2018-10-09 23:13:46 +02:00
Juergen Hoeller
c8c0737ce7
AbstractApplicationContext.getApplicationListeners() exposes all statically registered listeners
...
Issue: SPR-17324
2018-10-09 23:13:37 +02:00
Juergen Hoeller
19f3347932
SpringBeanJobFactory supports autowiring through ApplicationContext
...
Issue: SPR-17323
2018-10-09 23:13:25 +02:00
Juergen Hoeller
efdbddd358
Full alignment of spring-test vs spring-web MockCookie variants
...
Issue: SPR-17321
2018-10-09 23:13:18 +02:00
Juergen Hoeller
cf3635b42d
Resource.lastModified() propagates 0 value if target resource exists
...
Includes use of Files.getLastModifiedTime for NIO Paths, preservation of NIO-based resolution on createRelative, deprecation of PathResource, and consistent use of getContentLengthLong over getContentLength.
Issue: SPR-17320
2018-10-09 23:13:11 +02:00
Juergen Hoeller
1e0de072f9
Upgrade to ASM 7.0 beta release
...
Issue: SPR-17267
2018-10-09 23:13:02 +02:00
Rossen Stoyanchev
bb5c8ed4e8
Correct Javadoc in ServletUriComponentsBuilder
...
Replace all method level comments related to forwaded headers, some
current and some outdated, with a single class-level comment.
Issue: SPR-17317
2018-10-09 16:51:41 -04:00
Rossen Stoyanchev
c01f350abe
Move MonoToListenableFutureAdapter to spring-core
...
This was a package private class in spring-messaging since 5.0, and was
recently made public in 5.1. This commit promotes it to spring-core
where it belongs next to all other ListenableFuture support classes.
Follow-up refactoring for SPR-17336
2018-10-09 16:26:24 -04:00
Rossen Stoyanchev
928c541401
Simplify MonoToListenableFutureAdapter
...
Collapse the package private AbstractMonoToListenableFutureAdapter into
its only sub-class MonoToListenableFutureAdapter. There is no need for
such an abstract class that makes it possible to adapt from one source
to a different target type. That's already covered by
ListenableFutureAdapter.
Follow-up refactoring for SPR-17336.
2018-10-09 15:22:19 -04:00
Rossen Stoyanchev
bef22ec9b5
Consistent MonoToListenableFutureAdapter.cancel()
...
Issue: SPR-17336
2018-10-09 14:55:04 -04:00
Rossen Stoyanchev
29ff8a8d12
More defensive check for MockAsyncContext
...
Avoid automatically unwrapping the request in TestDispatcherServlet,
if we find the MockAsyncContext.
Issue: SPR-17353
2018-10-09 11:56:47 -04:00
Sebastien Deleuze
af6a5566a3
Replace context by provider<T>() in Kotlin bean DSL
...
Spring Framework 5.1.0 exposed by mistake context in the Kotlin bean DSL
API in order to fix SPR-16269. Now that BeanFactory#getBeanprovider is
available, it should be exposed via a provider<Foo>() function in order
to provide a more clean API instead.
Issue: SPR-17352
2018-10-08 14:00:12 +02:00
Stephane Nicoll
635d2146db
Merge pull request #1983 from nfadeev
...
* pr/1983:
Fix bullet list layout
2018-10-07 13:46:13 +02:00
Mykola Fadieiev
ccce61e2b2
Fix bullet list layout
...
Closes gh-1983
2018-10-07 13:45:46 +02:00
Rossen Stoyanchev
9630445253
Add sections on form and multipart codecs
...
Explain the need for consistent use of ServerWebExchange for access to
the parsed (and cached) form data or multipart data.
Issue: SPR-17291
2018-10-05 21:27:07 -04:00
Rossen Stoyanchev
1c90d481d5
Rename Motivation to Overview and restore sub-sections
2018-10-05 16:37:56 -04:00
Rossen Stoyanchev
d16a710d13
Polish WebFlux codecs section in the docs
2018-10-05 16:36:19 -04:00
Rossen Stoyanchev
4d24503317
Restore sub-section headings in web content
...
Headings are optimized for how they appear in the left-hand side
navitation menu, with context provided by parent headings, and not
necessarily for how they read on their own.
At 2nd and 3rd level of nesting, which is where most headings are,
the wrapping becomes too distracting and the left-hand side navigation
sprawling.
2018-10-05 15:54:38 -04:00
Rossen Stoyanchev
1489457025
Restore calls to setLocale in MockHttpServletResponse
...
Issue: SPR-17284
2018-10-05 13:50:41 -04:00
Rossen Stoyanchev
9064ef59f9
Workaround for Synchronoss content-length limitation
...
Issue: SPR-17345
2018-10-05 12:12:49 -04:00
dmrachkovskyi
983bce125f
Defer obtaining argument resolver default value
...
Issue: SPR-17338
2018-10-05 11:39:19 -04:00
Sam Hubbard
80e7819d6f
Fix construction of NullSafeComparator in nullsLow
...
Previously, both nullsLow(Comparator<T>) and
nullsHigh(Comparator<T>) returned a
NullSafeComparator which treated nulls as being
high. This commit corrects this typo.
2018-10-05 13:20:28 +02:00
Stephane Nicoll
cb4fa3795a
Merge pull request #1979 from rupertw
...
* pr/1979:
Fix formatting
2018-10-05 09:21:23 +02:00
www
9d5aced8c5
Fix formatting
...
Prefix the opening brace with a single space in some classes.
Replace tab character with space in javadoc of AttributeAccessor.
Also fix some other trivial formatting errors.
Closes gh-1979
2018-10-05 09:20:47 +02:00
Arjen Poutsma
ff7ccf0d4e
Only clear request attribute when different
...
With this commit, we now make sure that the attributes are not cleared
if they are same as the nested request.
Issue: SPR-17304
2018-10-04 16:50:11 +02:00
Arjen Poutsma
9975646ffb
Add more RequestPredicate tests for attributes
...
This commit adds test for delegating request predicates that verify
whether the request attributes are properly restored when a delegate
fails.
2018-10-04 15:18:08 +02:00
Arjen Poutsma
38e5c01c3c
Move negating RequestPredicate to RequestPredicates
2018-10-04 15:15:36 +02:00
Sebastien Deleuze
3ff5731429
Leverage ObjectProvider instead of autowired containers
...
In order to be able to leverage WebFlux configuration in a functional
way, WebHttpHandlerBuilder and RouterFunctionMapping should leverage
new ObjectProvider capabilities to get a sorted list of beans by type
instead of using autowired containers.
Issue: SPR-17327
2018-10-03 14:14:47 +02:00
Rossen Stoyanchev
1320fed7fe
Use WebsocketOutbound#sendClose
...
Switch to using the sendClose method available since Reactor Netty 0.8
vs explicitly sending a CloseWebSocketFrame.
Related to SPR-17306, but does not address the root cause.
2018-10-02 09:37:32 -04:00
Sam Brannen
e63bffcfa0
Introduce not-null precondition for MockCookie parsing
2018-10-02 13:07:20 +02:00
Sam Brannen
77205ca165
Polish MockCookie contribution
...
Issue: SPR-17321, #1974
2018-10-02 13:06:16 +02:00
Sam Brannen
31095f1d4e
Move MockCookie parsing tests to correct class
...
Issue: SPR-17321, #1974
2018-10-02 12:43:17 +02:00
Sam Brannen
49bc746640
Polish MockCookie[Tests]
2018-10-02 12:41:07 +02:00
Michael Bell
1b8421c7fe
Fix MockCookie parsing when attribute is omitted
...
Issue: SPR-17321, #1974
2018-10-02 06:18:45 -04:00
0xflotus
00353a073c
fixed further typo
2018-10-01 21:48:49 +02:00
0xflotus
9fed4d0375
do you mean 'compose'?
2018-10-01 21:48:02 +02:00
0xflotus
fc03707445
fixed ContentNegotiationConfigurer
2018-10-01 21:47:46 +02:00
Rossen Stoyanchev
7aa933437c
Update links to http://java.net/jira
2018-10-01 12:01:28 -04:00
cac03
a8f4c596fd
Fix trivial errors in data-access and core-aop in docs
...
Fix some syntax errors and typos
* Fix syntax error in core-aop docs which caused incorrect document
generation
* Surround @Pointcut values with quotation marks
* Replace 'I' with 'you' in the 'In the XML style I can declare the
first two pointcuts' sentence
* Fix compileror typo
* Remove redundant parenthesis
* Remove redundant commas
* Add 'can' to the 'You configure additional aspects in similar fashion'
sentence
* Replace 'You can annotation any method' with 'You can annotate any
method'
* Add space to 'non-recoverablepersistence'
* Replace 'we shows' with 'we show'
* Fix 'java.utils.Map' typo
* Add space to 'byusing'
* Add space to '`Lifecycle`by'
* Replace 'You cN' with 'You can'
* Replace 'encourag' with 'encourage'
2018-09-30 20:29:11 +02:00
Juergen Hoeller
058f027c5b
Upgrade to Kotlin 1.2.71 and Netty 4.1.30
2018-09-29 18:58:13 +02:00
Juergen Hoeller
2ec41c8153
Polishing
2018-09-29 18:57:56 +02:00
Juergen Hoeller
ad29f97a05
Polishing
2018-09-29 17:16:25 +02:00
Juergen Hoeller
9063e66c5d
AbstractApplicationEventMulticaster pre-sorts singleton listeners
...
Issue: SPR-17307
2018-09-29 17:15:53 +02:00
Juergen Hoeller
d6dfde3e5b
LogFactoryService implements Commons Logging attribute methods
...
Issue: SPR-17302
2018-09-29 17:10:03 +02:00
Juergen Hoeller
333e327289
Revised javadoc for up-to-date constructor autowiring semantics
...
Issue: SPR-17299
2018-09-29 17:09:30 +02:00
Juergen Hoeller
255015fc6b
Prepared for backport to 4.3.20 and 5.0.10
...
Issue: SPR-17295
2018-09-29 17:08:57 +02:00
Stephane Nicoll
6ff8cd8a9f
Merge pull request #1967 from cac03
...
* pr/1967:
Fix trivial errors in core-beans documentation
2018-09-25 14:21:45 -04:00
cac03
18c9e3e812
Fix trivial errors in core-beans documentation
...
Closes gh-1967
2018-09-25 14:21:13 -04:00
Juergen Hoeller
a76b8deda5
Consistent copyright header and fine-tuned javadoc in test/web mocks
...
Issue: SPR-17295
2018-09-24 00:27:50 +02:00
Stephane Nicoll
7ca6b9f7d2
Fix copyright header
2018-09-23 17:26:40 +02:00
Juergen Hoeller
51ba322947
MockHttpServletRequest allows for removing registered header values
...
Includes full alignment of spring-test vs spring-web mock variants.
Issue: SPR-17295
2018-09-23 14:44:15 +02:00
Sam Brannen
9e2912e1dd
Fix source code callouts in Reference Manual
2018-09-23 13:30:17 +02:00
Jay Bryant
6d226326c9
Editing pass for the integration and languages chapters.
...
I edited for spelling, puncutation, grammar, usage, and corporate voice. I also added a bunch of cross-references and links to the Javadoc.
I also corrected the rendering problems that I had accidentally created in previous commits (because I was adjusting headings and adding callouts to listings.
2018-09-21 23:27:03 +02:00
Sam Brannen
45ecfc6df9
Fix source code callouts in Reference Manual
2018-09-21 16:33:04 +02:00
Sam Brannen
59e87f950b
Fix heading levels in Reference Manual
2018-09-21 16:32:06 +02:00
Sam Brannen
917bb53718
Fix formatting in Data Access chapter
2018-09-21 15:40:34 +02:00
Sam Brannen
f7263abbf0
Fix broken links in Testing chapter
2018-09-21 15:29:49 +02:00
Spring Buildmaster
2a6da6a623
Next Development Version
2018-09-21 07:27:05 +00:00
Rossen Stoyanchev
92b3f2aee7
Document timeout configuration for Reactor HttpClient
...
Issue: SPR-17241
2018-09-20 10:38:28 -04:00
Juergen Hoeller
80e52de231
Upgrade to HtmlUnit 2.33 and Apache Johnzon 1.1.10
2018-09-20 11:55:50 +02:00
Juergen Hoeller
75627617c9
Ordered streams consistently operate on resolved bean instances
...
Issue: SPR-17272
2018-09-20 11:31:42 +02:00
Juergen Hoeller
3f5a7bbf04
Remove snapshot repository from build setup
2018-09-20 11:29:59 +02:00
Stephane Nicoll
093a863906
Upgrade to Gradle 4.10.2
2018-09-20 11:11:50 +02:00
Stephane Nicoll
90c29b3af3
Upgrade to Reactor Californium RELEASE
2018-09-20 10:49:07 +02:00
Sebastien Deleuze
f7839675f6
Don't set role in Kotlin bean DSL unless specified
...
Issue: SPR-17275
2018-09-20 00:21:38 +02:00
Sebastien Deleuze
47d6e91227
Leverage non-default ctor support in Kotlin bean DSL
...
Since non-default constructors are now evaluated for autowiring,
there is no need anymore for setting autowiring mode or exposing
it in Kotlin bean DSL.
Issue: SPR-17292
2018-09-20 00:21:38 +02:00
Juergen Hoeller
b6b880ce27
Polishing
2018-09-19 23:05:40 +02:00
Rossen Stoyanchev
7481d73456
WebFlux HandshakeInfo exposes the remoteAddress
...
Issue: SPR-17192
2018-09-19 16:53:57 -04:00
Rossen Stoyanchev
288a9ecd18
Exposes maxFramePayloadLength for Reactor Netty
...
Issue: SPR-16228
2018-09-19 16:28:57 -04:00
Juergen Hoeller
a278e878e8
Upgrade to Jackson 2.9.7
2018-09-19 22:20:14 +02:00
Juergen Hoeller
082c524cbe
Polishing
2018-09-19 22:19:49 +02:00
Juergen Hoeller
d3c08552e9
Revisit GenericApplicationContext.registerBean constructor handling
...
Support for Kotlin primary constructor and non-default public constructors in addition to default instantiation, aligned with AnnotationConfigApplicationContext and model attribute processing.
Issue: SPR-17292
2018-09-19 22:19:43 +02:00
Juergen Hoeller
50c9542796
Prefer explicit "org.quartz.scheduler.instanceName" over bean name
...
Issue: SPR-16884
2018-09-19 22:19:28 +02:00
Rossen Stoyanchev
a6f9c4c599
LogFormatUtils is declared abstract
2018-09-19 11:54:05 -04:00
Sam Brannen
af58263744
Fix formatting in Testing chapter
2018-09-19 16:37:50 +02:00
Arjen Poutsma
8a4835368d
Use doOnDiscard to free internally queued data buffers
...
Issue: SPR-17246
2018-09-19 13:24:45 +02:00
Juergen Hoeller
1756f83701
Defensively expect concurrent registration of BeanPostProcessors
...
Declaring beanPostProcessors (and also embeddedValueResolvers) as CopyOnWriteArrayList prevents ConcurrentModificationExceptions in case of concurrent registration/access attempts.
Issue: SPR-17286
2018-09-18 21:25:36 +02:00
Brian Clozel
d94e9225f4
Switch to Reactor Californium SNAPSHOTs
2018-09-18 18:50:37 +02:00
Juergen Hoeller
65ca7f4909
Polishing
2018-09-18 17:19:37 +02:00
anton0xf
0204b082b1
Fix jdbc template error messages generation
2018-09-18 17:17:47 +02:00
Sam Brannen
5b25aaacb6
Apply consistent formatting in Testing chapter
...
This commit also fixes a few typos and broken links.
2018-09-18 16:42:09 +02:00
Sam Brannen
6431b25045
Revise Testing chapter for technical correctness
...
This commit also fixes some broken links and typos.
2018-09-18 15:47:37 +02:00
Sam Brannen
745aeda581
Fix typos in testing sections of Reference Manual
2018-09-18 15:44:36 +02:00
Juergen Hoeller
c634b2fae7
ResolvableType-based resolution uses BeanNamesByType cache if possible
...
Issue: SPR-17282
2018-09-18 15:30:43 +02:00
Jay Bryant
00a3afcda8
Edit the Web chapter of the reference documentation
...
I edited for spelling, punctuation, grammar, usage,
and corporate voice. I also added links and cross-references.
2018-09-18 11:37:48 +02:00
Jay Bryant
b29a278b2a
Edit Data Access part of the reference documentation
...
I edited the Data Access chapter for spelling, punctuation,
grammar, usage, corporate voice, and clarity.
I also added links and cross-references.
2018-09-18 11:37:12 +02:00
Jay Bryant
95ff22cb7e
Edit the testing part of the reference documentation
...
I edited for spelling, punctuation, grammar, usage,
and corporate voice.
I also added cross-references and links to the Javadoc.
2018-09-18 11:36:23 +02:00
Jay Bryant
395e3d008c
Edit the core content reference documentation
...
I edited for the usual stuff: spelling, punctuation,
grammar, formatting, usage, and voice.
2018-09-18 11:35:33 +02:00
Brian Clozel
d0ada5653f
Polish
...
See: SPR-17054
2018-09-18 11:20:33 +02:00
Juergen Hoeller
0948edb39d
Nested configuration class introspection check on concrete class
...
Issue: SPR-16839
2018-09-17 19:09:55 +02:00
Juergen Hoeller
c8869d99f5
Deprecate autowire attribute on @Bean annotation
...
Issue: SPR-17281
2018-09-17 19:09:21 +02:00
Juergen Hoeller
69e8bcdf40
Checkstyle updates from ASM master
...
Issue: SPR-17267
2018-09-17 19:09:07 +02:00
Juergen Hoeller
c385a1de83
Polishing
2018-09-17 15:17:39 +02:00
Arjen Poutsma
88ab911cf1
Provide matched pattern information in WebFlux fn
...
This commit stores the first matching path pattern in the attribute
`RouterFunctions.MATCHING_PATTERN_ATTRIBUTE`.
Issue: SPR-17098
2018-09-17 14:50:05 +02:00
Juergen Hoeller
51f7a3e40f
Polishing
2018-09-17 14:26:56 +02:00
Juergen Hoeller
34663300a6
Avoid regex pattern matching for simple String replacement steps
...
Issue: SPR-17279
2018-09-17 14:22:19 +02:00
Simon Bowring
cc87fbcb7f
Fix javadoc comments to match behaviour
2018-09-17 12:25:39 +02:00
Sebastien Deleuze
c4aea626fe
Update Kotlin bean DSL with new BeanDefinition methods
...
Issue: SPR-17275
2018-09-17 12:01:33 +02:00
Arjen Poutsma
a680880a9b
Restore attributes for failed AND/OR request predicates
...
This commit restores the attributes when either of the predicates in
an AND/OR conjunction is false.
Issue: SPR-17210
2018-09-17 10:34:52 +02:00
Juergen Hoeller
8e83f140d4
Polishing
2018-09-15 00:17:17 +02:00
Rossen Stoyanchev
db8e9eafb2
Add LogFormatUtils
...
1. Helper method to eliminate duplication in formatting (de-)serialized
values for logging introduced with prior commit #e62298.
2. Helper method for TRACE vs DEBUG logging with different details.
Issue: SPR-17254
2018-09-14 18:06:46 -04:00
Juergen Hoeller
41d4cb5cbf
Ordered stream access on ObjectProvider with strong order guarantees
...
Issue: SPR-17272
2018-09-14 23:56:25 +02:00
Rossen Stoyanchev
12240c7524
Apply formatValue to a few remaining places
...
Issue: SPR-17254
2018-09-14 12:37:00 -04:00
Rossen Stoyanchev
e62298eaad
Truncate logged encoded and decoded values if necessary
...
At DEBUG show up to 100 chars, at TRACE show full formatted value.
Note that the formatValue helper method is duplicated a number of times
in this commit. A utility method will likely be added in spring-core
through an extra commit.
Issue: SPR-17254
2018-09-14 12:20:03 -04:00
Juergen Hoeller
66c66baa8f
Upgrade to Rhino 1.7.10
...
Includes reordering of web dependency declarations.
2018-09-14 14:03:53 +02:00
Rossen Stoyanchev
cf9641686b
StompSubProtocolHandler allows version 1.0
...
Issue: SPR-17258
2018-09-13 20:59:22 -04:00
Juergen Hoeller
97cea7f36e
BeanDefinition interface exposes initMethodName and destroyMethodName
...
Also includes setters for role and description.
Issue: SPR-17275
2018-09-13 20:24:36 +02:00
Juergen Hoeller
77887ef739
BeanValidationPostProcessor validates singleton target behind proxy
...
Issue: SPR-17273
2018-09-13 20:24:27 +02:00
Juergen Hoeller
cbc0fad961
Upgrade to Kotlin 1.2.70
...
Includes Hibernate ORM 5.1.16 and Hibernate Validator 6.0.13.
2018-09-13 18:23:42 +02:00
Juergen Hoeller
65c8fa400f
Consistent ordered list access and lazy streaming for ObjectProvider
...
Includes fallback match for collection/map dependency if qualified.
Issue: SPR-17272
Issue: SPR-17197
2018-09-13 18:23:19 +02:00
Sebastien Deleuze
068565172e
Add a BeanFactory#getBeanProvider Kotlin extension
...
Issue: SPR-17274
2018-09-13 16:53:28 +02:00
Arjen Poutsma
cde677a1f4
Fixed DefaultDataBuffer.toString()
2018-09-13 16:12:13 +02:00
Pascal Schumacher
184340ff8e
Remove duplicate blank in log message of ExecutorConfigurationSupport#initialize
...
(obvious fix)
2018-09-12 21:32:43 +02:00
Juergen Hoeller
9cb8b4bb0a
Upgrade to Gradle 4.10.1
...
Issue: SPR-17155
2018-09-12 17:30:19 +02:00
Juergen Hoeller
b6d32ef55f
Bean definition DSL generates unique bean names for bean classes
...
Issue: SPR-17242
2018-09-12 14:59:10 +02:00
Juergen Hoeller
b83bc39ecd
Restrict nested configuration class introspection to component types
...
Issue: SPR-16839
2018-09-12 14:02:45 +02:00
Juergen Hoeller
45936f0ddd
ClassReader revision from ASM master
...
Issue: SPR-17267
2018-09-12 12:26:29 +02:00
Johnny Lim
43a814b070
Remove duplicate assertions in AsyncExecutionTests
2018-09-11 17:19:32 +02:00
Sam Brannen
bffa4b88af
Upgrade to JUnit 5.3.1
...
Issue: SPR-17129
2018-09-11 15:57:30 +02:00
Juergen Hoeller
dcac30c41c
Upgrade to Tomcat 9.0.12 and SnakeYAML 1.23
2018-09-11 14:57:31 +02:00
Arjen Poutsma
f35f7db29b
Removed deprecated methods.
2018-09-11 13:36:44 +02:00
Arjen Poutsma
09af706af6
Use concatWith instead of mergeWith
2018-09-11 13:36:44 +02:00
Arjen Poutsma
1a0522b805
DataBufferUtils does not release DataBuffer on error cases
...
This commit makes sure that in DataBufferUtils.write, any received data
buffers are returned as part of the returned flux, even when an error
occurs or is received.
Issue: SPR-16782
2018-09-11 13:36:44 +02:00
Juergen Hoeller
1da4d504c4
Upgrade to ASM master (7.0 beta) and CGLIB 3.2.8
...
Issue: SPR-17267
2018-09-11 13:10:45 +02:00
Juergen Hoeller
e47355078c
Correct linkplain javadoc in BufferingClientHttpRequestFactory
...
Issue: SPR-17261
2018-09-10 12:36:40 +02:00
Juergen Hoeller
28208310dc
Unit test with assertion for merged query params
...
Issue: SPR-17256
2018-09-10 12:36:07 +02:00
Juergen Hoeller
c06b9525ac
UriComponentsBuilder copies query params through MultiValueMap.addAll
...
Issue: SPR-17256
2018-09-10 11:31:37 +02:00
Juergen Hoeller
e49896d95f
Upgrade to Mockito 2.22, XMLUnit 2.6.2, JavaMail 1.6.2
...
Also includes Apache Johnzon 1.1.9.
2018-09-10 10:52:24 +02:00
Juergen Hoeller
6c487f7799
Revise ServletUriComponentsBuilder javadoc
...
Issue: SPR-17255
2018-09-07 18:11:18 +02:00
figueroaRicardo
aa848d54ff
Fix typo on javadoc
...
`ForwardedHeaderFilter` instead of `ForwardedHeaderFiller`
2018-09-07 18:00:06 +02:00
Juergen Hoeller
3abebb3799
Polishing
2018-09-07 13:23:22 +02:00
Juergen Hoeller
87fac79b90
Upgrade to RxJava 2.2.2
2018-09-07 12:58:20 +02:00
Juergen Hoeller
90a4740279
Polishing
2018-09-07 12:56:53 +02:00
Juergen Hoeller
c803ad7998
ConfigurationClassParser consistently uses ClassUtils.forName
...
Issue: SPR-17253
2018-09-07 12:56:23 +02:00
Juergen Hoeller
84ec382201
XMLEventReader.getElementText() properly checks for start element
...
Issue: SPR-17233
2018-09-07 12:56:15 +02:00
Sebastien Deleuze
8d45e3e7ef
Fix Kotlin inner class nested configuration handling
...
Before this commit, Kotlin inner class nested configuration
handling thrown an IndexOutOfBoundsException due to bogus filtering
of its constructor parameter reference to an instance of the outer
class.
This commit keep constructor parameter of type INSTANCE in order to
throw a more meaningful NoSuchBeanDefinitionException.
Issue: SPR-17222
2018-09-07 11:39:30 +02:00
Brian Clozel
c8627c05ed
Upgrade to Reactor Californium RC1
2018-09-07 09:10:48 +02:00
Rossen Stoyanchev
f30d19b724
Disable Jackson's buffer recyling feature for WebFlux
...
Issue: SPR-17193
2018-09-06 16:20:03 -04:00
Rossen Stoyanchev
2163fa94a7
Fix initialization issue in ReactorResourceFactory
...
Follow-up on recent commit #d537a1c.
Issue: SPR-17243
2018-09-06 15:16:01 -04:00
Sam Brannen
f55a6051df
Document default embedded value resolver support for property
...
placeholders
Spring 4.3 introduced support for registering a default embedded value
resolver for the default environment, in case of none having been
registered through post-processors (like PropertyPlaceholderConfigurer
and PropertySourcesPlaceholderConfigurer. However, the existing
documentation – stating that a static
PropertySourcesPlaceholderConfigurer bean is required in order for
values coming from @PropertySource declarations to be honored – was not
updated to reflect the change.
This commit addresses this by updating the JavaDoc for @Configuration
and @PropertySource accordingly
Issue: SPR-17212
2018-09-06 18:36:49 +02:00
Sam Brannen
c450f8dd82
Revert "PoC: migrate from JUnit 4 to JUnit Jupiter Assertions"
...
This reverts commit fd352b84b3 , and the
PoC will be moved to a feature branch.
2018-09-06 15:58:58 +02:00
Sam Brannen
fd352b84b3
PoC: migrate from JUnit 4 to JUnit Jupiter Assertions
2018-09-06 14:36:19 +02:00
Rossen Stoyanchev
8658a357c8
Upgrade to Californium snapshots
2018-09-05 21:49:33 -04:00
Rossen Stoyanchev
d537a1cfb4
Refine ReactorResourceFactory
...
1. Rename globalResources to useGlobalResources.
2. Use of global resources is mutually exlusive with explicit config.
3. Allow Consumer<HttpResources> to configure global resources.
4. Allow ConnectionProvider + LoopResources Supplier to customize
creation and initialization.
5. Do not manage externally provided ConnectionProvider + LoopResources
instances.
Issue: SPR-17243
2018-09-05 21:17:04 -04:00
Rossen Stoyanchev
3302798e2f
Use random id for WebSocket sessions
...
Issue: SPR-17228
2018-09-05 19:48:28 -04:00
Toshiaki Maki
d570f82456
Use long for expires and lastModified in HeaderAssertions
...
This commit changes the type of parameters so that HeaderAssertions
can assert expires and lastModified properly.
Issue: SPR-17194
2018-09-05 17:16:14 -04:00
Andy Clement
f87a37fd0d
Fix SpEL compilation for non trivial elvis operand
...
Issue: SPR-17214
2018-09-05 09:41:13 -07:00
Sebastien Deleuze
48c660fa41
Add support for empty router in RouterFunctionDsl
...
Issue: SPR-17247
2018-09-05 16:53:59 +02:00
Sebastien Deleuze
f8a0e3d084
Support RenderingResponse in RouterFunctionDsl
...
Issue: SPR-17244
2018-09-05 16:46:12 +02:00
Arjen Poutsma
259b2ca5f4
Added tests for errors in the source stream
...
This commit adds decoder/message-reader tests for errors in
the source data buffer publisher. Because the tests extend
AbstractDataBufferAllocatingTestCase, they also check whether
the buffers that precede the error in the stream are properly
released.
Issue: SPR-17025
2018-09-05 11:08:07 +02:00
Arjen Poutsma
196c0adf47
Fixed DataBufferUtils.join leak for error in source
...
This commit fixes an issue where DataBufferUtils.join() would not
release databuffers that preceded an error signal.
Issue: SPR-17025
2018-09-05 11:07:57 +02:00
Juergen Hoeller
3067682347
Upgrade to Hibernate ORM 5.3.6 and OpenPDF 1.2.2
2018-09-04 23:02:35 +02:00
Brian Clozel
7041e5e8e3
Upgrade to Jetty 9.4.12.v20180830
2018-09-04 22:13:37 +02:00
Brian Clozel
1bdbc7bdef
Optimize for Flux to/from Mono conversions
...
This commit optimizes Flux <-> Mono conversions in our codebase by
avoiding to hide that conversion from Reactor.
This tries to keep conversions sequentially so that they can be detected
by Reactor and optimized. In Spring WebFlux, this means keeping the
conversions at the edges of a method implementation (right when getting
an input parameter, and before returning it as a result). If those
conversions are made between other operators, Reactor might not be able
to detect those conversions and optimize them.
Issue: SPR-17203
2018-09-04 16:42:46 +02:00
Sam Brannen
bff2d2cc85
Polishing
2018-09-04 14:47:37 +02:00
Korovin Anatoliy
ab086f4225
Fix fragile tests for asynchronous events
...
This commit introduces a dependency on the Awaitility assertion
framework and makes use of asynchronous assertions in order to make
tests for asynchronous events more robust.
Issue: SPR-17211
2018-09-04 14:20:05 +02:00
Sam Brannen
326895246d
Polishing
2018-09-04 13:55:22 +02:00
Stephane Nicoll
2c1dca5b5e
Polish capitalisation of units on DataSize and javadoc of DataUnit
...
Issue: SPR-17240
2018-09-04 13:46:41 +02:00
Sam Brannen
454cd933d4
Upgrade to JUnit Jupiter 5.3
...
Issue: SPR-17129
2018-09-03 22:17:02 +02:00
Stephane Nicoll
dcdf9c09f5
Merge pull request #894 from keik:typo
...
* pr/894:
Fix typos
2018-09-03 10:24:35 +02:00
Kei KATO
c2585073ba
Fix typos
...
Closes gh-894
2018-09-03 10:05:14 +02:00
Juergen Hoeller
95a56cd28d
Polishing
2018-08-31 12:41:40 +02:00
Juergen Hoeller
51cee658d5
SpelExpression consistently exposes EvaluationContext to compiled AST
...
Operator includes explicit support for Boolean comparisons now.
Issue: SPR-17229
2018-08-31 12:41:22 +02:00
Juergen Hoeller
8c6f3505c4
Transactional timeout documented as seconds in annotation javadoc
...
Issue: SPR-17226
2018-08-31 12:40:43 +02:00
Juergen Hoeller
78cad0fdd3
HibernateTransactionManager lazily acquires JDBC Connection
...
Aligned with HibernateJpaDialect, using ConnectionHandle as functional interface now. Also, LazyConnectionDataSourceProxy supports Connection holdability as applied by HibernateTransactionManager, for use with prepareConnection=true.
Issue: SPR-17216
2018-08-31 12:40:04 +02:00
Sam Brannen
a689daadf9
Complete upgrade to Gradle 4.10
...
Issue: SPR-17155
2018-08-28 13:53:01 +02:00
Sebastien Deleuze
fb3c1881ca
Upgrade to Gradle 4.10
...
Issue: SPR-17155
2018-08-28 11:32:40 +02:00
Brian Clozel
280da61d5c
Fix empty body writing in EncoderHttpMessageWriter
...
Prior to this commit, an bug introduced in SPR-16949 prevented
`Mono.empty` bodies from being written to the response.
This commit ensures that empty bodies still trigger the writing to the
response and does not hang the processing of the exchange.
Issue: SPR-17220
2018-08-27 21:17:10 +02:00
JungHoon, Lee
1dac0df38b
Prevent instantiation of NamedParameterBatchUpdateUtils
...
In order to prevent instantiation of utility classes, this commit
makes NamedParameterBatchUpdateUtils `abstract`.
Issue: SPR-17215
2018-08-27 15:35:00 +02:00
stsypanov
7dba79c7c1
Use String::isEmpty instead of "".equals(arg) when arg is not null
2018-08-26 22:48:21 +02:00
Sam Brannen
4883b8aa03
Polish JavaDoc for @Configuration
2018-08-26 22:07:07 +02:00
Sam Brannen
08ba53dd0e
Ensure SocketUtils can be instantiated
...
Issue: SPR-17215
2018-08-26 21:49:21 +02:00
Sam Brannen
52c91910b2
Polish JavaDoc for @Configuration
2018-08-26 15:03:05 +02:00
Juergen Hoeller
4b86d42890
Upgrade to Netty 4.1.29
2018-08-24 13:45:40 +02:00
Juergen Hoeller
03f1920106
Support Jackson filters in combination with serialization view
...
Issue: SPR-17209
2018-08-24 12:06:52 +02:00
Juergen Hoeller
7056808716
Upgrade to Kotlin 1.2.61, RxJava 2.2.1, Tomcat 9.0.11
2018-08-24 11:21:50 +02:00
Juergen Hoeller
9614817e88
Do not proxy test instances based on "original instance" convention
...
Issue: SPR-17137
2018-08-24 00:49:01 +02:00
Sam Brannen
f6ee2508ef
Clean up warning in AnnotatedElementUtils
2018-08-23 18:24:18 +02:00
Sam Brannen
2bb15f7ed2
Fix grammar in JavaDoc for fully qualified links
...
This commit represents a best effort attempt at fixing remaining
"a" vs. "an" grammatical errors related links specified via a fully
qualified class name.
Issue: SPR-17208
2018-08-23 17:59:44 +02:00
Brian Clozel
482115f3ce
Revert "Make DispacherServlet attributes protected"
...
This reverts commit 253ffd719d .
2018-08-23 16:52:16 +02:00
Sam Brannen
35c847a708
Polish JavaDoc for JCache support
...
Issue: SPR-17208
2018-08-23 16:45:10 +02:00
Brian Clozel
253ffd719d
Make DispacherServlet attributes protected
...
Since the `initStrategies` method is there to be extended, the related
attributes should be `protected` as well.
2018-08-23 15:09:12 +02:00
Jay Bryant
62cb8ba6ba
Editing pass for the Spring Framework Reference Guide
...
I edited for spelling, punctuation, grammar, usage, and corporate voice. I also added cross-references and links to the Javadoc in a number of places.
2018-08-23 10:56:54 +02:00
Stephane Nicoll
7fdd1372ae
Merge pull request #1938 from izeye:polish-20180823
...
* pr/1938:
Polish
2018-08-23 09:48:09 +02:00
Johnny Lim
4db5d28894
Polish
...
Closes gh-1938
2018-08-23 09:47:30 +02:00
Juergen Hoeller
f13f041fae
Consistent trace logging for init and destroy methods
...
Issue: SPR-17090
2018-08-22 14:13:12 +02:00
Juergen Hoeller
6ef0938a92
Defensive URL cleaning (preserving the original URL if possible)
...
Issue: SPR-17198
2018-08-22 14:12:39 +02:00
横云断岭
c55a9072aa
Fix typo in CONTRIBUTING.md
2018-08-22 13:04:07 +02:00
Brian Clozel
709b185177
Clear global resources reference from HttpResources
...
When used as global Netty resources, ReactorResourceFactory creates and
sets those resources on Reactor's HttpResources directly.
When that ReactorResourceFactory bean is destroyed, those resources are
disposed but HttpResources still holds a reference to those and may try
to use them again.
This commit uses HttpResources to clear those resources and its
references to it, when the ReactorResourceFactory is treating those as
global.
Issue: SPR-17199
2018-08-21 16:16:28 +02:00
Stephane Nicoll
89e2caa4f3
Merge pull request #1934 from kylec32:websocket-documentation-remove-deprecated
...
* pr/1934:
Fix usage of deprecated functionality in docs
2018-08-20 09:43:57 +02:00
Kyle Carter
8848e6ab9f
Fix usage of deprecated functionality in docs
...
Closes gh-1934
2018-08-20 09:43:11 +02:00
Sam Brannen
a8fbac8472
Polish JavaDoc
...
Issue: SPR-17174
2018-08-18 18:15:05 +02:00
Juergen Hoeller
1d59e52f11
EventListenerMethodProcessor accepts internal configuration classes
...
Issue: SPR-17160
2018-08-18 12:05:39 +02:00
Juergen Hoeller
a6a6cf7d97
Upgrade to Java Activation Framework 1.2 as API dependency
...
Includes XMLUnit 2.6.1 and Undertow 2.0.13.
Issue: SPR-16115
2018-08-17 16:01:15 +02:00
Juergen Hoeller
2ac23badee
SimpleAliasRegistry.hasAlias properly resolves multiple chained aliases
...
Issue: SPR-17191
2018-08-17 09:54:14 +02:00
Rossen Stoyanchev
ad88c02bc3
Restore formatting change following revert
2018-08-17 09:53:47 +03:00
Rossen Stoyanchev
498984324d
Revert "Add handleFailure property to FrameworkServlet"
...
This reverts commit 29ce6685ca .
2018-08-17 09:47:00 +03:00
Sebastien Deleuze
0dd9e8ce02
Polish JettyResourceFactory
...
Issue: SPR-17179
2018-08-16 21:47:02 +02:00
Juergen Hoeller
6bcb454a0d
Polishing
2018-08-16 19:31:10 +02:00
Juergen Hoeller
84300b796c
Fix recent javadoc errors
...
Issue: SPR-17174
2018-08-16 18:51:31 +02:00
Sebastien Deleuze
1eb06fcd90
Introduce JettyResourceFactory
...
JettyResourceFactory, similar to ReactorResourceFactory, allows
to share resources (Executor, ByteBufferPool, Scheduler) between
Jetty clients and servers.
Issue: SPR-17179
2018-08-16 18:17:07 +02:00
Juergen Hoeller
50b6f9da1d
Reference documentation covers async Hibernate/JPA bootstrap options
...
Issue: SPR-17189
2018-08-16 17:30:44 +02:00
Rossen Stoyanchev
31c7807ac9
Fix doc issue with Reactor HttpClient config
2018-08-16 18:21:00 +03:00
Juergen Hoeller
04d2d1da0d
Consistently use double quotes (even if no interpolation needed)
...
Includes upgrade to Hibernate ORM 5.3.5, EclipseLink 2.7.3, Selenium HtmlUnit Driver 2.32.1, Jetty 9.4.12 RC2.
2018-08-16 15:32:44 +02:00
Juergen Hoeller
dc55da0988
Polishing
2018-08-16 13:02:27 +02:00
Juergen Hoeller
5d7fb1a1c2
Polishing
2018-08-16 12:08:26 +02:00
Juergen Hoeller
2ec8fa9cac
SmartLifecycle default methods for auto-startup in default phase
...
Issue: SPR-17188
2018-08-16 12:08:02 +02:00
Stephane Nicoll
446a604ad0
Upgrade to Reactor Californium-M2
2018-08-16 09:30:20 +02:00
Brian Clozel
cd403f4180
Polish
2018-08-15 20:56:27 +02:00
Brian Clozel
23fc6f6b1d
Drain JDK HTTP client response body in all cases
...
Prior to this commit, when using the `SimpleClientHttpRequestFactory`
as a driver for `RestTemplate`, the HTTP response body would only be
drained if there was an attempt to read it in the first place.
This commit ensures that, even if there's no attempt at reading the
response body, it is properly drained when the response is closed to
make sure that the connection is released in a proper state and can be
put back in the connection pool for reuse.
Issue: SPR-17181
2018-08-15 20:52:40 +02:00
Brian Clozel
432cdd7802
Add ResponseEntity.of(Optional) variant
...
When dealing with `Optional` values in a Controller handler (for
example, values coming from a Spring Data repository), developers might
reuse this code snippet quite often:
```
@GetMapping("/user")
public ResponseEntity<Optional<User>> fetchUser() {
Optional<User> user = //...
return user.map(ResponseEntity::ok).orElse(notFound().build());
}
```
This commit adds a new static method on `ResponseEntity` for that,
simplifying the previous snippet with `return ResponseEntity.of(user);`
Note that in case more specific HTTP response headers are required by
the application, developers should use other static methods to
explicitly tell which headers should be used in each case.
Issue: SPR-17187
2018-08-15 20:24:14 +02:00
Sam Brannen
d3be1cc6cb
Use single quotes in Gradle build where appropriate
2018-08-15 17:57:56 +02:00
Sam Brannen
69e4f21f90
Use JUnit 5 Maven BOM in Gradle build
...
Issue: SPR-17129
2018-08-15 17:43:23 +02:00
Juergen Hoeller
109a2b49e5
Consistently skip unnecessary search on superclasses and empty elements
...
Includes caching of declared annotation arrays and combined searching for several annotation types (used in SpringCacheAnnotationParser).
Issue: SPR-16933
2018-08-15 17:30:14 +02:00
Sam Brannen
50dc8c2358
Update JavaDoc for @BootstrapWith regarding local override
...
Issue: SPR-17006
2018-08-15 17:17:24 +02:00
Sam Brannen
d20d95b7ac
Allow directly present @BootstrapWith to override meta annotations
...
Prior to this commit, if a test class was meta-annotated with multiple
@BootstrapWith declarations that registered different
TestContextBootstrapper implementations, such a configuration would
result in an IllegalStateException, and there was no way to override
this behavior.
This commit addresses this shortcoming by relaxing the explicit
TestContextBootstrapper resolution in BootstrapUtils so that a directly
present @BootstrapWith annotation will now override declarations of
@BootstrapWith that are meta-present. In other words, if @BootstrapWith
is used as a meta-annotation, it can be overridden directly on the test
class via an explicit, local declaration of @BootstrapWith.
Issue: SPR-17006
2018-08-15 16:17:05 +02:00
Sam Brannen
4d7b265258
Fix merge conflict in reference manual
2018-08-15 15:37:49 +02:00
Brian Clozel
f2506ca7a1
Revert "Infer HTTP 404 from empty Optional/Publisher types"
...
This reverts commit 7e91733502 .
2018-08-15 15:15:35 +02:00
Sam Brannen
1b54d2119d
Polishing
2018-08-15 12:27:45 +02:00
Sam Brannen
a87b319a6f
Polishing
2018-08-15 12:16:47 +02:00
Brian Clozel
7e91733502
Infer HTTP 404 from empty Optional/Publisher types
...
This commit handles "empty" cases for `ResponseEntity` controller
handler return types when wrapped with a `java.util.Optional` in Spring
MVC or a single `Publisher` like `Mono`.
Given the following example for Spring MVC:
```
@GetMapping("/user")
public Optional<ResponseEntity<User>> fetchUser() {
Optional<User> user = //...
return user.map(ResponseEntity::ok);
}
```
If the resulting `Optional` is empty, Spring MVC will infer a
`ResponseEntity` with an empty body and a 404 HTTP response status.
The same reasoning is applied to Spring WebFlux with Publisher types:
```
@GetMapping("/user")
public Mono<ResponseEntity<User>> fetchUser() {
Mono<User> user = //...
return user.map(ResponseEntity::ok);
}
```
This feature is only valid for `HttpEntity` return types and does not
apply to `@ResponseBody` controller handlers.
Issue: SPR-13281
2018-08-15 11:59:16 +02:00
Rossen Stoyanchev
04141dee65
Consistent logging of resolved exceptions
...
Issue: SPR-17178
2018-08-15 10:57:51 +03:00
Juergen Hoeller
6027cf2255
Polishing
2018-08-14 20:42:40 +02:00
Juergen Hoeller
c0c9e08bf9
Revised documentation for PDF, Excel and JSON views
...
Issue: SPR-17180
Issue: SPR-17182
2018-08-14 20:36:29 +02:00
Juergen Hoeller
de38af6843
Upgrade to JUnit Jupiter 5.3 RC1 (and Jetty 9.4.12 RC1)
...
Includes Groovy 2.5.2, Undertow 2.0.12, Hibernate Validator 6.0.12.
Issue: SPR-17129
2018-08-14 20:33:30 +02:00
Rossen Stoyanchev
3e4d305291
Polish ReactorResourceFactory
2018-08-14 17:34:17 +03:00
Rossen Stoyanchev
7a0c03e05e
Update section in reference on WebClient
...
Rename "Builder" sub-section to "Configuration" and move it in the
beginning before all others since it explains how to create a client
in the first place.
Update content on Reactor Netty connector based on the API in 0.8 and
specifically address Reactor Netty resources and lifecycle.
Issue: SPR-16963
2018-08-14 15:48:46 +03:00
Rossen Stoyanchev
2f732a8dea
Fix checkstyle errors
2018-08-14 13:01:09 +03:00
Rossen Stoyanchev
1bc08c61e1
Add ReactorResourceFactory
...
Issue: SPR-16963
2018-08-14 12:29:31 +03:00
Sam Brannen
bdac39150f
Polish contribution
...
Issue: SPR-17120
2018-08-13 14:40:04 +02:00
Chris Harding
24ed6de6aa
Add backslash escape support to containsSqlScriptDelimiters
...
Prior to this commit, ScriptUtils supported MySQL-style escapes ('\\')
when splitting a script into statements; however, MySQL-style escapes
were not supported when determining if a given script contained a
specified statement delimiter. This caused executeSqlScript() to
erroneously fallback to a newline as the statement separator in such
cases.
This commit fixes this issue by implementing the same check for
MySQL-style escapes in containsSqlScriptDelimiters() that was already
present in splitSqlScript().
Issue: SPR-17120
2018-08-13 14:40:04 +02:00
Juergen Hoeller
ac544924c8
Polishing
2018-08-13 14:36:37 +02:00
Juergen Hoeller
04a7f0884b
SpringCacheAnnotationParser.parseCacheAnnotations cannot be protected
...
Its parameter DefaultCacheConfig is just package-visible...
2018-08-13 12:43:59 +02:00
Juergen Hoeller
999c7809a7
Refined warn/info logging in AutowiredAnnotationBeanPostProcessor
...
Issue: SPR-16946
2018-08-13 12:43:52 +02:00
Juergen Hoeller
347852e86a
Avoid argument resolution overhead for no-arg factory methods
...
Includes revised InstantiationStrategy nullability for args array.
Issue: SPR-17171
2018-08-13 12:43:41 +02:00
Sam Brannen
777bd0d022
Fix Checkstyle violation in JCacheCache
2018-08-13 12:40:34 +02:00
Sam Brannen
aebbd949a8
Suppress deprecation warnings in AnnotationProcessorPerformanceTests
2018-08-13 12:35:19 +02:00
Sam Brannen
8126ffbc8c
Fix broken links in JavaDoc
...
Issue: SPR-17174
2018-08-13 12:22:52 +02:00
Sam Brannen
13c090b41d
Generate “Use” links in aggregated Spring API JavaDoc
...
This commit enables the `-use` javadoc flag so that class usage pages
are included in the aggregated JavaDoc that is published to
https://docs.spring.io/spring-framework/docs/ .
Issue: SPR-17173
2018-08-13 11:56:18 +02:00
Sam Brannen
1dcb6236a6
Fix broken links in JavaDoc
...
First step (as proof of concept) toward addressing SPR-17174.
Issue: SPR-17174
2018-08-13 11:54:05 +02:00
Rossen Stoyanchev
99f0129711
Fix URI var encoding issue with '$'
...
When expanding and strictly encoding URI variables, there is no need to
quote `/` and `$` which will be encoded anyway.
Issue: SPR-17168
2018-08-13 11:56:34 +03:00
Rossen Stoyanchev
430065c31d
Order property for SimpUserRegistry
...
Issue:SPR-17142
2018-08-13 11:56:34 +03:00
Marten Deinum
5322fa0fb7
Use an import instead of FQCN
...
javax.xml.stream.Location is already there as an import there is no need
to use the FQCN in the handleDtd method.
2018-08-13 10:38:23 +02:00
Marten Deinum
20d0221d4f
Use an import instead of FQCN
...
No that JCacheCache extends AbstractValueAdaptingCache instead of
directly implementing Cache an import statement can be used in favor
of using the FQCN for the field and constructor arguments.
2018-08-13 10:23:00 +02:00
Juergen Hoeller
df51ff0386
Revert to Map entry iteration for less expensive static initialization
...
Issue: SPR-17169
2018-08-12 20:52:55 +02:00
Sam Brannen
cfb1ed1009
Clean up warnings and delete dead code
2018-08-12 15:55:11 +02:00
Juergen Hoeller
c4a7567a5e
Post-processors consistently ignore ScopedObject/AopInfrastructureBean
...
JmsListenerAnnotationBeanPostProcessor also ignores JmsListenerContainerFactory and JmsListenerEndpointRegistry, avoiding unnecessary annotation introspection on framework classes.
Issue: SPR-17166
Issue: SPR-16933
2018-08-12 11:47:28 +02:00
Stephane Nicoll
8d08935c49
Disable quotes substitution in code sample
...
Issue: SPR-17167
2018-08-12 11:12:53 +02:00
Stephane Nicoll
30b8d47814
Polish
2018-08-12 10:49:29 +02:00
Juergen Hoeller
71d4dbea13
Post-processors ignore AopInfrastructureBean (includes ScopedObject)
...
Issue: SPR-17166
2018-08-11 23:10:57 +02:00
Juergen Hoeller
8bf8092740
Post-processors consistently ignore ScopedObject/AopInfrastructureBean
...
ScheduledAnnotationBeanPostProcessor also ignores TaskScheduler and ScheduledExecutorService, avoiding unnecessary annotation introspection on framework classes.
Issue: SPR-17166
Issue: SPR-16933
2018-08-11 22:20:07 +02:00
Juergen Hoeller
fc16b2d3fb
AbstractHandlerMethodMapping allows for customized bean retrieval
...
Issue: SPR-15535
2018-08-11 01:20:17 +02:00
Juergen Hoeller
2b2a5a414b
Polishing
2018-08-10 19:23:44 +02:00
Stephane Nicoll
f931a3fb59
Improve DataSize to support negative values
...
Issue: SPR-17154
2018-08-10 18:21:09 +02:00
Rossen Stoyanchev
aef39e8954
Remove test class added by mistake
2018-08-10 16:57:46 +03:00
Juergen Hoeller
aebb2d52e0
Logging refinements for transaction and cache processing (debug/trace)
...
Issue: SPR-16946
2018-08-10 15:45:46 +02:00
Juergen Hoeller
def6fbba89
ListableBeanFactory.getBeansWithAnnotation does not include null beans
...
Issue: SPR-17034
2018-08-10 15:45:37 +02:00
Juergen Hoeller
c437a0d1c3
Declare default methods for supportsSourceType and getOrder
...
Issue: SPR-17163
2018-08-10 15:42:30 +02:00
Rossen Stoyanchev
309ffc6d0d
OverflowStrategy in ConcurrentWebSocketSessionDecorator
...
Issue: SPR-17140
2018-08-10 16:15:21 +03:00
Rossen Stoyanchev
61c52d64c5
Polish ConcurrentWebSocketSessionDecoratorTests
2018-08-10 16:15:21 +03:00
Stephane Nicoll
282a4ad2f6
Fix checkstyle violations
2018-08-10 14:43:16 +02:00
Stephane Nicoll
8a1588ae29
Add support for DataSize
...
This commit provides a data type to represents a size in bytes and other
standard unit.
Issue: SPR-17154
2018-08-10 14:28:46 +02:00
Stephane Nicoll
85ad2a566d
Merge pull request #1918 from vpavic:polish-build
...
* pr/1918:
Polish build script
2018-08-10 08:48:21 +02:00
Vedran Pavic
4d86779648
Polish build script
...
Closes gh-1918
2018-08-10 08:48:02 +02:00
Juergen Hoeller
20f2e23bfb
Polishing
2018-08-09 23:57:25 +02:00
Sam Brannen
8ea913392c
Link to Eclipse bug for annotations on bridge methods
2018-08-09 18:49:24 +02:00
Juergen Hoeller
b3ca2d50a2
DefaultLifecycleProcessor properly counts dependent beans in same phase
...
Includes log level revision towards TRACE for cleaner DEBUG experience.
Issue: SPR-16901
Issue: SPR-16946
2018-08-09 17:31:29 +02:00
Juergen Hoeller
3a5def047f
@Scheduled supports "-" as cron expression value for disabled triggers
...
Issue: SPR-16858
2018-08-09 16:12:05 +02:00
Juergen Hoeller
eddbf13d5d
BeanFactoryUtils caches transformedBeanName results for factory beans
...
Issue: SPR-17151
2018-08-09 16:06:05 +02:00
Sebastien Deleuze
6b6384a09e
Improve WebFlux Protobuf support
...
- Update javadoc for decoding default instances
- Refactor and simplify tests
- Add missing tests
- Refactor decoding with flatMapIterable instead of
concatMap and avoid recursive call
Issue: SPR-15776
2018-08-09 15:47:45 +02:00
Juergen Hoeller
8e571decc1
Polishing
2018-08-09 11:59:15 +02:00
Juergen Hoeller
8f513f8561
AnnotationMatchingPointcut uses AnnotatedElementUtils.hasAnnotation
...
For consistency with AnnotationAsyncExecutionInterceptor (based on AnnotatedElementUtils.findMergedAnnotation) which is the main companion of AnnotationMatchingPointcut's checkInherited mode.
Issue: SPR-16933
2018-08-09 11:58:57 +02:00
Rossen Stoyanchev
57ded51de0
Fix link from Spring MVC to OXM chapter
2018-08-09 10:28:08 +03:00
Juergen Hoeller
915afa77f4
Polishing
2018-08-09 03:07:05 +02:00
Juergen Hoeller
58e9706991
Polishing
2018-08-09 02:26:36 +02:00
Juergen Hoeller
65f29a39ca
AbstractAspectJAdvisorFactory uses AnnotationUtils.getValue
2018-08-09 02:26:28 +02:00
Juergen Hoeller
7cf98261ce
Polishing
2018-08-08 23:56:17 +02:00
Juergen Hoeller
247ec572b2
Consistent hasAnnotation check for findMergedAnnotation lookup
...
Issue: SPR-16933
2018-08-08 23:54:56 +02:00
Juergen Hoeller
3f7d4b107e
Avoid unnecessary annotation introspection on framework classes
...
Issue: SPR-16933
2018-08-08 23:53:45 +02:00
Juergen Hoeller
4521a79b2d
Find annotations on implemented generic superclass methods as well
...
Includes Java 8 getDeclaredAnnotation shortcut for lookup on Class.
Issue: SPR-17146
2018-08-08 23:52:47 +02:00
Juergen Hoeller
fa72186e28
Expose checkbox field marker as 'hidden' to RequestDataValueProcessor
...
Issue: SPR-17147
2018-08-08 23:52:24 +02:00
Juergen Hoeller
b8b6367f9b
ConcurrentModel ignores null value for put (also used by putAll)
...
Issue: SPR-17141
2018-08-08 23:51:55 +02:00
Sam Brannen
7077af14f1
Use Float.valueOf(float) instead of deprecated Float(double) constructor
2018-08-08 17:19:15 +02:00
Sebastien Deleuze
1c628293a2
Add doc & tests to Jaxb2XmlEncoder for collections
...
Issue: SPR-16363
2018-08-08 17:16:23 +02:00
Sergey Chupov
a06e63f619
Polishing javadocs: IllegalStateException no longer thrown
...
The dependency to Apache Commons has been removed in https://github.com/spring-projects/spring-framework/commit/51252ebbcaa9e65aee83311aec25ca3c7c6d7d37#diff-95dc9d8756aa91afb2ac28454f1b634c , but the javadoc still mentions it.
2018-08-08 15:51:05 +02:00
Rossen Stoyanchev
eacf1d35ee
Proper use of setComplete in ContextPathCompositeHandler
...
Issue: SPR-17144
2018-08-08 16:35:47 +03:00
Rossen Stoyanchev
a0dfdfcac3
Hierarchy under WebClientResponseException
...
Issue: SPR-17145
2018-08-08 15:34:08 +03:00
Rossen Stoyanchev
c90ab5fb0a
Polish Http[Client|Server]ErrorException hierarchy
2018-08-08 15:34:08 +03:00
Sam Brannen
52f6dcf525
Fix typo
2018-08-08 13:25:14 +02:00
Sam Brannen
7b608ab995
Ensure AnnotationUtilsTests pass in Eclipse again
2018-08-08 13:23:51 +02:00
Kazuhiro Sera
be211ceead
Fix typos detected by github.com/client9/misspell
2018-08-08 12:50:46 +02:00
Sebastien Deleuze
896eb5687a
Check scheme in (WebUtils|CorsUtils)#isSameOrigin
...
Issue: SPR-16362
2018-08-08 12:19:42 +02:00
Sebastien Deleuze
7e9b7102b7
Support custom CorsConfigurationSource in AbstractHandlerMapping
...
This commit allows to specify a custom CorsConfigurationSource
in AbstractHandlerMapping (both Servlet and Reactive variants).
AbstractHandlerMapping#getCorsConfigurations method is now
deprecated.
Issue: SPR-17067
2018-08-08 10:08:55 +02:00
Juergen Hoeller
b325c74216
Pruning of outdated JDK 6/7 references (plus related polishing)
2018-08-07 20:36:47 +02:00
Juergen Hoeller
2b051b8b32
Deprecate support classes for Sun's JDK HTTP server
...
Issue: SPR-17143
2018-08-07 20:35:53 +02:00
Juergen Hoeller
34ddb88851
ConcurrentModel.addAttribute(String, Object) ignores null value
...
Issue: SPR-17141
2018-08-07 20:35:34 +02:00
Juergen Hoeller
a4c750e94c
Upgrade to OpenPDF 1.2 and Apache HttpAsyncClient 4.1.4
2018-08-07 11:24:20 +02:00
Juergen Hoeller
2d05f2ed47
SerializableTypeWrapper detects Graal through system property as well
...
Issue: SPR-17136
2018-08-07 11:15:43 +02:00
Rossen Stoyanchev
4a18488f30
Update deprecated basic auth client filters.
...
1. Update ExchangeFilterFunctions to delegate internally to
HttpHeaders.setBasicAuth(user, password).
2. Remove deprecation from
ExchangeFilterFunctions.basicAuthentication(String user, String password)
It is still useful as a filter to insert the header.
3. Update deprecation notes.
Issue: SPR-17099
2018-08-07 10:10:27 +03:00
Juergen Hoeller
6b82a6c38c
Polishing
2018-08-07 02:47:00 +02:00
Juergen Hoeller
2938a95435
Pre-size LinkedHashSet for annotation parsers
...
Issue: SPR-17074
2018-08-07 01:35:57 +02:00
Juergen Hoeller
d72d376f03
Avoid unnecessary annotation introspection on framework methods
...
Issue: SPR-16933
2018-08-07 01:35:32 +02:00
Juergen Hoeller
f155d21c95
DisposableBean javadoc refers to singletons as well as scoped beans
...
Issue: SPR-17131
2018-08-06 19:46:41 +02:00
Juergen Hoeller
28565e25fa
Javadoc references for resetBeanDefinition
...
Issue: SPR-17126
2018-08-06 19:45:06 +02:00
Juergen Hoeller
943b394992
Polishing
2018-08-06 18:34:00 +02:00
Juergen Hoeller
8a9d042320
Javadoc fix from ASM master (6.2.1)
...
Issue: SPR-16398
2018-08-06 18:33:41 +02:00
Juergen Hoeller
e64c6dfa3d
MergedBeanDefinitionPostProcessors clear internal caches on bean reset
...
Issue: SPR-17126
2018-08-06 15:41:35 +02:00
Juergen Hoeller
69c6a40c50
Consistent nullability for array/collection input parameters
...
Includes pre-sizing of LinkedHashSet for conversion from array.
Issue: SPR-17123
Issue: SPR-17074
2018-08-06 14:11:59 +02:00
Rossen Stoyanchev
a9a38fe67e
Consistent initialiazation of Forwarded header set
2018-08-06 14:32:18 +03:00
Rossen Stoyanchev
2216964b54
Polish RestTemplate exception hierarchy
...
Issue: SPR-15404
2018-08-06 14:29:10 +03:00
jerzykrlk
7f0e3481a5
Fine-grained RestTemplate exception hierarchy
...
Issue: SPR-15404
2018-08-06 14:29:10 +03:00
Sebastien Deleuze
2054fa2191
Upgrade to Jetty reactive HTTP client 1.0.1
...
Issue: SPR-17124
2018-08-06 12:01:29 +02:00
Juergen Hoeller
821ab62492
Upgrade to RxJava 2.2 and Kotlin 1.2.60
...
Includes latest dependency updates (Mockito 2.21, Log4J 2.11.1, Hibernate ORM 5.3.4, Protobuf 3.6.1, JRuby 9.2, HtmlUnit 2.32, Selenium 3.14) for Spring Framework 5.1.
Issue: SPR-16388
Issue: SPR-16239
2018-08-03 23:18:10 +02:00
Rossen Stoyanchev
c55c9eb029
Polish
2018-08-03 17:41:38 +03:00
Vedran Pavic
bb2db87c2f
Add support for adding cookies as headers in MockHttpServletResponse
...
Issue: SPR-17110
2018-08-03 16:44:14 +03:00
Rossen Stoyanchev
a8a1fc6de5
Earlier processing of forwarded headers
...
Forwarded headers are now processed before ServerWebExchange is created
through ForwardedHeaderTransformer which has the same logic as the
ForwardedHeaderFilter but works on the request only.
ForwardedHeaderFilter is deprecated as of 5.1 but if registered it is
removed from the list of filters and ForwardedHeaderTransformer is used
instead.
Issue: SPR-17072
2018-08-03 15:16:09 +03:00
Jason Zhekov
0878e438e5
Delete MockServer when using RestTemplate with MockMvc
2018-08-03 10:07:04 +03:00
Rossen Stoyanchev
aec98268fe
maxResponseBody client filter
...
Issue: SPR-16989
2018-08-02 21:19:22 +03:00
Rossen Stoyanchev
5095ec40b5
takeUntilByteCount actually uses takeUntil
...
Issue: SPR-17188
2018-08-02 21:19:22 +03:00
Rossen Stoyanchev
542ed81d5c
Polish
2018-08-02 21:19:22 +03:00
Juergen Hoeller
217aa38cbb
Polishing
2018-08-02 18:00:42 +02:00
Juergen Hoeller
2474c48749
Polishing
2018-08-02 16:55:53 +02:00
Juergen Hoeller
dc36bb34c7
Polishing
2018-08-02 14:41:27 +02:00
Juergen Hoeller
6735e2387c
Deprecate CommonJ scheduling in favor of JSR-236 Concurrency Utilities
...
Issue: SPR-17117
2018-08-02 14:38:30 +02:00
Juergen Hoeller
50550717d6
SchedulingTaskExecutor provides prefersShortLivedTasks default method
...
Issue: SPR-17116
2018-08-02 14:36:53 +02:00
Juergen Hoeller
c46dacc209
Support for deferred access to StoredProcedureQuery output parameters
...
Issue: SPR-17115
2018-08-02 14:30:55 +02:00
Juergen Hoeller
fa97aab8be
SchedulerAccessor catches cluster race conditions on job rescheduling
...
Issue: SPR-17114
2018-08-02 14:30:02 +02:00
stsypanov
b5c691bdac
SPR-17074 Replace pointless wrapping with Arrays.asList with iteration over array
2018-08-02 12:07:00 +02:00
Rossen Stoyanchev
29ce6685ca
Add handleFailure property to FrameworkServlet
...
Issue: SPR-17100
2018-08-02 00:49:28 +03:00
Juergen Hoeller
78eda961f2
Polishing
2018-08-01 13:11:35 +02:00
Vedran Pavic
70dbaf9751
Publish binding event for replaced attributes in MockHttpSession
...
Issue: SPR-17109
2018-08-01 13:07:41 +02:00
Juergen Hoeller
0001f87d59
Polishing
2018-08-01 12:52:50 +02:00
Juergen Hoeller
589b7048ec
Avoid synthesizable annotation creation for @Bean/@Scope processing
...
Includes consistent (non-)use of AnnotationUtils/AnnotatedElementUtils.
Issue: SPR-16933
2018-08-01 11:43:28 +02:00
Juergen Hoeller
9b671f8408
Polishing
2018-07-31 23:57:19 +02:00
Rossen Stoyanchev
65d5cb3663
Typo in URI Encoding section
...
Issue: SPR-17104
2018-07-31 23:27:00 +03:00
Rossen Stoyanchev
31024b1f93
Add sections on logging for Spring MVC and WebFlux
...
Issue: SPR-17032
2018-07-31 23:06:48 +03:00
Juergen Hoeller
92eaf99067
Polishing
2018-07-31 21:04:36 +02:00
Juergen Hoeller
6cd9060183
Avoid synthesizable check for common annotation types
...
This revision considers any java/javax and org.springframework.lang annotations as not synthesizable upfront, checking not only in isSynthesizable but also at synthesizeAnnotation(Array) level.
Issue: SPR-16933
2018-07-31 20:54:10 +02:00
Сергей Цыпанов
f8340838b3
Use lambda expressions for lazy instantiation ( #1911 )
...
Issue: SPR-17074
2018-07-31 13:03:18 +02:00
Juergen Hoeller
487e14d549
Polishing
2018-07-30 23:30:36 +02:00
Sola
9b1eb397ee
Fix documentation
2018-07-30 23:26:13 +02:00
Juergen Hoeller
f74a631ea1
Nullability refinements in spring-webmvc
...
Includes revision of web.servlet.tags.form for non-null conventions.
Issue: SPR-15540
2018-07-30 22:08:11 +02:00
Juergen Hoeller
4a147d26fc
Initialize pre-filled HashMaps with large enough capacity
...
Empty Maps are preferably initialized without capacity (not initializing them at all or lazily initializing with default capacity when needed).
Issue: SPR-17105
2018-07-30 22:07:31 +02:00
stsypanov
457d586859
SPR-17074 pass argument of addAll/putAll into constructor
2018-07-30 21:27:55 +02:00
Pascal Schumacher
aa656c47b8
Fix typo in notes on future deprecation of the RestTemplate
...
Issue: SPR-16993
Obvious Fix
2018-07-27 14:13:19 -04:00
Juergen Hoeller
109552d868
Polishing
2018-07-27 18:58:18 +02:00
Juergen Hoeller
1c40e36839
Upgrade to Netty 4.1.28
2018-07-27 17:46:37 +02:00
Juergen Hoeller
1fd6248d84
Polishing
2018-07-27 17:46:21 +02:00
Juergen Hoeller
c037e75f26
Improve debug logging at BeanDefinitionReader and BeanFactory level
...
Issue: SPR-17090
2018-07-27 17:46:05 +02:00
Rossen Stoyanchev
23bda9a5a7
Fix compiler warnings
2018-07-27 08:49:45 -04:00
Rossen Stoyanchev
91d17cf628
Add notes on future deprecation of the RestTemplate
...
Issue: SPR-16993
2018-07-27 08:41:20 -04:00
Rossen Stoyanchev
fcbf06f050
Disable equals in JsonPath~ and XPathAssertions
...
Issue: SPR-17091
2018-07-27 08:40:56 -04:00
Rossen Stoyanchev
f5ff1dc3f9
Comment on difference in matrix variable test
...
Based on discussion under
https://github.com/spring-projects/spring-framework/pull/1901
2018-07-27 08:40:36 -04:00
Juergen Hoeller
025fd2962e
Polishing
2018-07-26 23:51:52 +02:00
Juergen Hoeller
7c9ba80f85
Polishing
2018-07-26 23:20:50 +02:00
Juergen Hoeller
e82efbc7e3
Declare ASM7_EXPERIMENTAL for full compatibility with JDK 11 bytecode
...
Issue: SPR-17096
2018-07-26 23:11:54 +02:00
Rossen Stoyanchev
bcb485b5ed
bindToApplicatonContext uses WebSessionManager bean
...
Issue: SPR-17094
2018-07-26 15:53:41 -04:00
Rossen Stoyanchev
c022f7c19d
Polish
2018-07-26 15:53:41 -04:00
Bhavani Shekhawat
ee95f171c8
Update PropertySourcesPlaceholderConfigurer.java
...
Fix the error message when PropertySources are not applied
2018-07-26 20:48:50 +02:00
Juergen Hoeller
8277ea5794
Revise BeanFactory vs ApplicationContext section in reference docs
...
Issue: SPR-17095
2018-07-26 18:48:34 +02:00
Juergen Hoeller
e366b20037
Polishing
2018-07-26 15:46:55 +02:00
Johnny Lim
38525ceff6
Fix log level guard in DatabaseStartupValidator.afterPropertiesSet()
2018-07-26 15:45:42 +02:00
Johnny Lim
964467d269
Polish DatabaseStartupValidator.afterPropertiesSet()
2018-07-26 15:37:35 +02:00
Juergen Hoeller
e458777925
Properly identify event-related ClassCastExceptions on JDK 11
...
Issue: SPR-17093
2018-07-26 14:41:53 +02:00
Hannes Metssalu
142530874b
Fixed a typo in documentation.
...
'AbstractFactoryBean#getEarlySingletonInstance' documentation mentions "eager singleton". I'm quite sure it should be fixed to "early singleton".
2018-07-26 13:48:38 +02:00
Juergen Hoeller
c2a5fcd353
Fallback to empty collection/map only if actually no target bean found
...
Issue: SPR-15338
2018-07-26 05:59:18 +02:00
Rossen Stoyanchev
14d0fee86c
Improve context-related logging on web startup
...
Sample output at TRACE:
```
DispatcherServlet - Initializing Servlet 'org.springframework.web.servlet.DispatcherServlet-7a8c8dcf'
AnnotationConfigWebApplicationContext - Refreshing WebApplicationContext for namespace 'org.springframework.web.servlet.DispatcherServlet-7a8c8dcf-servlet', started on Wed Jul 25 17:46:38 EDT 2018
AnnotationConfigWebApplicationContext - Registering [org.springframework.web.servlet.mvc.method.annotation.RequestPartIntegrationTests$CommonsMultipartResolverTestConfig]
AnnotationConfigWebApplicationContext - No 'messageSource' bean, using [Empty MessageSource]
AnnotationConfigWebApplicationContext - No 'applicationEventMulticaster' bean, using [SimpleApplicationEventMulticaster]
AnnotationConfigWebApplicationContext - No 'lifecycleProcessor' bean, using [DefaultLifecycleProcessor]
...
DispatcherServlet - Initialization completed in 3361 ms
```
Issue: SPR-16946
2018-07-25 17:50:03 -04:00
Juergen Hoeller
4e03d3fdcb
MethodBeforeAdviceInterceptor implements BeforeAdvice marker interface
...
Includes related polishing in the advice interceptor implementations.
Issue: SPR-17088
2018-07-25 20:12:14 +02:00
Juergen Hoeller
9ab63b8494
ListBasedXMLEventReader uses defensive modifiable copy of given List
2018-07-25 19:03:13 +02:00
Juergen Hoeller
2b2bf27933
Polishing
2018-07-25 15:26:52 +02:00
Juergen Hoeller
3881a4aded
Polishing
2018-07-25 14:16:02 +02:00
Juergen Hoeller
3899b7a909
Refactor DefaultCodecs.protobufWriter into protobufEncoder
...
Includes nullability declarations for the protobuf package.
Issue: SPR-15776
2018-07-25 14:15:50 +02:00
Juergen Hoeller
fd8e4abe5d
Introduce ResolvableType.toClass() shortcut
...
Issue: SPR-17086
2018-07-25 14:15:19 +02:00
Juergen Hoeller
31bfc1dc2b
Differentiate internal LogAdapter from core.log.LogDelegateFactory
...
Issue: SPR-16585
Issue: SPR-17012
2018-07-25 14:14:38 +02:00
Sebastien Deleuze
d3b244a81b
Optimize class detection by sharing the ClassLoader
...
Issue: SPR-17083
2018-07-25 11:09:42 +02:00
Rossen Stoyanchev
32faf09a80
Add check for mixing @EnableWebMvc and @EnableWebFlux
...
Issue: SPR-16609
2018-07-24 20:47:26 -04:00
Rossen Stoyanchev
0be8c20fca
Consistent logging of selected media types
2018-07-24 20:47:26 -04:00
sdeleuze
36a07aa897
Support Protobuf serialization in WebFlux
...
This commit introduces Protobuf support in WebFlux via dedicated
codecs.
Flux<Message> are serialized/deserialized using delimited Protobuf
messages with the size of each message specified before the message
itself. In that case, a "delimited=true" parameter is added to the
content type.
Mono<Message> are expected to use regular Protobuf message
format (without the size prepended before the message).
Related HttpMessageReader/Writer are automatically registered when the
"com.google.protobuf:protobuf-java" library is detected in the classpath,
and can be customized easily if needed via CodecConfigurer, for example
to specify protocol extensions via the ExtensionRegistry based
constructors.
Both "application/x-protobuf" and "application/octet-stream" mime types
are supported.
Issue: SPR-15776
2018-07-25 01:17:06 +02:00
Juergen Hoeller
4475c67ba8
Fix checkstyle violation
2018-07-24 22:44:54 +02:00
Brian Clozel
195f3f07e7
ResponseEntityResultHandler overwrites headers
...
Prior to this commit, controller handlers (regular and exception
handlers as well) would not overwrite existing HTTP response headers on
the exchange. This would lead to situations where Content-Type values
set during the initial handling phase would not be overwritten when
handling an error later on.
This commit aligns the implementation of that result handler on the
Spring MVC one in that regard.
Issue: SPR-17082
2018-07-24 22:21:30 +02:00
Juergen Hoeller
90d395edcf
Polishing
2018-07-24 22:18:12 +02:00
Rossen Stoyanchev
2e4f5a7923
Consistently remove forwarded headers in WebFlux
...
Preparation for SPR-17072
2018-07-24 16:05:47 -04:00
Rossen Stoyanchev
41aa4218af
Polish WebFlux ForwardedHeaderFilter and tests
...
Preparation for SPR-17072
2018-07-24 16:05:47 -04:00
Juergen Hoeller
02403f6a34
Polishing
2018-07-24 21:44:43 +02:00
Juergen Hoeller
11881ff211
Polishing
2018-07-24 18:45:52 +02:00
Juergen Hoeller
a18cfd71b9
Upgrade to Reactor Californium M1
...
Issue: SPR-16386
2018-07-24 18:45:15 +02:00
Rossen Stoyanchev
2fdb8c9c8c
Update STOMP section on working with subscriptions
...
1. Revise @SubscribeMapping to address common points of confusion.
2. Add ExecutorSubsribableChannel.
3. Split Events and Interception in two.
Issue: SPR-16950
2018-07-24 12:23:13 -04:00
Rossen Stoyanchev
9b2c8404dc
"Order of messages" in STOMP section of reference docs
...
Issue: SPR-13989
2018-07-24 12:23:13 -04:00
Rossen Stoyanchev
23c379d5c0
Order setter for DefaultSimpUserRegistry
...
Issue: SPR-17023
2018-07-24 12:23:13 -04:00
Sebastien Deleuze
36bbbab02d
Deprecate ExtensionRegistryInitializer in protobuf support
...
In order to be consistent with SPR-15776, and since it does not
provide clear added value, this commit deprecates
ExtensionRegistryInitializer and uses ExtensionRegistry
parameter instead in ProtobufHttpMessageConverter and
ProtobufJsonFormatHttpMessageConverter constructors.
Issue: SPR-17081
2018-07-24 17:25:55 +02:00
Juergen Hoeller
dd4468a74a
Polishing
2018-07-24 16:16:52 +02:00
Juergen Hoeller
7f1a8d78b5
BeanFactoryAdvisorRetrievalHelper avoids synchronization for name cache
...
Issue: SPR-16570
2018-07-24 16:16:44 +02:00
Juergen Hoeller
47d8fe83df
Upgrade to Interceptor API 1.2.2, Moneta 1.3, Rome 1.11
2018-07-24 14:44:56 +02:00
Juergen Hoeller
fac2e35f96
Refactor util.log.LogUtils into core.log.LogDelegateFactory
...
Issue: SPR-17012
2018-07-24 14:44:34 +02:00
Juergen Hoeller
20c34cbb9b
Provide predetermined capacity for cache operation collections
...
Issue: SPR-17079
2018-07-24 13:27:02 +02:00
Juergen Hoeller
8e5f243320
Upgrade to Mockito 2.20
2018-07-24 13:09:32 +02:00
Juergen Hoeller
a9c9ba6601
Generic matching for ObjectProvider stream and empty vararg resolution
...
Issue: SPR-11419
Issue: SPR-15338
2018-07-24 13:03:54 +02:00
Rossen Stoyanchev
6372c0f47c
Ensure headers work with ResponseEntity + reactive body
...
Issue: SPR-17076
2018-07-24 00:24:29 -04:00
Rossen Stoyanchev
7500b144ae
Option to preserve publish order
...
Issue: SPR-13989
2018-07-23 23:24:39 -04:00
Juergen Hoeller
430250c80f
Upgrade to RxJava 2.1.17
2018-07-24 01:10:27 +02:00
Juergen Hoeller
5f51e86185
Avoid relying on runtime constructor order for argument conversion
2018-07-24 01:04:47 +02:00
Juergen Hoeller
1b09718104
Polishing
2018-07-24 00:45:21 +02:00
Juergen Hoeller
1603c4ab2f
Programmatic ObjectProvider retrieval through BeanFactory API
...
Introduces getBeanProvider(Class) and getBeanProvider(ResolvableType), also narrowing getBean(String, Class) and isTypeMatch(String, Class) to a non-null Class argument and enriching NoUniqueBeanDefinitionException with a full ResolvableType. In addition, ObjectProvider supports iterable/stream access for collection-style resolution of multiple matching beans now, and collection injection falls back to an empty collection in a single-constructor case with non-null arguments.
Issue: SPR-17075
Issue: SPR-11419
Issue: SPR-15338
2018-07-24 00:42:03 +02:00
Vedran Pavic
82194f4ee0
Set SameSite default to Lax
...
Issue: SPR-16418
2018-07-23 18:23:05 +02:00
Sebastien Deleuze
0def1640f2
Support single-value reactive types in @MessageMapping
...
This commit adds support for single-value reactive types in
@MessageMapping by converting them using ReactiveAdapterRegistry
and MonoToListenableFutureAdapter.
MonoToListenableFutureAdapter previously package private and used only
in org.springframework.messaging.tcp.reactor has been moved to
org.springframework.messaging.support and made public in order to be
used by ReactiveReturnValueHandler as well.
Issue: SPR-16634
2018-07-23 15:20:48 +02:00
Sebastien Deleuze
b09fad13a1
Catch errors when adding SourceHttpMessageConverter
...
This commit ignores errors like TransformerFactoryConfigurationError
that can be thrown when instantiating SourceHttpMessageConverter on
platforms where no TransformerFactory implementation is available,
like when compiling/running as GraalVM native images.
Issue: SPR-17007
2018-07-23 10:39:26 +02:00
Sebastien Deleuze
f8f8d28f08
Support running Kotlin apps without kotlin-reflect
...
This commit includes an optimization of BeansUtils#instantiateClass
that favors Java reflection for default constructors before leveraging
Kotlin one for finding primary constructors and avoids Kotlin related
conditions when running in Java.
Issue: SPR-17069
2018-07-23 09:54:48 +02:00
Juergen Hoeller
bccff73e2b
AspectJExpressionPointcut leniently ignores non-composable interfaces
...
Issue: SPR-17003
2018-07-22 22:28:48 +02:00
Juergen Hoeller
f58854f4b9
Locally cache factory method candidates per factory class
...
Issue: SPR-17071
2018-07-22 19:22:20 +02:00
Juergen Hoeller
13873dafb7
Polishing
2018-07-22 17:55:31 +02:00
Juergen Hoeller
cfbacfd89b
Revise ResolvableType.as for introspection performance
...
This revision limits serializability of derived interfaces, superclasses and type parameters, optimizing for introspection performance instead.
Issue: SPR-17070
2018-07-22 17:49:53 +02:00
stsypanov
5051850fa9
SPR-17074 Replace iteration over Map::ketSet with Map::entrySet
2018-07-21 13:12:43 +02:00
Juergen Hoeller
3c65c17053
Correctly determine and propagate validation hints to DataBinder
...
Issue: SPR-17073
2018-07-21 12:19:37 +02:00
Rossen Stoyanchev
c57e1afd2b
ResulatMatcher.matchAll
...
Issue: SPR-16417
2018-07-20 23:02:47 -04:00
Rossen Stoyanchev
91122ec0f5
Add Consumer methods to WebTestClient assertion classes
...
Issue: SPR-16574
2018-07-20 22:28:40 -04:00
Rossen Stoyanchev
20de5003ff
Hamcrest methods in WebTestClient
...
Issue: SPR-16729
2018-07-20 17:40:38 -04:00
Rossen Stoyanchev
0c62d6b5da
Polish
...
Leaving out hamcrest for now, to address more broadly.
Issue: SPR-16741
2018-07-20 17:40:38 -04:00
Eric Deandrea
2734f01067
Provide XML assertions in WebTestClient
...
Adds XML-based assertions in
org.springframework.test.web.reactive.server.WebTestClient.BodyContentSpec
for asserting against the XML body as well as xPath,
similar to those assertions offered when using
MockMvcResultMatchers.xpath().
Issue: SPR-16741
2018-07-20 17:38:04 -04:00
Juergen Hoeller
bb5d99a083
Upgrade to Hibernate ORM 5.3.3, Undertow 2.0.11, Mockito 2.19.1
2018-07-20 18:56:52 +02:00
Brian Clozel
390bb871d8
Switch order of multipart Content-Type directives
...
Since SPR-15205, the `FormHttpMessageConverter` is adding a `charset`
directive to the `Content-Type` request header in order to help servers
understand which charset is being used to encode headers of each part.
As reported in SPR-17030 and others, some servers are not parsing
properly such header values and assume that `boundary` is the last
directive in the `Content-Type` header.
This commit reorders the charset information right before the boundary
declaration to get around those issues.
Issue: SPR-17030
2018-07-20 18:11:05 +02:00
Juergen Hoeller
9a43d2ec20
Revised log levels: less WARN and INFO, fine-tuned DEBUG vs TRACE
...
Issue: SPR-16946
2018-07-20 15:05:16 +02:00
Brian Clozel
a410d90439
Drain client response body consistenly
...
Prior to this commit, the `DefaultClientResponse` implementation would
handle HTTP client cases where the server response body would need to be
consumed (pooled resources need to be released) and the body publisher
cancelled right away. This is done to avoid reading the whole response
body and returning the connection to the pool, now that this connection
cannot be reused.
This was done already when the `WebClient` is asked for a `Void` type
for the response body.
SPR-17054 brought a new case for that: whenever no message reader is
able to decode the response body, an `UnsupportedMediaTypeException`
error signal is sent. Prior to this commit, the response body would not
be consumed and cancelled for that case.
This commit refactors all those cases from the `DefaultClientResponse`
directly into the `BodyExtractors`, since most of the logic and
knowledge for that belongs there. We only need to only apply this
behavior when the HTTP client is involved, as the server does not want
this to happen.
Issue: SPR-17054
2018-07-20 14:01:34 +02:00
Rossen Stoyanchev
07653bfd0c
Fix for encoding issue with MvcUriComponentsBuilder
...
Provide method for stronger encoding of expanded URI variables when
building links from views.
Issue: SPR-17027
2018-07-19 19:07:42 -04:00
Rossen Stoyanchev
93b7a4838e
UriComponentsBuilder method to configure URI variables
...
See Javadoc on UriComponentsBuilder#uriVariables for details.
This helps to prepare for SPR-17027 where the MvcUriComponentsBuilder
already does a partial expand but was forced to build UriComonents
and then create a new UriComponentsBuilder from it to continue. This
change makes it possible to stay with the same builder instance.
Issue: SPR-17027
2018-07-19 19:07:42 -04:00
Rossen Stoyanchev
28cd6978b5
Minor fixes: UriComponentsBuilder, UriComponents, docs
...
After the latest changes, two small fixes in the clone method to copy
the encode flag, and in the encodeUriTemplate method to account for
possible null query params.
Improvements in the URI encoding section.
Issue: SPR-17039, SPR-17027
2018-07-19 19:07:42 -04:00
Juergen Hoeller
51c7ceb95d
Polishing
2018-07-20 00:17:37 +02:00
Juergen Hoeller
252f52ab07
Tighten (IntroductionAware)MethodMatcher contract
...
Provides a non-null guarantee for MethodMatcher's targetClass argument and strict separation between IntroductionAwareMethodMatcher and regular MethodMatcher, enabling DefaultAdvisorChainFactory to defer its IntroductionAdvisor determination until encountering an actual IntroductionAwareMethodMatcher (even behind union/intersection).
Issue: SPR-17068
2018-07-20 00:17:31 +02:00
Juergen Hoeller
867b3d233d
Upgrade to OkHttp 3.11, Apache HttpClient 4.5.6, Hibernate Validator 6.0.11
2018-07-19 17:52:08 +02:00
Juergen Hoeller
09920d9b01
Raise testPrototypeCreationWithPropertiesIsFastEnough limit to 4000 ms
2018-07-19 17:51:54 +02:00
Juergen Hoeller
c4df335a1d
ReflectiveMethodExecutor invokes interface method if possible
...
Issue: SPR-16845
2018-07-19 16:35:59 +02:00
Juergen Hoeller
478d7255d2
GenericApplicationListenerAdapter caches resolved event types
...
Issue: SPR-16970
2018-07-19 16:34:19 +02:00
Juergen Hoeller
52d124de6f
Use supplier-aligned type information for FactoryBean type resolution
...
Issue: SPR-17063
2018-07-19 13:14:20 +02:00
Juergen Hoeller
0b60447c49
Javadoc update: ConfigurationClassPostProcessor is priority-ordered
...
Issue: SPR-17062
2018-07-19 11:59:40 +02:00
Juergen Hoeller
d0bbbf4cae
OrderUtils caches order values (for AnnotationAwareOrderComparator)
...
Issue: SPR-17064
2018-07-19 11:58:42 +02:00
Juergen Hoeller
1f5d0faf1f
HandlerMethod caches interface parameter annotations
...
Issue: SPR-11055
2018-07-19 11:38:10 +02:00
Stephane Nicoll
999c169b1c
Merge pull request #1888 from vpavic:patch-1
...
* pr/1888:
Polish WebSession javadoc
2018-07-19 11:27:13 +02:00
Vedran Pavic
b1e28a554a
Polish WebSession javadoc
...
Issue: SPR-17051
Closes gh-1888
2018-07-19 11:26:49 +02:00
Rossen Stoyanchev
9498da5910
Clarify behavior of WebSession#save()
...
+ minor update to the InMemoryWebSession to match the defined behavior.
Issue: SPR-17051
2018-07-18 22:14:02 -04:00
Rossen Stoyanchev
66d73017d5
PathVariable consistently reflects value up to 1st ";"
...
Given "/{foo}" and "/a=42;c=b", previously that would be treated as a
sequence of matrix vars with an empty path variable. After the change
the path variable "foo" is "a=42".
This should be ok for backawards compatibility since it's unlikely for
anything to rely on an empty path variable.
Issue: SPR-11897
2018-07-18 22:14:02 -04:00
Juergen Hoeller
9c08a482d1
Prefer ArrayList/ArrayDeque over LinkedList for multi-element holders
...
LinkedList remains in place where a List is likely to remain empty or single-element (in order to avoid unused capacity).
Issue: SPR-17037
2018-07-18 22:17:42 +02:00
Rossen Stoyanchev
833aee9b2d
Add SimpLogging and use o.s.messaging.simp classes
...
Issue: SPR-17012
2018-07-18 15:33:20 -04:00
Rossen Stoyanchev
4d6f2df3cb
Add LogUtils and HttpLogging
...
SPR-17012
2018-07-18 15:32:50 -04:00
Juergen Hoeller
23d4862017
Find annotations on implemented generic interface methods as well
...
Issue: SPR-16060
2018-07-18 19:44:30 +02:00
Juergen Hoeller
c77dbbb1e6
Specific exception for missing request header, cookie, matrix variable
...
Issue: SPR-14818
2018-07-18 18:56:51 +02:00
Sebastien Deleuze
e8034f2f96
Adapt DefaultParameterNameDiscoverer to Graal constraints
...
When compiling or running as a Graal native image, no
ParameterNameDiscoverer is used.
Issue: SPR-17005
2018-07-18 17:17:47 +02:00
Juergen Hoeller
790d515f8c
HandlerMethod exposes interface parameter annotations as well
...
The HandlerMethodParameter arrangement uses an approach similar to ModelAttributeMethodProcessor's FieldAwareConstructorParameter, merging the local parameter annotations with interface-declared annotations.
Issue: SPR-11055
2018-07-18 17:13:55 +02:00
Juergen Hoeller
28f7b26294
Null-returning instance supplier resolves to NullBean
...
Issue: SPR-17057
2018-07-18 15:26:06 +02:00
Juergen Hoeller
f8553117d0
Polishing
...
(cherry picked from commit 4341838 )
2018-07-18 14:58:43 +02:00
sdeleuze
a87764f1fd
Add support for Jetty Reactive Streams HTTP client
...
Leverage https://github.com/jetty-project/jetty-reactive-httpclient
to add support for Jetty in WebClient via JettyClientHttpConnector.
Implemented with buffer copy instead of optimized buffer wrapping
because the latter hangs since Callback#succeeded doesn't allow
releasing the buffer and requesting more data at different times
(required for Mono<DataBuffer> for example).
See https://github.com/eclipse/jetty.project/issues/2429 .
Issue: SPR-15092
2018-07-18 14:49:49 +02:00
Sebastien Deleuze
3c9049d530
Leverage Jetty BOM
...
Issue: SPR-17058
2018-07-18 14:49:49 +02:00
Brian Clozel
a7f97a1669
Avoid null signals when resolving handler arguments
...
Prior to this commit, resolving an argument for a WebFlux controller
that's missing from the request and not required by the handler would
throw a NullPointerException in some cases.
This involves the conversion of the parameter (a `String` parameter type
might not trigger this behavior) and sending a `null` within a reactive
stream, which is illegal per the RS spec.
We now rely on a `Mono.justOrEmpty()` to handle those specific cases.
Issue: SPR-17050
2018-07-18 14:41:43 +02:00
Juergen Hoeller
5fcfe0fa8e
Polishing
2018-07-18 14:27:16 +02:00
Juergen Hoeller
cab35aa788
StringUtils.parseLocaleString detects variant without country
...
Includes tests for parsing all available locales on the JVM, checking toString/toLanguageTag equality between parsed and original locale.
Issue: SPR-7598
Issue: SPR-16651
2018-07-18 11:10:26 +02:00
Stephane Nicoll
d8ee1f5c83
Merge pull request #1887 from crewmanmud:patch-2
...
* pr/1887:
Correct method signature in code example
2018-07-18 09:08:01 +02:00
Andrew McCallum
d8878e4513
Correct method signature in code example
...
Closes gh-1887
2018-07-18 09:07:31 +02:00
Rossen Stoyanchev
6c4289e238
Polish
2018-07-17 17:39:16 -04:00
Rossen Stoyanchev
0bd7a3646c
Update URI Encoding section
2018-07-17 15:58:27 -04:00
Juergen Hoeller
b3d6283d7d
CookieAssertionTests expects language tag compliance by default
...
Issue: SPR-16700
2018-07-17 18:18:54 +02:00
Juergen Hoeller
ef9027e1c1
Polishing
2018-07-17 17:59:16 +02:00
Juergen Hoeller
b8d2a16c31
UrlBasedViewResolver exposes redirect/forward prefix as bean name
...
Issue: SPR-17045
2018-07-17 17:58:19 +02:00
Juergen Hoeller
88e4006790
CookieLocaleResolver is RFC6265 and language tag compliant by default
...
Like CookieLocaleResolver, LocaleChangeInterceptor parses both locale formats by default now. Since it does not need to render the locale, its languageTagCompliant property is not relevant anymore at all.
The parseLocale method in StringUtils validates the locale value now and turns an empty locale into null, compatible with parseLocaleString behavior and in particular aligned with web locale parsing needs.
Issue: SPR-16700
Issue: SPR-16651
2018-07-17 17:57:59 +02:00
Juergen Hoeller
955665b419
Consistent processing of binding/validation failures for data classes
...
Includes an extension of SmartValidator for candidate value validation, as well as nullability refinements in Validator and BindingResult.
Issue: SPR-16840
Issue: SPR-16841
Issue: SPR-16854
2018-07-17 17:01:34 +02:00
Rossen Stoyanchev
d8a2927dd3
Update URI links section after encoding changes
...
Issue: SPR-17039
2018-07-16 21:21:37 -04:00
Rossen Stoyanchev
a41a1edd93
Switch to TEMPLATE_AND_VALUES as the default mode
...
DefaultUriBuilderFactory now uses EncodingMode.TEMPLATE_AND_VALUES by
default. However the RestTemplate explicitly sets it to the previous
setting EncodingMode.URI_COMPONENTS, so this affects mainly the
WebClient and any direct use of DefaultUriBuilderFactory to configure
either the RestTemplate or the WebClient.
Issue: SPR-17039
2018-07-16 21:21:37 -04:00
Rossen Stoyanchev
2a0eac47f9
Add TEMPLATE_AND_VALUES mode to DefaultUriBuilderFactory
...
Issue: SPR-17039
2018-07-16 21:21:37 -04:00
Rossen Stoyanchev
75e45103b5
Polish DefaultUriBuilderFactory
2018-07-16 21:21:34 -04:00
Juergen Hoeller
b915e42c38
Resolve target type for GenericHttpMessageConverter.canWrite/write
...
Issue: SPR-16877
2018-07-16 19:45:35 +02:00
Juergen Hoeller
cacd14c805
Never return null from AnnotationMetadata.getMetaAnnotationTypes
...
Issue: SPR-17046
2018-07-16 18:05:10 +02:00
Rossen Stoyanchev
5fb4982026
Support for encode() in UriComponentsBuilder
...
The ability to request to encode before `build()`, and more importantly
before expanding, allows stricter encoding to be applied to URI vars
and consequently to neutralize the effect of characters with reserved
meaning in a URI.
Issue: SPR-17039
2018-07-16 09:16:11 -04:00
Juergen Hoeller
fe2eeb43f1
Upgrade to Groovy 2.5.1
2018-07-16 14:50:43 +02:00
Juergen Hoeller
77d72f1e01
Injected Map/Collection does not include null bean entries
...
Issue: SPR-17034
2018-07-16 13:04:38 +02:00
Juergen Hoeller
faef363e85
Evaluate @Cacheable(condition) once per method invocation only
...
Issue: SPR-17024
2018-07-16 13:04:14 +02:00
Juergen Hoeller
93d91219fd
Support for "cacheRegionFactory" injection with Hibernate 5
...
Issue: SPR-17043
2018-07-16 13:03:46 +02:00
Stephane Nicoll
333ec7400e
Fix typo
...
Issue: SPR-17042
2018-07-15 16:17:48 +02:00
Juergen Hoeller
f6fdffd663
Lazily retrieve delegate beans in AsyncConfigurer and CachingConfigurer
...
Introduces a configure method pattern for Supplier-style configuration and a common SingletonSupplier decorator for method reference suppliers. Also declares jcache.config and jcache.interceptor for non-null conventions.
Issue: SPR-17021
2018-07-14 19:29:32 +02:00
Juergen Hoeller
680afa75d8
ListableBeanFactory.getBeansOfType does not include null bean entries
...
Issue: SPR-17034
2018-07-14 01:02:39 +02:00
Rossen Stoyanchev
24a30baa2a
Typos in InMemoryWebSessionStore
2018-07-13 17:51:23 -04:00
Rossen Stoyanchev
43fbd63254
Add maxSessions, getSessions, removeExpiredSessions
...
This commit removes the session threshold check added recently which
is not effective since maxIdleTime is usually much longer than the
frequency of checks. The lazy triggering of expiration checks during
create or retreive are simple and the most effective
This commit also adds a maxSessions limit on the total number of
sessions that can be created at any one time, a getSessions method
for management purposes, and a removeExpiredSessions public API
for manual triggering of expiration checks.
Issue: SPR-17020, SPR-16713
2018-07-12 16:12:19 -04:00
Brian Clozel
75fa9c4266
Fix checkstyle issues
2018-07-12 21:54:32 +02:00
Brian Clozel
038af9a303
Improve unknown status codes handling by WebClient
...
Prior to this commit, `WebClient` would throw `IllegalArgumentException`
when receiving an HTTP response with an unknown HTTP status code.
This commit is a follow up of SPR-16748 (supporting non-standard HTTP
status codes on the reactive `ClientHttpResponse`), and is mirroring
SPR-15978 (supporting non-standard HTTP status codes in `RestTemplate`).
With this change, `WebClient` now tolerates unknown status codes in some
cases, while not offering that choice as a first class citizen:
`HttpStatus` is still the preferred way to deal with HTTP status codes.
Here's how `WebClient` will behave when fetching the full response:
```
// Given a remote endpoint returning a "123" HTTP status code
Mono<ClientResponse> result = this.webClient.get()
.uri("/status/123")
.exchange();
// will still throw an IllegalArgumentException
HttpStatus status = result.block().statusCode();
// is safe and will return 123
int statusCode = result.block().rawStatusCode();
```
Resolving directly the response body with `retrieve()` is different.
```
// will send an error signal with a UnknownHttpStatusCodeException
Mono<String> result = this.webClient.get()
.uri("/status/123")
.retrieve()
.bodyToMono(String.class);
```
In general, `WebClient` will provide high-level support
for well-known HTTP status codes, like error handling with
`WebClient.ResponseSpec#onStatus`.
For such support with unknown status codes, it is better to rely
on lower level constructs such as `ExchangeFilterFunction`.
Issue: SPR-16819
2018-07-12 19:08:08 +02:00
Juergen Hoeller
f123d6c3bc
Upgrade to Netty 4.1.27 and Commons Pool 2.6
2018-07-12 16:53:37 +02:00
Rossen Stoyanchev
32b75221b3
Improve expired session check algorithm
...
1. Add session count threshold as am extra pre-condition.
2. Check pre-conditions for expiration checks on every request.
Effectively an upper bound on how many sessions can be created before
expiration checks are performed.
Issue: SPR-17020
2018-07-11 15:59:18 -04:00
Rossen Stoyanchev
e9ed45ee3b
Fix code completion typo
2018-07-11 11:13:57 -04:00
Rossen Stoyanchev
7b3a72f483
Warn when SimpleAsyncTaskExecutor is used
...
Issue: SPR-16203
2018-07-11 11:10:03 -04:00
Rossen Stoyanchev
1b1bc7f5b5
Switch defaults and model for logging sensitive data
...
Issue: SPR-17029
2018-07-11 11:10:03 -04:00
Rossen Stoyanchev
a40d25a760
Remove no-op classes in web-related Java config
2018-07-11 11:10:03 -04:00
Rossen Stoyanchev
3d6e38bb43
Conditional registration of task scheduler for SockJS
...
Issue: SPR-16189
2018-07-11 11:10:03 -04:00
Rossen Stoyanchev
6aa6d91ea9
Remove deprecated constructors in WebSocket config
...
In preparation for SPR-16189.
2018-07-11 11:10:03 -04:00
Juergen Hoeller
c2fbd9f321
Upgrade to Rome 1.11 and OpenPDF 1.1
2018-07-11 16:48:12 +02:00
Juergen Hoeller
2ede6f65b4
Upgrade to Netty 4.1.26 and Undertow 2.0.10
2018-07-11 15:48:37 +02:00
Juergen Hoeller
6887802526
Fallback to ClassLoader.defineClass for Lookup.defineClass LinkageError
...
Issue: SPR-16902
2018-07-10 22:13:57 +02:00
Juergen Hoeller
3a4b5c2ade
RootBeanDefinition publicly exposes target type as ResolvableType
...
Issue: SPR-17028
2018-07-10 19:28:12 +02:00
Juergen Hoeller
a1d209726c
Upgrade to ASM master (6.2+) and CGLIB 3.2.7
...
Issue: SPR-16398
2018-07-10 18:51:01 +02:00
Stephane Nicoll
aabc5d9766
Merge pull request #1880 from GuiRitter:patch-2
...
* pr/1880:
Fix typo
2018-07-10 15:48:11 +02:00
Guilherme Alan Ritter
7f54ae109a
Fix typo
...
Closes gh-1880
2018-07-10 15:39:31 +02:00
Brian Clozel
818e4b0776
Refine Content-Range support for Resources
...
This commit restricts the support of `"Content-Range"` when returning
`Resource` instances from Controllers - now only "HTTP 200 OK" responses
will be considered, as Controllers might want to handle content range
themselves.
Issue: SPR-16921
2018-07-10 12:11:23 +02:00
xiexed
d5df097e0e
Small typo fixes in WebSocketHandler doc
2018-07-09 14:27:23 -04:00
Rossen Stoyanchev
931581a1e0
Polish Reactive Spring Web section
2018-07-09 14:27:23 -04:00
Brian Clozel
d00f6f09a5
Polish ContentCachingRequestWrapper
...
Issue: SPR-15762
2018-07-09 19:15:29 +02:00
zilong6
4d0800f392
Improve ContentCachingRequestWrapper performance
...
This commit improves the performance of `read` method variants
to write to the cache in an optimized way.
Issue: SPR-15762
2018-07-09 19:15:21 +02:00
Arjen Poutsma
2ac6a15f6f
Add setBearerAuth method
...
Issue: SPR-16997
2018-07-09 17:06:55 +02:00
Arjen Poutsma
a663454fad
Changed Basic Authentication consumer to setBasicAuth method
...
This commit changes the Basic Authentication Consumer<HttpHeaders> to
a basic setBasicAuth(String, String) method.
Issue: SPR-16913
2018-07-09 16:41:51 +02:00
Juergen Hoeller
a80c5121fe
Polishing
2018-07-09 15:53:44 +02:00
Juergen Hoeller
d9e8d3bbe1
Custom "jdbcExceptionTranslator" on HibernateJpaDialect
...
Also available on LocalSessionFactoryBean through HibernateExceptionTranslator, as with our former Hibernate 3 support.
Issue: SPR-17015
2018-07-09 15:52:36 +02:00
Juergen Hoeller
39d455073a
Update ref doc references to Number/Currency/PercentStyleFormatter
...
Issue: SPR-17022
2018-07-09 15:48:45 +02:00
Juergen Hoeller
833343f17c
Specifically rethrow IllegalAccessError in isPresent/resolveClassName
...
Issue: SPR-17018
2018-07-09 14:31:45 +02:00
Juergen Hoeller
fd0220b85c
Suppress rawtypes warning for createReferenceArray
2018-07-09 14:28:15 +02:00
stsypanov
6d6aa72e8f
improve performance of projection instantiation
2018-07-09 13:39:23 +02:00
Sam Brannen
581acb62a0
Refine wording
2018-07-08 14:11:04 +02:00
Sam Brannen
8d09222799
Improve description of return value for queryForList(..)
2018-07-08 13:34:56 +02:00
Rossen Stoyanchev
4bd22eeb13
Fallback logger for logging in http and codec packages
...
Issue: SPR-17012
2018-07-07 10:54:03 -04:00
Rossen Stoyanchev
bca9f51092
Polish hint for suppressing logging at Encoder/Decoder
2018-07-06 20:32:08 -04:00
Rossen Stoyanchev
2874dd75ca
Fine-tune WebFlux logging at HTTP/WebSocket level
...
1. Use special category prefix "spring-web.reactivestreams" for logging
of reactive streams signals in spring-web, since those are quite
verbose would fill the logs at TRACE.
2. Add and use loggers in request and websocket session implementations
separate from reactive streams bridge for regular TRACE logging.
3. Improve log messages and add where missing (e.g. for Reactor)
Issue: SPR-16898
2018-07-06 17:33:16 -04:00
Rossen Stoyanchev
7746878b50
Remove workaround for Reactor Netty #171
2018-07-06 15:44:24 -04:00
Rossen Stoyanchev
bc3cf0eeb8
Expose request id at the ServerHttpRequest level
...
Hiding it (at AbstractServerHttpRequest) complicates matters since
requests are often mutated and decorated, plus it's also possible to
implement the interface directly (we've one, albeit corner case).
Issue: SPR-16966
2018-07-06 15:44:24 -04:00
Rossen Stoyanchev
5dc49b16ea
Correlated messages at HTTP adapter + WebSocket level
...
Issue: SPR-16966
2018-07-06 15:44:18 -04:00
Rossen Stoyanchev
7be2943c03
Simplify WebSocket client implementationss in WebFlux
...
1. Eliminate WebSocketClientSupport base class whose main value was
to provide logging but those methods get in the way of inserting a
log prefix.
2. Remove checks and synchronization in lifecycle methods of Jetty
client since underlying Jetty client already has that.
2018-07-06 15:17:11 -04:00
Sebastien Deleuze
fd69c90fcb
Add ServerResponse extensions for json, xml and html
...
Issue: SPR-17017
2018-07-06 14:52:11 +02:00
Juergen Hoeller
2cd006923c
Polishing
2018-07-06 14:38:29 +02:00
Sebastien Deleuze
c0264072ab
Avoid ServerResponse static imports in WebFlux router DSL
...
Provide functions like ok() in RouterFunctionDsl to avoid
ServerResponse static imports.
Issue: SPR-17009
2018-07-06 13:50:27 +02:00
Arjen Poutsma
37a3765a4e
Fix checkstyle errors
2018-07-06 13:38:17 +02:00
Juergen Hoeller
b4fc7943e1
Make javax.inject.Provider impl invisible for nested class introspection
...
Issue: SPR-17014
2018-07-06 13:20:03 +02:00
Arjen Poutsma
490302ebf8
Added RequestPredicates.methods(HttpMethod...)
...
Added a predicate that tests for multiple HTTP methods.
2018-07-06 12:01:16 +02:00
Arjen Poutsma
91e96d8084
Improve RouterFunction builder
...
This commit improves the RouterFunctions.Builder based on conversations
had during the weekly team meeting.
Issue: SPR-16953
2018-07-06 12:01:08 +02:00
Juergen Hoeller
22ccdb285f
Upgrade to Hibernate ORM 5.3.2 and 5.1.15
2018-07-06 01:23:07 +02:00
Juergen Hoeller
d8c7270c00
Consistent Iterator/Stream support in PropertySources and PropertyValues
...
Issue: SPR-16894
2018-07-05 23:59:56 +02:00
Rossen Stoyanchev
bb3061d112
Polish
2018-07-05 14:08:05 -04:00
Violeta Georgieva
22f6e5b9ff
Adapt ReactorHttpsServer to lates Reactor Netty changes
2018-07-05 14:00:01 -04:00
Juergen Hoeller
d2eb4d2671
SpringBeanContainer falls back to Hibernate's default producer
...
Issue: SPR-17010
2018-07-05 17:54:07 +02:00
Juergen Hoeller
620e83c35d
SpringBeanContainer is public for custom JPA configuration purposes
...
Issue: SPR-16305
2018-07-05 16:48:35 +02:00
Rossen Stoyanchev
39d5874441
Use connection id in server log messages if possible
...
Issue: SPR-16966
2018-07-05 08:32:27 -04:00
Rossen Stoyanchev
5cdc26770e
Correlated WebClient log messages
...
Issue: SPR-16966
2018-07-05 08:30:23 -04:00
Rossen Stoyanchev
82310660fd
Correlated encoding/decoding log messages via hints
...
Issue: SPR-16966
2018-07-05 08:28:15 -04:00
Rossen Stoyanchev
fd90b73748
Correlated WebFlux server log messages
...
Issue: SPR-16966
2018-07-05 08:27:13 -04:00
Juergen Hoeller
010ba33d03
Propagate read-only status through setDefaultReadOnly(true) for JPA
...
This involves a new ResourceTransactionDefinition variant that JpaTransactionManager indicates a transaction-local EntityManager on. HibernateJpaDialect uses this indicator for hard read-only behavior.
Issue: SPR-16956
2018-07-05 13:53:35 +02:00
Juergen Hoeller
83faee67d5
HttpMessageNotReadableException provides access to HttpInputMessage
...
Issue: SPR-15588
2018-07-04 22:46:09 +02:00
Juergen Hoeller
fc699b2b37
@Bean provides autowireCandidate flag (analogous to XML definitions)
...
Issue: SPR-16204
2018-07-04 22:41:05 +02:00
Juergen Hoeller
182243d20d
BeanDefinitionOverrideException in case of overriding not allowed
...
Issue: SPR-16982
2018-07-04 21:32:51 +02:00
Juergen Hoeller
63d6215247
Polishing
2018-07-04 19:23:27 +02:00
Juergen Hoeller
c0d4cb55c7
LocalSessionFactoryBuilder provides Hibernate 5.3 BeanContainer support
...
LocalSessionFactoryBean automatically registers its containing BeanFactory as a BeanContainer when Hibernate 5.3 or higher is on the classpath.
Issue: SPR-16305
2018-07-04 19:23:19 +02:00
Juergen Hoeller
5dc8b5de6d
Polishing
2018-07-04 15:07:17 +02:00
Juergen Hoeller
094c9b8bd2
LocalSessionFactoryBean and HibernateTransactionManager for JPA setup
...
SessionHolder extends EntityManagerHolder now, allowing for @PersistenceContext and co to interact with HibernateTransactionManager's thread-bound transactions, and SpringSessionContext is capable of interacting with JpaTransactionManager by detecting a plain EntityManagerHolder as well.
Issue: SPR-17002
2018-07-04 15:07:09 +02:00
Juergen Hoeller
a5dd0f0c09
Fix accidental @Nullable declaration on addAttribute(Object)
...
Issue: SPR-16831
2018-07-04 15:06:56 +02:00
Sam Brannen
160002cf8b
Polishing
2018-07-04 14:33:39 +02:00
Sam Brannen
755add3087
Verify that TestContextBootstrapper resolution ignores duplicates
...
This commit introduces a test to verify that multiple declarations of
@BootstrapWith that register the same TestContextBootstrapper type
(i.e., duplicates) do not result in an error.
Issue: SPR-17006
2018-07-04 13:58:49 +02:00
Sebastien Deleuze
18781d70b4
Upgrade to Kotlin 1.2.51
2018-07-04 11:12:16 +02:00
Juergen Hoeller
d22d408261
Propagate read-only status through Session.setDefaultReadOnly(true)
...
Issue: SPR-16956
2018-07-03 22:22:19 +02:00
Juergen Hoeller
0b86c71b2a
LogFactoryService class for standard Commons Logging service discovery
...
Issue: SPR-16585
Issue: SPR-15903
2018-07-03 18:57:12 +02:00
Rossen Stoyanchev
8bffb6a798
Add defaultRequest option to WebClient.Builder
...
Issue: SPR-16873
2018-07-03 12:44:29 -04:00
Rossen Stoyanchev
da5b705328
Polish default headers/attributes in WebClient
2018-07-03 12:44:29 -04:00
Rossen Stoyanchev
43d6ceb6f0
Align settings for sameSite and secure flag
...
After this change sameSite still gets a default value of "Strict" in
CookieWebSessionIdResolver but for changes to either sameSite or secure
it is now expected to use
addCookieInitializer(Consumer<ResponseCookie.ResponseCookieBuilder>).
Issue: SPR-16418, SPR-16980
2018-07-03 12:44:29 -04:00
Sebastien Deleuze
9b7a492bc9
Test RxReactiveStreams presence in ReactiveAdapterRegistry
...
Issue: SPR-17000
2018-07-03 18:00:47 +02:00
Juergen Hoeller
f7d22a0b42
Move indexer implementation to index.processor subpackage (for Jigsaw)
...
Issue: SPR-16979
2018-07-03 17:55:24 +02:00
Juergen Hoeller
2fe3c36cc2
Polishing
2018-07-03 17:54:43 +02:00
Juergen Hoeller
9efddea5e0
Upgrade to Apache Johnzon 1.1.8 and JCA 1.7.1
2018-07-03 15:53:49 +02:00
Juergen Hoeller
f2787cfb35
Same method filtering in ConstructorResolver and getTypeForFactoryMethod
...
Issue: SPR-16999
2018-07-03 15:53:17 +02:00
Sebastien Deleuze
dcbaecea2a
Perform explicit class checks in ReactiveAdapterRegistry
...
In order to allow Spring Framework applications running as GraalVM
native images, ReactiveAdapterRegistry should perform explicit class
checks instead of catching Throwable in order to avoid
UnsupportedFeatureError errors.
Issue: SPR-17000
2018-07-03 13:35:11 +02:00
Juergen Hoeller
e485abbe56
Fix checkstyle violation (plus related polishing)
...
Issue: SPR-16913
2018-07-02 23:56:58 +02:00
Juergen Hoeller
d08b72a75a
Consistent throwing of HttpMessageNotReadableException vs IOException
...
Includes specific fine-tuning of ProtobufHttpMessageConverter and JAXB2 based message converters, as well as revised javadoc for abstract base classes.
Issue: SPR-16995
2018-07-02 22:37:29 +02:00
Juergen Hoeller
779cf8d240
ConcurrentReferenceHashMap caches EntrySet in volatile field
...
Includes an efficient implementation of isEmpty(), not relying on a full entry count but rather backing out once a non-empty hash segment has been found.
Issue: SPR-16994
2018-07-02 22:32:57 +02:00
Juergen Hoeller
06f9fb9aeb
Refine Class serializability check for actual Graal compatibility
...
Issue: SPR-16992
2018-07-02 22:32:29 +02:00
Arjen Poutsma
6bcf6ffb06
Add Basic Authentication Consumer
...
Issue: SPR-16913
2018-07-02 15:16:03 +02:00
Juergen Hoeller
e5a6711d29
Consistent final declaration for static delegate classes
...
Issue: SPR-16968
2018-07-02 13:55:18 +02:00
Juergen Hoeller
2ade122543
Bypass serializable type wrapping if java.lang.Class not serializable
...
Issue: SPR-16992
2018-07-02 13:55:03 +02:00
Juergen Hoeller
4ff1e3e74b
Consistent abstract declaration for utility classes (plus polishing)
...
Issue: SPR-16968
2018-07-01 02:31:20 +02:00
Rossen Stoyanchev
e72f4ec501
Fix checkstyle error
2018-06-29 21:45:43 -04:00
Rossen Stoyanchev
d74e09a925
Polish MockClientHttpRequest
2018-06-29 17:37:45 -04:00
Rossen Stoyanchev
7f555785dd
Add getBodyAsString() to MockClientHttpRequest
...
Issue: SPR-16988
2018-06-29 17:34:23 -04:00
Rossen Stoyanchev
51ec7c6b4a
Add hook for customizing response cookie
...
Issue: SPR-16980
2018-06-29 18:15:52 -03:00
Rossen Stoyanchev
5ec8db1adc
Polish CookieWebSessionIdResolver
2018-06-29 18:15:52 -03:00
Rossen Stoyanchev
907a306ee2
Fix locally failing test in FlushingIntegrationTests
2018-06-29 18:15:52 -03:00
Damiano Albani
3165b3c024
Fix typo in Java doc
2018-06-29 18:12:43 -03:00
Juergen Hoeller
641039d85d
Polishing
2018-06-29 22:36:08 +02:00
Juergen Hoeller
e22466e9d5
Polishing
2018-06-29 19:44:15 +02:00
Juergen Hoeller
df6b01a329
Remove deprecated classes and methods from early 5.0.x phase
2018-06-29 19:44:08 +02:00
Juergen Hoeller
5b24040b5e
JtaAnnotationTransactionAspect configured by default (in aspectj mode)
...
Issue: SPR-16987
2018-06-29 19:43:38 +02:00
Juergen Hoeller
d58c09b89f
Up-to-date coverage of task executor and scheduler variants
...
Includes a clarification of ThreadPoolExecutor configuration options and a note on early AsyncConfigurer initialization.
Issue: SPR-16944
Issue: SPR-16945
2018-06-29 19:43:14 +02:00
Juergen Hoeller
71aee9211f
Upgrade to Mockito 2.19 and Mockito Kotlin 1.6
2018-06-28 18:02:24 +02:00
Juergen Hoeller
d34e6f7f70
Polishing
2018-06-28 18:02:07 +02:00
Juergen Hoeller
8ad5299f4a
Polishing
2018-06-28 17:12:29 +02:00
Juergen Hoeller
6f8a524eaa
Upgrade to Tomcat 9.0.10, RxJava 2.1.16, EclipseLink 2.7.2, Selenium 3.13
2018-06-28 14:52:35 +02:00
Juergen Hoeller
40efcc933c
Polishing
2018-06-28 14:51:33 +02:00
Juergen Hoeller
b68e692854
Conventions lazily retrieves shared ReactiveAdapterRegistry
...
Issue: SPR-16981
2018-06-28 14:47:52 +02:00
Juergen Hoeller
7a02e438e7
StringUtils.cleanPath retains plain pointer to current directory
...
Issue: SPR-16908
2018-06-28 14:15:16 +02:00
Juergen Hoeller
b6d95567e8
Explicit support for Hibernate Integrators on LocalSessionFactoryBean
...
Issue: SPR-16828
2018-06-28 14:15:16 +02:00
Juergen Hoeller
b0ece0e967
Remove hard configuration validation from SpringClassRule/MethodRule
...
Issue: SPR-16967
2018-06-28 14:15:16 +02:00
Juergen Hoeller
08e1c8cfaf
Fix FreeMarker escaping regression for messages and separators
...
Issue: SPR-16951
2018-06-28 14:15:16 +02:00
Juergen Hoeller
bac68c8d3f
StandardServletMultipartResolver accepts any HTTP method for multipart
...
Issue: SPR-16975
2018-06-28 14:15:16 +02:00
Juergen Hoeller
bf5fe46fa9
CachedIntrospectionResults completely traverses interface hierarchy
...
Issue: SPR-16978
2018-06-28 14:15:16 +02:00
Juergen Hoeller
81cb740e0a
New postProcessProperties variant on InstantiationAwareBeanPostProcessor
...
Allows for skipping the now-deprecated postProcessPropertyValues callback with its expensive PropertyDescriptor retrieval requirement. RequiredAnnotationBeanPostProcessor (which is dependent on postProcessPropertyValues) and the @Required annotation itself are also deprecated now: in favor of constructor injection (or afterPropertiesSet).
Issue: SPR-16918
2018-06-28 14:15:16 +02:00
Arjen Poutsma
794693525f
Polishing
2018-06-28 14:09:34 +02:00
Arjen Poutsma
a691065d05
Polishing
2018-06-28 11:27:30 +02:00
Arjen Poutsma
8202052b38
Introduce RouterFunction builder
...
This commit introduces RouterFunctions.Builder, a new way to build
router functions that does not require static imports, thus being more
discoverable and convenient.
Issue: SPR-16953
2018-06-28 11:23:38 +02:00
Phillip Webb
a89e716cc7
Use tabs rather than spaces in tests
...
Update tests to ensure that tabs are used instead of spaces. Also
consistently apply a new line at the end of each file.
Issue: SPR-16968
2018-06-28 10:28:44 +02:00
Phillip Webb
1c25cec44f
Polish test code
...
Polish a few issue identified when adding checkstyle to the
build. Although checkstyle is not enforcing rules on tests,
these are a few minor changes that are still worth making.
Issue: SPR-16968
2018-06-28 10:28:44 +02:00
Phillip Webb
81451aa800
Organize imports
...
Reorganize imports to ensure consistent ordering. This commit also
expands any `.*` static imports in favor of using fully-qualified
method references.
Issue: SPR-16968
2018-06-28 10:28:44 +02:00
Phillip Webb
b220d94cc2
Never use parenthesis for single lambda arguments
...
Update all lambdas that take a single argument so that parenthesis
are never used.
Issue: SPR-16968
2018-06-28 10:28:44 +02:00
Phillip Webb
5cedd0d5d4
Consistently use tabs rather than spaces
...
Update code that has accidentally used spaces instead of tabs.
Also remove all trailing whitespace.
Issue: SPR-16968
2018-06-28 10:28:44 +02:00
Phillip Webb
be85bd8e09
Don't use == when comparing strings
...
Fix a few places where `==` was accidentally used to compare
strings.
Issue: SPR-16968
2018-06-28 10:28:44 +02:00
Phillip Webb
13729364ab
Consistently use only one statement per line
...
Ensure that only one statement is used per line.
Issue: SPR-16968
2018-06-28 10:28:44 +02:00
Phillip Webb
ad6d183a06
Remove unneeded conditional logic
...
Update `ConversionUtils` to remove conditional logic that isn't
necessary.
Issue: SPR-16968
2018-06-28 10:28:44 +02:00
Phillip Webb
634f5c2792
Ensure when equals() is implemented so is hashCode()
...
Update classes that override `equals()` to ensure that they also
implement `hashCode()`.
Issue: SPR-16968
2018-06-28 10:28:44 +02:00
Phillip Webb
9de3689f63
Never use 'this.' when accessing loggers
...
Ensure that `this.` is never used when accessing loggers.
Issue: SPR-16968
2018-06-28 10:28:44 +02:00
Phillip Webb
0b53c1096a
Always use 'this.' when accessing fields
...
Ensure that `this.` is used consistently when accessing class
fields.
Issue: SPR-16968
2018-06-28 10:28:44 +02:00
Phillip Webb
eeebd51f57
Use consistent class design
...
Update all classes so that inner classes are always last. Also
ensure that utility classes are always final and have a private
constructor and make exceptions final whenever possible.
Issue: SPR-16968
2018-06-28 10:28:44 +02:00
Phillip Webb
0ad0f341bd
Don't use single letter catch variables
...
Update existing catch blocks to ensure that `ex` is always used
in preference to `e` or `t` as the variable name.
Issue: SPR-16968
2018-06-28 10:28:44 +02:00
Phillip Webb
8f9aa06dfe
Polishing AbstractBeanDefinition.equals
2018-06-28 10:28:44 +02:00
Phillip Webb
866e9d702e
Use consistent block style
...
Update all code to use a consistent block style.
Issue: SPR-16968
2018-06-28 10:28:44 +02:00
Phillip Webb
04a8c285df
Fix annotation styling issues
...
Update all annotations so that each is on its own line and
consistently use the short form (i.e. don't use `value=`) when
possible.
Issue: SPR-16968
2018-06-28 10:28:44 +02:00
Phillip Webb
e9d1b39aff
Apply consistent copyright header
...
Add copyright header to `package-info.java` files and fix a few
malformed headers on existing java files.
Issue: SPR-16968
2018-06-28 10:28:44 +02:00
Phillip Webb
c3a17dfd47
Ensure all files end with a newline
...
Update all files to ensure that they always end with a new line.
Issue: SPR-16968
2018-06-28 10:28:44 +02:00
Phillip Webb
e0480f75ac
Fix javadoc checkstyle issues
...
Fix checkstyle violations for javadoc.
Issue: SPR-16968
2018-06-28 10:28:44 +02:00
Phillip Webb
032096d699
Add checkstyle to build
...
Add checkstyle to the build to enforce Spring Framework coding
conventions. Rule suppressions are used for several classes where
relaxing the rules makes more sense than fixing them.
Issue: SPR-16968
2018-06-28 10:28:44 +02:00
Phillip Webb
d8ef6b7c74
Revert "Fix Eclipse import order"
...
This reverts commit c14f83e727 .
2018-06-26 11:30:54 -07:00
Sam Brannen
c14f83e727
Fix Eclipse import order
2018-06-26 17:34:25 +03:00
Phillip Webb
9477915dbf
Update eclipse setting and instructions
...
Refine project specific eclipse settings and update the
instructions with details of how they can be applied.
2018-06-25 17:56:53 -07:00
Napster
8aa6e5bfea
Undertow WebSocket sessions use shared ByteBufferPool
...
Issues: SPR-16957
2018-06-25 17:46:25 -03:00
Rossen Stoyanchev
7ccd2b024d
Refine logging for async requests
...
Issue: SPR-16898
2018-06-25 14:42:29 -03:00
Juergen Hoeller
847202c8f8
MimeTypeUtils lazily initializes SecureRandom for multipart boundary
...
Issue: SPR-16974
2018-06-25 18:12:43 +02:00
Juergen Hoeller
2a15962d7f
WebHttpHandlerBuilder retains ApplicationContext in copy constructor
...
Issue: SPR-16972
2018-06-25 18:12:12 +02:00
Sam Brannen
853d30df26
Complete the upgrade to Gradle 4.8.1
...
This commit upgrades the gradle-wrapper.jar.
Issue: SPR-16475
2018-06-24 18:16:52 +03:00
Rossen Stoyanchev
900bc8a2e3
Logging improvements for WebFlux
...
Issue: SPR-16898
2018-06-22 22:44:24 -04:00
Juergen Hoeller
eaffcbe3be
Upgrade to Gradle 4.8.1
...
Includes Kotlin 1.2.50, RxJava 2.1.15 and Protobuf 3.6.
Issue: SPR-16475
2018-06-22 22:49:12 +02:00
Rossen Stoyanchev
69d8f9d3ab
Option to disable logging request details
...
Issue: SPR-16898
2018-06-19 16:53:37 -04:00
Sam Brannen
cafb5033e2
Polishing
2018-06-19 13:50:13 +03:00
Brian Clozel
4a26f93a0d
WebClient writes Content-Length for Mono bodies
...
In SPR-16892, the `EncoderHttpMessageWriter` has been improved to write
`"Content-Length"` HTTP response headers if the response body is of type
`Mono` (i.e. the actual content length is easily accessible without
buffering a possibly large response body). That change was relying on
the fact that the server side is using a `ChannelSendOperator` to delay
the writing of the body until the first signal is received.
This strategy is not effective on the client side, since no such channel
operator is used for `WebClient`. This commit improves
`EncoderHttpMessageWriter` and delays, for `Mono` HTTP message bodies
only, the writing of the body so that we can write the
`"Content-Length"` header information once we've got the body resolved.
Issue: SPR-16949
2018-06-19 11:51:45 +02:00
Stephane Nicoll
a774305cfc
Merge pull request #1860 from yuansuye:master
...
* pr/1860:
Fix broken link to CONTRIBUTING.md
2018-06-19 09:07:45 +02:00
Ryan Yin
df38af361c
Fix broken link to CONTRIBUTING.md
...
Closes gh-1860
2018-06-19 09:07:07 +02:00
Rossen Stoyanchev
c97acbbd8d
Fix documentatio issue
2018-06-18 20:29:35 -04:00
Rossen Stoyanchev
03c305136d
Fix failing tests
2018-06-18 20:20:32 -04:00
Rossen Stoyanchev
28a5c3009e
Improve DEBUG/TRACE logging for Spring MVC
...
Issue: SPR-16898
2018-06-18 18:33:11 -04:00
Juergen Hoeller
003d643adc
Consistent support for new JsonMappingException wording in Jackson 2.9
...
Issue: SPR-16947
2018-06-17 21:42:20 +02:00
Mark Chesney
e4666c17ec
Support new exception message wording since Jackson 2.9
...
The wording changed from "Can not find" to "Cannot find" via PR #1682
Issues: SPR-16947
2018-06-17 13:27:20 +02:00
Sam Brannen
bea0e399b8
Polish profile expression support
...
Issue: SPR-12458
2018-06-17 00:15:18 +03:00
Sam Brannen
4184ebe799
Polish profile expression support
...
Issue: SPR-12458
2018-06-16 21:40:22 +03:00
Juergen Hoeller
38f9a7b072
FileSystemResource supports java.nio.file.Path based setup
...
Issue: SPR-16833
2018-06-15 22:12:14 +02:00
Juergen Hoeller
bb6ab5dc91
OS-independent alphabetical sorting of directory content
...
Issue: SPR-16838
2018-06-15 22:09:29 +02:00
Juergen Hoeller
51091f2242
Suppress deprecation warning in DefaultBeanDefinitionDocumentReader
...
Issue: SPR-12458
2018-06-15 22:09:23 +02:00
Stephane Nicoll
1f3b4f1863
Polish "Add profile expression support"
...
Issue: SPR-12458
2018-06-15 16:01:16 +02:00
Phillip Webb
e2623b7d35
Add profile expression support
...
Allow the `Environment` to accept a generic `Profiles` interface which
can support more complex matching rules. The previous
`acceptsProfiles(String...)` method now uses `Profiles.of` which
supports basic profile expressions such as "(a | b) & !c"
Issue: SPR-12458
2018-06-15 16:01:16 +02:00
Rossen Stoyanchev
58cce615f5
MvcUriComponentsBuilder is aware of path prefixes
...
Issue: SPR-16336
2018-06-14 22:11:53 -04:00
Rossen Stoyanchev
e6fef9555d
Check all HandlerMapping beans for named mappings
...
Related to (but not required by) SPR-16336.
2018-06-14 22:07:06 -04:00
Rossen Stoyanchev
dad9ed83b7
Polish MvcUriComponentsBuilder
2018-06-14 22:07:06 -04:00
Sam Brannen
e8bd16ab6e
Polish Eclipse/STS Project Import Guide
2018-06-15 01:26:05 +03:00
Sam Brannen
802763d26f
Reintroduce suppression of deprecation warning
2018-06-15 00:43:21 +03:00
Sam Brannen
8027e1f109
Remove obsolete suppression of deprecation warning
2018-06-14 22:48:34 +03:00
Sam Brannen
4ae4788e93
Delete unused import
2018-06-14 22:46:10 +03:00
Rossen Stoyanchev
ebdcc015a4
Correctly set maxAge and expires in ResponseCookie
...
Issue: SPR-16940
2018-06-14 13:07:17 -04:00
Brian Clozel
09d9450154
Add SameSite support in WebFlux SESSION cookies
...
This commit adds support for the "SameSite" attribute in response
cookies. As explained in rfc6265bis, this attribute can be used to limit
the scope of a cookie so that it can't be attached to a request unless
it is sent from the "same-site".
This feature is currently supported by Google Chrome and Firefox, other
browsers will ignore this attribute.
This feature can help prevent CSRF attacks; this is why this commit adds
this attribute by default for SESSION Cookies in WebFlux.
See: https://tools.ietf.org/html/draft-ietf-httpbis-rfc6265bis
Issue: SPR-16418
2018-06-14 11:39:03 +02:00
Juergen Hoeller
1e5f8cc232
FilePart and MultipartFile provide transferTo(Path) variant
...
Also, ZeroCopyHttpOutputMessage provides writeWith(Path, int, int), enforcing that variant as the implementation target in 5.1 (analogous to FilePart).
Issue: SPR-16925
2018-06-14 00:42:36 +02:00
Juergen Hoeller
c38cb43527
MethodParameter strictly asserts parameter index -1 for return type
...
Issue: SPR-16889
2018-06-14 00:42:19 +02:00
Rossen Stoyanchev
afa45950ff
Polish ExchangeFilterFunction[s]
2018-06-13 17:14:49 -04:00
Rossen Stoyanchev
0b61c748f6
Protected methods for serializing form content
...
Issue: SPR-16855
2018-06-13 17:14:49 -04:00
Rossen Stoyanchev
278881b8df
Polish form writer and converter
2018-06-13 17:05:34 -04:00
Juergen Hoeller
0058a1f52d
Upgrade to Jackson 2.9.6
2018-06-13 22:04:32 +02:00
Juergen Hoeller
0dc434b35e
Polishing
2018-06-13 22:04:10 +02:00
Juergen Hoeller
3fc8ec498c
MockHttpServletRequest returns a single InputStream or Reader
...
Issue: SPR-16505
Issue: SPR-16499
2018-06-13 22:03:16 +02:00
Juergen Hoeller
9aed9bf823
Allow for custom ScheduledTaskRegistrar and/or ScheduledMethodRunnable
...
Issue: SPR-16834
Issue: SPR-16812
2018-06-13 22:03:01 +02:00
Rossen Stoyanchev
0078f46779
Use reflection for JdkFlowAdapter
...
To avoid compiler issues on Eclipse.
2018-06-13 09:38:54 -04:00
Rossen Stoyanchev
928b7804c8
Add example of explicit handler method registration
...
Issue: SPR-16336
2018-06-12 15:23:45 -04:00
Dave Syer
39af1b2281
Add instructions for importing into Eclipse using Buildship
2018-06-12 14:11:27 -04:00
Rossen Stoyanchev
0c669def4f
Minor polishing for URI encoding docs
2018-06-12 10:14:51 -04:00
Juergen Hoeller
0b64bcd319
Remove outdated Servlet environment constraints from annotation javadoc
...
Issue: SPR-16936
2018-06-12 11:28:13 +02:00
Allon Mureinik
2573a543b2
SPR-16936 Fix PathVariable javadoc
...
@PathVariable's javadoc states that it supports MultiValueMap
parameters (introduced by commit df0902), but by reading through the
code, that does not seem to be the case (compare, e.g.,
PathVariableMapMethodArgumentResolver to
RequestParamMapMethodArgumentResolver).
Moreover, parsing MultipleValueMap is done according to the ";"
character, and placing such a character in a path (e.g., consider
something like "/app/{param}/show" would just break the path.
This patch fixes PathVariable's javadoc by removing the mention of
MultiValueMap.
2018-06-12 11:12:57 +02:00
Brian Clozel
05ff8b722d
Fix ResourceRegion HttpMessageConverter write checks
...
This commit fixes the write checks for
`ResourceRegionHttpMessageConverter`, which was previously not checking
properly the parameterized type (e.g. in case of a `List<Something>`).
Issue: SPR-16932
2018-06-11 22:53:55 +02:00
Rossen Stoyanchev
ef41dcf687
Add HTTP caching to WebFlux section
...
Issue: SPR-16395
2018-06-11 16:39:12 -04:00
Rossen Stoyanchev
4a435c12f2
Polish Spring MVC docs on HTTP Caching
...
Issue: SPR-16395
2018-06-11 16:39:12 -04:00
Juergen Hoeller
59bd21d2fc
Restore xjc 2.2.11 (since 2.3.0.1 also breaks with "xjc failed" on CI)
2018-06-11 22:14:21 +02:00
Juergen Hoeller
9c36b53833
Upgrade to JAXB 2.3.0.1, Aalto XML 1.1, Rome 1.10
2018-06-11 22:01:51 +02:00
Juergen Hoeller
0777a80efe
Polishing
...
(cherry picked from commit a2765c0 )
2018-06-11 19:17:57 +02:00
Juergen Hoeller
4aafbe5a84
Remove outdated javadoc references to SpEL lambda functions
...
Issue: SPR-16930
(cherry picked from commit 78d3164 )
2018-06-11 19:16:14 +02:00
Brian Clozel
a5cd01a4c8
Restrict HTTP methods on Reactive HiddenHttpMethodFilter
...
This commit restricts the allowed HTTP methods on HiddenHttpMethodFilter
(Reactive variant) to the following: PUT, DELETE, PATCH.
This filter is meant to be used to simulate those methods from HTML
forms sent by browsers, so no other methods are allowed.
Issue: SPR-16836
2018-06-11 18:53:23 +02:00
Brian Clozel
f64fa3dea1
Restrict HTTP methods on Servlet HiddenHttpMethodFilter
...
This commit restricts the allowed HTTP methods on HiddenHttpMethodFilter
(Servlet variant) to the following: PUT, DELETE, PATCH.
This filter is meant to be used to simulate those methods from HTML
forms sent by browsers, so no other methods are allowed.
Issue: SPR-16836
2018-06-11 18:53:23 +02:00
Rossen Stoyanchev
d196cdc5cd
Update docs on @SendTo and @SendToUser
...
1. Explain that both can be used on the same method
2. Better describe semantics for class vs method level
3. General improvements
Issue: SPR-16336
2018-06-11 12:42:55 -04:00
Rossen Stoyanchev
f4bffea739
Support for @SendTo and @SendToUser for same method
...
Issue: SPR-16891
2018-06-11 12:42:55 -04:00
Rossen Stoyanchev
7a70f7c5d8
Polish @SendTo test
2018-06-11 12:42:55 -04:00
Rossen Stoyanchev
a31204938a
Getter for DispatcherSerlvet in MockMvc
...
Issue: SPR-16924
2018-06-11 12:42:55 -04:00
Brian Clozel
417354da8a
Remove dependency management noise from POMs
...
Prior to this commit, the generated POMs for Spring Framework modules
would contain unneeded/harmful information from the Spring Framework
build:
1. The BOM imports applied to each module by the dependency
management plugin, for example for Netty or Reactor Netty.
Spring should not export that opinion to its POMs.
2. The exclusion of "org.slf4:jcl-over-slf4j" from *all* dependencies,
which made the POMs much larger than necessary and suggested to
developers that they should exclude it as well when using all those
listed dependencies. In fact, only Apache Tiles currently brings that
transitively.
This commit removes that information from the POMs.
The dependencyManagement Gradle plugin is disabled for POM generation
and we manually resolve the dependency versions during the generation
phase.
The Gradle build is streamlined to exclude "org.slf4:jcl-over-slf4j"
only when necessary.
Issue: SPR-16893
2018-06-11 15:57:54 +02:00
Juergen Hoeller
7bce7504c7
JdbcTemplate consistently exposes first value of equally named columns
...
Issue: SPR-16578
2018-06-11 14:17:03 +02:00
Juergen Hoeller
b790bd1fd6
LinkedCaseInsensitiveMap explicitly implements put/computeIfAbsent
...
Issue: SPR-16926
2018-06-11 14:10:12 +02:00
Juergen Hoeller
646d7f9e57
Unit tests for @MessageExceptionHandler cause and error resolution
...
Issue: SPR-16912
2018-06-11 13:44:43 +02:00
Stephane Nicoll
fa82684c08
Merge pull request #1848 from cheese10yun:master
...
* pr/1848:
Prevent instantiation of AnnotatedElementUtils
2018-06-11 08:34:11 +02:00
Yun
28e402bc76
Prevent instantiation of AnnotatedElementUtils
...
Closes gh-1848
2018-06-11 08:32:03 +02:00
Juergen Hoeller
65a6a04853
Upgrade to Jetty 9.4.11
2018-06-10 23:59:28 +02:00
Juergen Hoeller
0c8cfa05b5
AbstractMethodMessageHandler processes Error as MessageHandlingException
...
Issue: SPR-16912
2018-06-10 23:59:07 +02:00
Juergen Hoeller
e2ccd55d14
ReflectivePropertyAccessor uses computeIfAbsent for cache computation
...
Issue: SPR-16882
2018-06-10 23:56:32 +02:00
Juergen Hoeller
b71795ba36
Restore original DefaultLifecycleProcessor behavior for the time being
...
Issue: SPR-16901
2018-06-10 23:52:27 +02:00
Rossen Stoyanchev
86c861516d
Accept Predicate instead of HandlerTypePredicate
...
Issue: SPR-16336
2018-06-08 15:32:07 -04:00
Brian Clozel
0092653d42
Fix JDK9 build after Groovy 2.5 upgrade
...
After the Groovy 2.5 upgrade, the Spring Framework build on JDK9 hit
GROOVY-8631. Adding the relevant `jax-api` dependency to the module
didn't fix this issue. The Groovy release notes mention the use of the
`--add-modules` JVM flag, but this is not an option for this build which
should run on JDK8 -> JDK11.
This commit changes the dependency from `groovy-all` to more focused
dependencies on Groovy in the `spring-beans` and `spring-context`
modules. This change seems to avoid the automatic loading of Groovy
enhancements to JAXB (shipped with `groovy-xml`).
See:
* http://groovy-lang.org/releasenotes/groovy-2.5.html#Groovy2.5releasenotes-Knownissues
* https://issues.apache.org/jira/browse/GROOVY-8631
Issue: SPR-15407
2018-06-08 13:37:44 +02:00
Sebastien Deleuze
ac37b678a3
Remove JSONP support
...
CORS is now widely supported and should be used instead for cross-domain
requests.
Issue: SPR-16914
2018-06-08 12:15:48 +02:00
Rossen Stoyanchev
19dc981685
Path prefixes for groups of controllers
...
Issue: SPR-16336
2018-06-07 18:18:42 -04:00
Rossen Stoyanchev
31159a8506
Extract HandlerTypePredicate from ControllerAdviceBean
...
Issue: SPR-16336
2018-06-07 18:18:42 -04:00
Juergen Hoeller
25559b9e44
Polishing
2018-06-06 21:31:24 +02:00
Juergen Hoeller
7ece0e219e
Correct code example for YamlProcessor.setDocumentMatchers
...
Issue: SPR-16849
2018-06-06 21:27:00 +02:00
Juergen Hoeller
bfcc1a1f6a
ReflectivePropertyAccessor caches sorted methods per class
...
Issue: SPR-16882
2018-06-06 21:25:53 +02:00
Juergen Hoeller
6cf197864c
DefaultLifecycleProcessor properly handles count for dependent beans
...
Issue: SPR-16901
2018-06-06 21:25:26 +02:00
Juergen Hoeller
0941081b0a
Upgrade to HSQLDB 2.4.1, Derby 10.14.2.0, HtmlUnit 2.31, Selenium 3.12
2018-06-06 21:24:53 +02:00
Rossen Stoyanchev
72b1d4c648
Remove explicit references to Reactor Netty version
...
...now that 0.8 is also listed in the Reactor bom.
Issue: SPR-16387
2018-06-06 14:35:54 -04:00
Rossen Stoyanchev
fd946b8157
Protected getContentType in DecoderHttpMessageReader
...
Issue: SPR-16856
2018-06-05 16:23:21 -04:00
Rossen Stoyanchev
42b4a2feef
Exapmle of configuring heartbeats for simple broker in docs
...
Issue: SPR-16905
2018-06-05 12:16:29 -04:00
Brian Clozel
522f71b907
Update Gradle plugins
2018-06-05 15:25:40 +02:00
Rossen Stoyanchev
3acb96efd0
CachingResourceResolver varies by known codings only
...
Issue: SPR-16381
2018-06-04 23:30:35 -04:00
Rossen Stoyanchev
010352163b
Eliminate the need for Encoder#getContentLength
...
Issue: SPR-16892
2018-06-04 15:48:47 -04:00
Rossen Stoyanchev
124d4c833c
Support for Servlet request params with HTTP DELETE
...
This commit adds FormContentFilter, which is the same as the
HttpPutFormContentFilter but also supports DELETE.
The HttpPutFormContentFilter is now deprecated.
Issue: SPR-16874
2018-06-04 15:48:47 -04:00
Stephane Nicoll
7396309dba
Merge pull request #1849 from jasssonpet:patch-1
...
* pr/1849:
Fix format typo in webmvc.adoc
2018-06-04 20:56:33 +02:00
Jason Zhekov
6f17c28246
Fix format typo in webmvc.adoc
...
Closes gh-1849
2018-06-04 20:56:09 +02:00
Sebastien Deleuze
f2ee18493f
Make RouterFunctionDsl extensible
...
Issue: SPR-16897
2018-06-04 15:35:25 +02:00
Stephane Nicoll
f1871f9e3f
Fix faulty BeanPostProcessorChecker logs with @EnableCaching
...
Issue: SPR-16896
2018-06-04 14:51:14 +02:00
Sam Brannen
2390695804
Upgrade to Gradle 4.8
2018-06-04 14:03:27 +02:00
Sam Brannen
5811d13d6c
Upgrade to Gradle 4.7
2018-06-02 18:23:08 +02:00
Sam Brannen
237c0defa7
Use built-in Gradle wrapper task
2018-06-02 16:37:45 +02:00
Sam Brannen
ce002b450a
Upgrade to Groovy 2.5 GA
...
Issue: SPR-15407
2018-06-02 16:37:02 +02:00
Sebastien Deleuze
b71d0eeec9
Fix Kotlin bean DSL conditional handling
...
Issue: SPR-16412
2018-06-01 14:40:27 +02:00
Juergen Hoeller
356bfe6e2e
Upgrade to Joda-Time 2.10
2018-05-31 23:35:15 +02:00
Rossen Stoyanchev
a3216432b5
Polish
...
Issue: SPR-16387
2018-05-31 15:38:30 -04:00
Violeta Georgieva
ffbc75ae47
Upgrade to Reactor Netty 0.8
...
Issue: SPR-16387
2018-05-31 15:37:39 -04:00
Stephane Nicoll
61ffbe5554
Merge pull request #1844 from violetagg:fixes-in-docs
...
* pr/1844:
Fix code examples for WebFlux functional endpoints
2018-05-31 15:19:10 +02:00
Violeta Georgieva
aed63d38b2
Fix code examples for WebFlux functional endpoints
...
Closes gh-1844
2018-05-31 15:18:36 +02:00
Sebastien Deleuze
a7a29a8226
Revisit PropertyResolver Kotlin extensions
...
Issue: SPR-16883
2018-05-31 12:20:37 +02:00
Stephane Nicoll
ab9b575da6
Merge pull request #1843 from izeye:patch-6
...
* pr/1843:
Polish doc
2018-05-31 10:20:10 +02:00
Johnny Lim
9c61bb6cdd
Polish doc
...
Closes gh-1843
2018-05-31 10:19:57 +02:00
Juergen Hoeller
1b728fb244
Polishing
2018-05-30 11:10:37 +02:00
Juergen Hoeller
0c52699102
Revised example code (including correct visibility for execute method)
2018-05-30 11:10:29 +02:00
Juergen Hoeller
f3e860e8f1
Resource handler tests expect status 404 for directory in jar file
...
Issue: SPR-16832
2018-05-30 00:31:35 +02:00
Juergen Hoeller
616a40adb6
ClassPathResource.isReadable() returns false for content length 0
...
Issue: SPR-16832
2018-05-29 22:31:47 +02:00
Juergen Hoeller
8d94d20770
Upgrade to Hibernate ORM 5.3.1 and Undertow 2.0.9
2018-05-29 21:53:06 +02:00
Juergen Hoeller
b39ce80c87
Doc: @EnableScheduling needs to be declared per application context
...
Issue: SPR-16852
2018-05-29 21:52:51 +02:00
Juergen Hoeller
c75423216c
AbstractRequestLoggingFilter.isIncludeHeaders() declared as protected
...
Issue: SPR-16881
2018-05-29 21:52:31 +02:00
Juergen Hoeller
74fcdea2d9
SimpleAliasRegistry logs info message for alias overriding
...
Issue: SPR-16871
2018-05-29 21:51:33 +02:00
Juergen Hoeller
46a89d9534
Restore lenient null return value for ConditionContext.getBeanFactory()
...
Includes nullable return value for getClassLoader() with corresponding notes in applicable javadoc.
Issue: SPR-16866
2018-05-29 21:51:06 +02:00
Juergen Hoeller
5bbeadec0c
Detect nested configuration classes even for empty outer classes
...
Issue: SPR-16839
2018-05-29 21:47:53 +02:00
Juergen Hoeller
69f14a2038
ClassPathResource.isReadable() checks InputStream (for jar directories)
...
Resource.isReadable() is defined to semantically imply exists() now.
Issue: SPR-16832
2018-05-29 21:47:33 +02:00
Juergen Hoeller
8593fec22c
Avoid ConstantConditions warnings suppression (plus related polishing)
...
Issue: SPR-15756
2018-05-29 21:47:10 +02:00
Arjen Poutsma
8c30b8e628
Fix parent path variables in nested route functions
...
This commit fix an issue where path variables in a nested parent
RouterFunction were not committed to the request attributes.
Issue: SPR-16868
2018-05-29 15:48:31 +02:00
nkjackzhang
e57d8e1e60
Remove extra backquote
2018-05-29 14:20:51 +02:00
Sebastien Deleuze
be416ef9c4
Polish BeanDefinitionDsl
...
Issue: SPR-16412
2018-05-29 09:34:35 +02:00
Sebastien Deleuze
406f6ec74d
Fix PropertyResolverExtensions.kt location
2018-05-28 15:51:22 +02:00
Rossen Stoyanchev
2acf91a438
Polish
2018-05-26 09:24:23 -04:00
Rossen Stoyanchev
3ede3a4b34
Extension point in HttpMessageConverterExtractor
2018-05-25 13:45:10 -04:00
Rossen Stoyanchev
c7c3e5585b
X-Forwarded-Ssl is listed in ForwardedHeaderFilter
...
Issue: SPR-16863
2018-05-25 13:39:37 -04:00
Rossen Stoyanchev
d77797f42c
Improve readability of Body[Inserters|Extractors]
2018-05-25 13:32:00 -04:00
Stephane Nicoll
9fb2fd66c0
Merge pull request #1836 from garyrussell:jmsdoc
...
* pr/1836:
Fix JMS Doc typo
2018-05-25 16:31:50 +02:00
Gary Russell
c4efe79d5a
Fix JMS Doc typo
...
There is no such class `ReplyQosSettings`.
Closes gh-1836
2018-05-25 16:31:26 +02:00
Juergen Hoeller
836a09d5c0
Upgrade to Woodstox 5.1, XMLUnit 2.6, Gson 2.8.5
2018-05-25 00:18:06 +02:00
Rossen Stoyanchev
3eac2dd31e
Support X-Forwarded-Ssl
...
Issue: SPR-16863
2018-05-24 16:14:12 -04:00
Rossen Stoyanchev
85e8634810
Properly initialize URI/Matrix vars w/ urlDecode=false
...
Issue: SPR-16867
2018-05-24 15:08:39 -04:00
Rossen Stoyanchev
2a993bf9ff
Respect async request timeout of -1 in MockMvc
...
When falling back on the timeout associated with the async request,
a value of -1 must be treated as: never time out.
Issue: SPR-16869
2018-05-24 12:33:19 -04:00
Rossen Stoyanchev
82480a7908
Update docs on WebClient filters
2018-05-24 07:16:54 -04:00
Rossen Stoyanchev
ed439eefcf
Minor update to STOMP chapter
...
Issue: SPR-16681
2018-05-23 21:49:25 -04:00
Rossen Stoyanchev
fbf25c536d
ChannelInterceptor default methods + deprecate adapter
2018-05-23 21:48:19 -04:00
Rossen Stoyanchev
eed663ff7e
Fix error in WebFlux chapter on static resources
...
Issue: SPR-16864
2018-05-23 21:27:02 -04:00
Rossen Stoyanchev
72022899de
Polish Forwarded header support
2018-05-23 21:23:23 -04:00
Rossen Stoyanchev
1e4a3a2370
Return SslInfo only if X509Certificate[] present
...
Issue: SPR-16842
2018-05-23 21:23:23 -04:00
Juergen Hoeller
cb80eac9d7
Upgrade to RxJava 2.1.14 and Groovy 2.5 RC3
2018-05-24 00:58:45 +02:00
Rossen Stoyanchev
d035593562
Update @RequestParam Javadoc and remove Portlet mentions
2018-05-23 11:52:14 -04:00
Rossen Stoyanchev
b472d192f4
Improve support for caching encoded resources
...
The key in CachingResourceResolver now includes the "Accept-Encoding"
request header cleaned to exclude "*", "identity", and parameters, and
also sorted alphabetically.
For encoded resources the response now includes a response header with
"Vary: Accept-Encoding".
Issue: SPR-16381
2018-05-23 09:17:21 -04:00
Rossen Stoyanchev
9274de390a
Polish resource handling tests
2018-05-23 09:17:21 -04:00
Rossen Stoyanchev
f121aa5e31
Immutable Resource[Resolver|Transformer]Chains
...
Issue: SPR-16862
2018-05-23 09:17:21 -04:00
Rossen Stoyanchev
5207672b3f
Configurable support for static resource encodings
...
The new EncodedResourceResolver is a generalized version of
GzipResourceResolver that can be configured to support different
content codings, by "br" and "gzip".
GzipResourceResolver is now deprecated.
Issue: SPR-16381
2018-05-23 09:17:21 -04:00
Sebastien Deleuze
3410155875
Upgrade to Dokka 0.9.17
2018-05-22 17:42:55 +02:00
Rossen Stoyanchev
9b496b1264
CodecConfigurer internal refactoring
...
Improve how HTTP message writers are obtained for general use vs for
multipart requests.
2018-05-21 21:10:44 -04:00
Rossen Stoyanchev
6e5273f08e
Polish CodecConfigurer support classes
...
Functionally equivalent updates to package private classes to improve
the code and make it easier to understand.
2018-05-21 21:09:42 -04:00
Rossen Stoyanchev
1f8476aaf3
Add missing @param
2018-05-21 21:09:29 -04:00
Stephane Nicoll
36f8d49c4a
Polish
2018-05-19 10:32:25 +02:00
Rossen Stoyanchev
192c7a5627
WebSession to WebSocketSession attribute passing
...
This commit makes it possible to pass attributes from the WebSession of
a handshake request to the WebSocketSession, by configuring a
Predicate<String> on HandshakeWebSocketService.
Issue: SPR-16212
2018-05-18 21:32:46 -04:00
Rossen Stoyanchev
9074828478
Add attributes to WebFlux WebSocketSession
...
Issue: SPR-16212
2018-05-18 21:32:46 -04:00
Rossen Stoyanchev
e043481a26
STOMP client supports setting accept-version
...
Issue: SPR-16844
2018-05-18 21:32:46 -04:00
Rossen Stoyanchev
592dc628d5
Use specific XSD types in spring-websocket.xsd
...
Issue: SPR-16531
2018-05-18 21:32:46 -04:00
Rossen Stoyanchev
d58888777f
Polish ReactiveAdapterRegisry
2018-05-18 21:32:46 -04:00
Juergen Hoeller
285eb94a03
Upgrade to Hibernate Validator 6.0.10
2018-05-18 22:22:12 +02:00
Juergen Hoeller
6710291bbd
Polishing
2018-05-18 22:21:33 +02:00
Juergen Hoeller
d9c63182d9
MapSqlParameterSource.addValue declares nullable value parameter
...
Issue: SPR-16843
2018-05-18 22:20:29 +02:00
Juergen Hoeller
5b3bbad6a0
ConcurrentModel.addAttribute javadoc: null value not supported
...
Issue: SPR-16831
2018-05-18 22:20:08 +02:00
Rossen Stoyanchev
fbd12e9d16
Support for SslInfo in ServerHttpRequest#mutate
...
Issue: SPR-16830
2018-05-17 17:27:52 -04:00
Rossen Stoyanchev
ade2eab169
Polish WebFlux WebSocket docs
...
Issue: SPR-16820
2018-05-17 10:02:54 -04:00
Arjen Poutsma
b03905e2b0
Improve toString for filtered router function
...
Issue: SPR-16829
2018-05-17 12:32:57 +02:00
Rossen Stoyanchev
543f190239
Expand WebFlux docs with WebSocketHandler examples
...
Issue: SPR-16820
2018-05-16 21:30:31 -04:00
Rossen Stoyanchev
37b0ed9fcb
Improve TCP connection info logging.
...
After the recent changes to expose configuring TcpOperations, it no
longer makes sense to automatically log the relayHost/Port since that's
mutually exclusive with a custom TcpOperations.
Instead we delegate to TcpOperations.toString().
Issue: SPR-16801
2018-05-16 11:40:51 -04:00
Rossen Stoyanchev
4ff4d5a181
Allow client-side use of BodyExtractors#toFormData
...
Issue: SPR-16804
2018-05-16 10:41:50 -04:00
Rossen Stoyanchev
020c6c0102
Polish: remove Javadoc tags from spring-websocket.xsd
2018-05-16 10:18:01 -04:00
Rossen Stoyanchev
29158aa79a
Expose timeToFirstMessage in Java/XML config
...
Issue: SPR-16531
2018-05-16 10:03:57 -04:00
Rossen Stoyanchev
18854ee544
Polish: simplify ControllerMethodResolver initialization
2018-05-16 10:03:57 -04:00
Arjen Poutsma
7424ca5790
Improve toString for query param and path extension predicates
...
Issue: SPR-16829
2018-05-16 11:14:21 +02:00
Juergen Hoeller
765d18eb94
Revised code examples for stored procedure type declarations
...
Issue: SPR-16811
2018-05-16 00:46:57 +02:00
Juergen Hoeller
009824598c
SchedulerFactoryBean triggers shutdown after registration failure
...
Issue: SPR-16816
2018-05-16 00:45:33 +02:00
Juergen Hoeller
3c8c99664f
Query termination for JPA 2.1 StoredProcedureQuery.execute() method
...
Issue: SPR-16826
2018-05-16 00:44:52 +02:00
Juergen Hoeller
bba5dcaab3
AspectJExpressionPointcut evaluates interface method on proxy as well
...
Issue: SPR-16803
2018-05-16 00:43:51 +02:00
Sebastien Deleuze
265960f09c
Add StatusResultMatchers.isEqualTo Kotlin extension
...
Issue: SPR-16429
2018-05-15 15:37:47 +02:00
Sebastien Deleuze
2c85be333c
Filter synthetic in ReflectionUtils#USER_DECLARED_METHODS
...
Issue: SPR-16823
2018-05-15 14:58:50 +02:00
Juergen Hoeller
e0ccbcbb66
Upgrade to Hibernate ORM 5.3 GA
...
Issue: SPR-16303
2018-05-15 12:33:33 +02:00
Sebastien Deleuze
bdfee3417e
Polishing
2018-05-15 10:45:20 +02:00
Eddú Meléndez
48c3fa9908
Add visibility support to Jackson2ObjectMapperBuilder
...
Issue: SPR-16411
2018-05-15 10:45:20 +02:00
Rossen Stoyanchev
7fd0cac6f2
Include FormHttpMessageReader in client codecs
...
Issue: SPR-16804
2018-05-14 23:16:36 -04:00
Rossen Stoyanchev
3af5f00ee7
UnsupportedMediaType[Status]Exception reports body type
...
Issue: SPR-16805
2018-05-14 23:16:36 -04:00
Rossen Stoyanchev
395792b302
Produces media types cleared prior to error handling
...
Issue: SPR-16318
2018-05-14 23:16:36 -04:00
Juergen Hoeller
b3b233b43a
Upgrade to Groovy 2.5 RC2
...
Includes upgrade to Netty 4.1.25, Undertow 2.0.7, Hibernate ORM 5.1.14.
Issue: SPR-15407
2018-05-15 01:02:08 +02:00
Rossen Stoyanchev
6cf6d8834c
List OPTIONS in OPTIONS responses for @RequestMapping
...
Issue: SPR-16513
2018-05-14 09:05:03 -04:00
Rossen Stoyanchev
f7d60b7f58
Add getResource to MultipartFile
...
Issue: SPR-16808
2018-05-14 09:04:33 -04:00
Rossen Stoyanchev
ab6a6f4e17
Merge multipart and query param values
...
DefaultMultipartHttpServletRequest always returned mulitpart parameter
values only rather than aggregating with query parameters, which
contradicts with Servlet spec, section 3.1, and is inconsistent with
StandardMultipartHttpServletRequest.
Issue: SPR-16590
2018-05-14 09:03:55 -04:00
Rossen Stoyanchev
23001a6c3d
Update WebFlux RequestPart tests
...
Issue: SPR-16621
2018-05-14 09:03:14 -04:00
Sebastien Deleuze
ed97e14c7a
Update Kotlin refdoc with the new tutorial
2018-05-14 10:55:42 +02:00
Rossen Stoyanchev
5cee607f28
WebFlux @RequestPart support for List and Flux arguments
...
The resolver now supports List<T>, Flux<T>, and List<Part>.
Issue: SPR-16621
2018-05-11 18:38:29 -04:00
Rossen Stoyanchev
15182b29a4
Add MockWebSession for use with MockServerWebExchange
...
Issue: SPR-16772
2018-05-11 10:53:28 -04:00
Rossen Stoyanchev
7f954ebc32
Inject UriComponentsBuilder relative to webapp root
...
Issue: SPR-16813
2018-05-11 09:52:02 -04:00
Rossen Stoyanchev
4da43de7e1
Remove individual detection of forwarded headers
...
This commit removes all places where forwarded headers are checked
implicitly, on an ad-hoc basis.
ForwardedHeaderFilter is expected to be used instead providing
centralized control over using or discarding such headers.
Issue: SPR-16668
2018-05-11 09:31:39 -04:00
Rossen Stoyanchev
82a8e42ff9
Correct coordinates for Reactor Netty in STOMP chapter
...
Issue: SPR-16802
2018-05-10 16:44:27 -04:00
Rossen Stoyanchev
d3f3b41f52
MockHttpServletResponse writer sets committed flag
...
Issue: SPR-16683
2018-05-10 16:22:54 -04:00
Rossen Stoyanchev
79e809be24
Public RequestCallback/ResponseExtractor factory methods
...
Issue: SPR-8604
2018-05-10 15:39:47 -04:00
Rossen Stoyanchev
eef592d901
Add builder to MockServerWebExchange
...
Issue: SPR-16772
2018-05-10 15:16:13 -04:00
Stephane Nicoll
d82b0e37df
Merge pull request #1824 from nkjackzhang:patch-1
...
* pr/1824:
Fix a typo in javadoc
2018-05-10 17:32:36 +02:00
nkjackzhang
a1fa0daad5
Fix a typo in javadoc
...
Closes gh-1824
2018-05-10 17:32:21 +02:00
Rossen Stoyanchev
da6e9c6d54
Restore layout of docs zip with index.html at the top
...
Issue: SPR-16799
2018-05-09 17:29:04 -04:00
Sam Brannen
7444a62f98
Test Spring-managed JUnit Jupiter extension
2018-05-09 13:34:30 +02:00
Rossen Stoyanchev
1aadf2c3a6
Refine compareTo for param and header conditions
...
Issue: SPR-16674
2018-05-08 18:12:51 -04:00
Juergen Hoeller
c238fb441b
Polishing
...
(cherry picked from commit 2da02cc )
2018-05-08 00:58:58 +02:00
Juergen Hoeller
a200df6c8d
Explicit coverage of root vs cause exception matching in MVC ref docs
...
Issue: SPR-16743
2018-05-07 22:30:26 +02:00
Rossen Stoyanchev
e4b4d3e2f6
Document throwExceptionIfNoHandlerFound property
...
Issue: SPR-16786
2018-05-07 16:10:49 -04:00
Juergen Hoeller
53aa9cc4cd
Upgrade to Servlet API 4.0.1 (aligned with Tomcat 9 and Undertow 2)
...
Issue: SPR-16470
2018-05-07 14:17:28 +02:00
Juergen Hoeller
3917737df2
Polishing
2018-05-07 14:17:15 +02:00
nkjackzhang
321d7b0b06
Put CacheControl.empty() in else part.
...
Make sure the constructor of `CacheControl` being invoked only once.
2018-05-07 13:13:44 +02:00
Juergen Hoeller
795e5d306c
Upgrade to JSR-354 Money & Currency API 1.0.3 and Moneta 1.2.1
2018-05-05 20:38:28 +02:00
Juergen Hoeller
504e2768de
Add SAP HANA to common JPA database platforms
...
Issue: SPR-16460
2018-05-05 20:38:10 +02:00
Juergen Hoeller
a4b44e2713
Upgrade to Hibernate ORM 5.3 CR2
2018-05-05 17:13:50 +02:00
Juergen Hoeller
d0bd57b100
Polishing
...
(cherry picked from commit 0795ae5 )
2018-05-05 17:04:24 +02:00
Juergen Hoeller
48807be482
Polishing
2018-05-05 15:16:08 +02:00
Juergen Hoeller
c9f488363d
Fine-tuned assertions and related polishing
2018-05-05 14:39:43 +02:00
Juergen Hoeller
e17fc8d607
Upgrade to Tomcat 9.0.8, Undertow 2.0.6, Jetty 9.4.10, Gson 2.8.4
2018-05-05 12:47:34 +02:00
Juergen Hoeller
138b0d0bbd
YamlProcessor embraces SnakeYAML 1.18+ duplicate key handling
...
Includes removal of StrictMapAppenderConstructor for compatibility with SnakeYAML 1.21.
Issue: SPR-16791
2018-05-05 12:47:11 +02:00
Juergen Hoeller
7b894fe73b
ResponseEntityExceptionHandler rethrows unknown exception (for further processing in DispatcherServlet's HandlerExceptionResolver chain)
...
Issue: SPR-16743
2018-05-05 12:46:58 +02:00
Johnny Lim
fb898e1727
Remove inconsistent spaces
2018-05-05 11:07:35 +02:00
Johnny Lim
8f21cb1a7c
Polish DatabaseStartupValidator
2018-05-05 11:07:20 +02:00
Arjen Poutsma
bfb2effddb
Expose resource lookup function
...
This commit exposes the resource lookup function used by
`RouterFunctions.resources(String, Resource)`, so that it can be
composed upon.
Issue: SPR-16788
2018-05-04 13:36:24 +02:00
nkjackzhang
cdf483fd50
Task "docsZip" copies duplicate reference files
...
Specify task "docsZip" source directory.
Issue: SPR-16789
2018-05-03 16:36:42 -04:00
Arjen Poutsma
51325afbcc
Clean up path variables after non match
...
This commit makes sure the nested path variables are only commited to
the attributes when all predicates match.
Issue: SPR-16692
2018-05-03 11:02:46 +02:00
Stephane Nicoll
03af55a363
Merge pull request #1817 from sgrillon14:master
...
* pr/1817:
Remove unnecessary boxing
2018-05-03 10:49:45 +02:00
Stéphane GRILLON
c5278aa359
Remove unnecessary boxing
...
Closes gh-1817
2018-05-03 10:48:50 +02:00
Rossen Stoyanchev
f7029ffca6
Uncomment ignored test after Reactor Core fix
2018-05-02 15:44:24 -04:00
Juergen Hoeller
9281f820f1
Expose FactoryBean's raw object on retrieval during post-processing
...
Issue: SPR-16783
2018-05-02 15:21:40 +02:00
Juergen Hoeller
c8b6233bd0
Introspect originating bean definition as configuration class candidate
...
Issue: SPR-16756
2018-05-02 15:20:42 +02:00
Rossen Stoyanchev
4c021d04ce
@Ignore failing test from reactor-core regression
2018-05-02 07:23:46 -04:00
Sebastien Deleuze
af0cb53742
Support decoding Mono in Jaxb2XmlDecoder
...
Issue: SPR-16759
2018-05-02 12:10:46 +02:00
Arjen Poutsma
22edab852d
Provide simple way to create ServerRequest
...
This commit introduces support for creating a new `ServerRequest` from
an existing instance. This is especially useful when filtering requests
in a HandlerFilterFunction.
Issue: SPR-16707
2018-05-02 10:54:00 +02:00
Juergen Hoeller
f8c2d7ab51
Nullable HttpMethod parameter only on internal doExecute delegate
...
Issue: SPR-15540
2018-05-01 23:52:12 +02:00
Juergen Hoeller
21fad8e205
SimpleClientHttpResponse catches any Exception on close
...
Issue: SPR-16773
2018-05-01 23:51:05 +02:00
Juergen Hoeller
ad0d79a97b
Lenient fallback to plain getBundle call without Control handle
...
Includes defaultEncoding variant for platform default encoding.
Issue: SPR-16776
2018-05-01 23:50:34 +02:00
Juergen Hoeller
ac1e2a4598
Consistent SpelEvaluationException messages in findAccessorForMethod
...
Includes abstract declarations for FormatHelper and ReflectionHelper.
Issue: SPR-16762
2018-05-01 23:48:26 +02:00
Rossen Stoyanchev
64b8b6e978
Polish WebSocketIntegrationTests
2018-05-01 14:26:21 -04:00
Rossen Stoyanchev
725d685799
ReactorNettyWebSocketSession implements close properly
...
Issue: SPR-16774
2018-05-01 12:04:37 -04:00
Oleksandr Hasheniuk
6545cab42c
Improve performance of StringUtils#trimWhitespace
...
Issue: SPR-16766
2018-05-01 11:16:34 +02:00
Rossen Stoyanchev
8d157cb5b5
Consistent handling of URISyntaxException
...
Issue: SPR-16778
2018-04-30 21:02:36 -04:00
Rossen Stoyanchev
85ee36b385
Uncomment tests that now work
2018-04-30 19:47:14 -04:00
Jeremy Wright
1edd7c3540
Grammatical change.
2018-04-30 16:34:04 -04:00
Sam Brannen
de4b65a0f3
Suppress warnings in RequestMappingMessageConversionIntegrationTests
2018-04-30 12:05:34 +01:00
Sam Brannen
6fa1095e35
Upgrade to JUnit Jupiter 5.2
2018-04-30 11:21:26 +01:00
Sebastien Deleuze
ea713cf154
Upgrade to Kotlin 1.2.41
...
Fixes KT-23973 critical regression
2018-04-30 10:40:27 +02:00
Stephane Nicoll
e51330e905
Keep YAML entries that haven an empty array value
...
Prior to this commit, a YAML entry that define an empty array value was
lost. This commit makes sure to flag it with an empty String, which
corresponds as an empty comma separated list of entries in the
properties format.
Issue: SPR-16769
2018-04-29 10:30:08 +02:00
Stephane Nicoll
2bd3b534fb
Merge pull request #1813 from Nickolas-Evans:master
...
* pr/1813:
Fix typo
2018-04-28 10:51:47 +02:00
Nickloas
0d36401f99
Fix typo
...
Closes gh-1813
2018-04-28 10:51:18 +02:00
Juergen Hoeller
674015154c
Upgrade to RxJava 2.1.13
2018-04-27 23:38:04 +02:00
Juergen Hoeller
9bff5b48cf
Fine-tuned assertions and related polishing in WebFlux builders
2018-04-27 23:36:58 +02:00
Johnny Lim
6519e7b22a
Polish
2018-04-27 14:06:48 -04:00
Juergen Hoeller
d979bbad2d
Expose AspectJ 1.9.1 in Maven POMs
...
Includes upgrade to Hibernate ORM 5.2.17 for integration tests.
Issue: SPR-16780
2018-04-27 19:33:50 +02:00
Juergen Hoeller
a683472daa
Support for non-standard HTTP status in reactive ClientHttpResponse
...
Issue: SPR-16748
2018-04-27 18:25:11 +02:00
Juergen Hoeller
44cf002c00
Null-safe handling of response type in AcceptHeaderRequestCallback
...
Issue: SPR-16690
2018-04-27 18:24:59 +02:00
Juergen Hoeller
d5aedac6db
Avoid custom ResourceBundle.Control on Jigsaw (as far as possible)
...
Issue: SPR-16776
2018-04-27 18:24:31 +02:00
Juergen Hoeller
eaff2c28a7
Consistent target method resolution for event and caching expressions
...
Issue: SPR-16779
2018-04-27 18:23:42 +02:00
Juergen Hoeller
aa11721ff0
AopUtils.getMostSpecificMethod exposes dynamic proxy class methods
...
Includes efficient canApply check for IntroductionAwareMethodMatcher.
Issue: SPR-16757
2018-04-27 18:23:34 +02:00
sdeleuze
75a41db071
Fine tune WebFlux server logging verbosity
...
With this commit, WebFlux server uses warning instead of error log level
for request handling, and also just print the message instead of the
stacktrace which is mostly meaningless in reactive world.
Complementary to this change, Reactor Netty removed additional logging
as part of https://github.com/reactor/reactor-netty/issues/339 .
Issue: SPR-16688
2018-04-27 10:40:48 +02:00
nkjackzhang
5b8c6c46e1
Fix broken anchor link in WebFlux refdoc
2018-04-27 08:47:16 +02:00
sdeleuze
b5dfdbaa65
Reuse PartBodyStreamStorageFactory in SynchronossPartGenerator
...
Issue: SPR-16727
2018-04-26 10:59:11 +02:00
Johannes Edmeier
2a0540cb5f
Move init of excchangeStrategies to default ctor in DefaultWebClientBuilder
...
When the copy constructor is used the exchangeStrategies need not to be
initialized as they are set in the copyconstructor
fixes SPR-16771
2018-04-26 10:28:38 +02:00
nkjackzhang
d44f1ca2da
Fix typos in Spring MVC refdoc
...
1. Consistent with "xml code" examples.
2. "xml()" is a static method and will use default builder config,
so use createXmlMapper(true) instead.
3. Fix mvc namespace tag typo.
2018-04-26 10:00:50 +02:00
Rossen Stoyanchev
9bc4e70e93
Better assertion message in MockPart
...
Issue: SPR-16767
2018-04-25 09:59:06 -04:00
Stephane Nicoll
190e0c7481
Merge pull request #1806 from nkjackzhang:patch-2
...
* pr/1806:
Fix typos
2018-04-25 10:07:10 +02:00
nkjackzhang
24e8afeb73
Fix typos
...
Closes gh-1806
2018-04-25 10:02:24 +02:00
Stephane Nicoll
e0ea296e89
Merge pull request #1804 from hasheniuk:patch-1
...
* pr/1804:
Fix typo
2018-04-24 10:05:56 +02:00
hasheniuk
e0cb97abf0
Fix typo
...
Closes gh-1804
2018-04-24 10:05:43 +02:00
Rossen Stoyanchev
0e776d4e77
Add more detail to ISE in ServerEndpointExporter
...
Issue: SPR-16655
2018-04-23 17:03:09 -04:00
Rossen Stoyanchev
de18d96413
Validate contextPath in RedirectView
...
Issue: SPR-16752
2018-04-23 15:26:18 -04:00
Brian Clozel
e9a8a5065b
Disable HTTP Range support for InputStreamResource
...
Prior to this commit, the `AbstractMessageConverterMethodProcessor`
would fail to convert `InputStreamResource` to `ResourceRegion` as
expected, since the content length cannot be read without consuming the
stream. This is enforced by the `HttpRange` class.
Now the method processor would still try to output HTTP range response
headers to provide range support information. This step is using the
resource content length and reads the input stream, leading to
exceptions such as "IllegalStateException: InputStream has already been
read".
This commit improves the return type detection and excludes early
`InputStreamResource` return types. With those types, HTTP range support
is now completely disabled.
Issue: SPR-16754
2018-04-23 18:39:05 +02:00
Sam Brannen
ae3fd49ebb
Introduce non-transactional test for TestNG support
2018-04-23 16:18:02 +02:00
sdeleuze
919f54b3f6
Upgrade Kotlin to 1.2.40
2018-04-23 15:02:28 +02:00
sdeleuze
1d6540b1c2
Enable KotlinScriptTemplateTests after KT-18833 fix
2018-04-23 14:49:22 +02:00
Stephane Nicoll
19ac212868
Merge pull request #1803 from dimitrisli:master
...
* pr/1803:
Fix typo
2018-04-21 18:20:38 +02:00
Dimitrios (Dimi) Liapis
6d6da91ab9
Fix typo
...
See gh-1803
2018-04-21 18:16:13 +02:00
Brian Clozel
3f85eee510
Upgrade to Netty 4.1.24.Final
2018-04-21 09:33:06 +02:00
Stephane Nicoll
bf71e86677
Delete ignored files
...
See gh-1799
2018-04-20 06:16:58 +02:00
Rossen Stoyanchev
b6da63aeb7
Align with 5.0.x change #cd3ed7
2018-04-19 13:50:55 -04:00
Rossen Stoyanchev
da98ff72d2
Use StringDecoder to split SSE stream
...
ServerSentEventHttpMessageReader had logic to split on new lines
and buffer until an empty new line (start of a new event). To account
for random data chunking, it later re-assembled the lines for each
event and split again on new lines. However bufferUntil was still
unreliable a chunk may contain nothing but a newline, which doesn't
necessarily mean an empty newline in the overall SSE stream.
This commit simplifies the above by delegating the splitting of the
stream along newlines to StringDecoder.
Issue: SPR-16744
2018-04-19 11:29:12 -04:00
Rossen Stoyanchev
30c98c8a1c
Polish tests to use WebClient retrieve()
2018-04-19 09:39:34 -04:00
Daniel Kift
7eb8070d55
Polish WebFlux reference documentation
2018-04-18 12:00:53 +02:00
nkjackzhang
fb0e3e9356
Fix a typo in @Nullable Javadoc
2018-04-18 11:53:09 +02:00
Rossen Stoyanchev
06041ea4e2
Polish (minor) in AbstractMessageReaderArgumentResolver
2018-04-17 17:58:03 -04:00
Rossen Stoyanchev
babe6c59c4
Avoid creating Exception instance if not needed
...
Issue: SPR-16726
2018-04-17 17:58:03 -04:00
Juergen Hoeller
2f4010e8d3
Correctly delegate to OrderUtils.getPriority for DecoratingProxy
...
Issue: SPR-16739
2018-04-17 23:37:42 +02:00
Juergen Hoeller
d78e27f1e9
Avoid repeated superclass introspection in findAnnotation(Method,...)
...
Issue: SPR-16730
2018-04-17 16:44:28 +02:00
sdeleuze
568a0b5b79
Make ResponseSpec.expectBody Kotlin extension usable
...
Prior to this commit, due to KT-5464 type inference issue there was not
proper way to provide body expectations with WebTestClient. This commit
provides a workaround by updating the existing Kotlin extension to
return a Kotlin compatible API.
Issue: SPR-15692
2018-04-17 15:00:04 +02:00
Juergen Hoeller
51be8a7303
Workaround for generic parameter types on inner class constructors
...
Issue: SPR-16734
2018-04-17 14:32:54 +02:00
Juergen Hoeller
a2a8d0c754
Workaround for generic parameter types on inner class constructors
...
Issue: SPR-16734
2018-04-17 12:58:32 +02:00
Juergen Hoeller
d4a55a257b
OperatorMatches flags misguided evaluation attempts as FLAWED_PATTERN
...
Issue: SPR-16731
2018-04-17 11:10:15 +02:00
Juergen Hoeller
c5b524db7c
Restore original MethodMapTransactionAttributeSource matching rules
...
Issue: SPR-16733
2018-04-17 10:56:16 +02:00
Rossen Stoyanchev
ff2228fdaf
Selector header name is exposed for configuration
...
Issue: SPR-16732
2018-04-16 23:56:30 -04:00
Rossen Stoyanchev
586be50109
Fix typo
2018-04-16 10:02:47 -04:00
Rossen Stoyanchev
551505bd93
Restore handling of 0 bytes read
...
Issue: SPR-16728
2018-04-16 09:59:34 -04:00
Juergen Hoeller
0754833b37
Local XMLUnit dependency declarations with consistent version 2.5.1
2018-04-14 21:03:20 +02:00
Juergen Hoeller
de4ff4b1fc
Polishing
2018-04-14 21:02:53 +02:00
Juergen Hoeller
b95e05db04
AspectJExpressionPointcut consistently resolves superinterface methods
...
Includes efficient check for same ClassLoader in ClassUtils.isVisible, efficient MethodMatchers check for IntroductionAwareMethodMatcher, and supertype method resolution in MethodMapTransactionAttributeSource.
Issue: SPR-16723
2018-04-14 15:10:05 +02:00
Sam Brannen
c6ed41ec47
Suppress warning in SpringFailOnTimeoutTests
2018-04-14 15:02:57 +02:00
Stephane Nicoll
19d311dcb2
Merge pull request #1791 from nkjackzhang:patch-1
...
* pr/1791:
Fix typo in javadoc
2018-04-13 13:16:05 +02:00
nkjackzhang
961c641973
Fix typo in javadoc
...
Closes gh-1791
2018-04-13 13:15:39 +02:00
Brian Clozel
69e3fde295
Avoid duplicate Accept header values in RestTemplate
...
Prior to this commit, the various `HttpMessageConverter` instances
configured for a given `RestTemplate` instance could all contribute
`MediaType` values to the "Accept:" request header.
This could lead to duplicate media types in that request header,
cluttering for the HTTP request for no reason.
This commit ensures that only distinct values are added to the request.
Issue: SPR-16690
2018-04-12 22:28:31 +02:00
Juergen Hoeller
0efa7a05ad
ClassUtils.isCacheSafe delegates to isVisible for resolving classes
...
Issue: SPR-16714
2018-04-12 20:55:26 +02:00
Juergen Hoeller
46e3a919fe
Cache-safety check for sibling loaders resolving the same classes
...
Issue: SPR-16714
2018-04-12 18:50:32 +02:00
Brian Clozel
1fa5f03635
Upgrade to Reactor Californium SNAPSHOTs
2018-04-12 17:25:49 +02:00
Juergen Hoeller
6184c4ecc9
Consistent getTypeForFactoryMethod result for parameterized method
...
Issue: SPR-16720
2018-04-12 15:14:41 +02:00
Juergen Hoeller
8e1ececd97
Fine-tuned JCA MessageEndpoint exception logging and propagation
...
Issue: SPR-16717
2018-04-12 14:46:26 +02:00
Juergen Hoeller
7ee6130680
Revised reference example for linkable controller method signature
...
Issue: SPR-16710
2018-04-12 14:45:11 +02:00
sdeleuze
97ee94f4ca
Expose env and context in Kotlin beans DSL
...
This commit introduces a deferred initialization of the declared beans
in order to make it possible to access to the environment (and even
to the context for advanced use-cases) in the beans { } Kotlin DSL.
Issues: SPR-16269, SPR-16412
2018-04-12 11:31:37 +02:00
Sam Brannen
8317f12a9b
Move SpringFailOnTimeoutTests to 'statements' package
2018-04-12 11:14:08 +02:00
Sam Brannen
4f3a7dd9b4
Expand scope of SpringFailOnTimeoutTests
...
Issue: SPR-16716
2018-04-12 10:56:40 +02:00
Igor Suhorukov
3c34a1cb8c
Throw exception from user code in SpringFailOnTimeout even if a timeout occurs
...
Issue: SPR-16717
2018-04-12 10:37:13 +02:00
Rossen Stoyanchev
697d2e326f
Merge pull request #1785 from cakofony/iterator_allocation
2018-04-11 21:54:32 -04:00
Rossen Stoyanchev
cca78e42f1
Polish
2018-04-11 21:52:59 -04:00
Carter Kozak
e2febbdd8c
Remove unnecessary iterator allocation in type handlers
...
HandlerMethodReturnValueHandlerComposite and
AbstractMethodMessageHandler iterate using index over collections
implementing RandomAccess to avoid unnecessary iterators.
2018-04-11 21:39:32 -04:00
Rossen Stoyanchev
5b9e7e44e0
Improve WebClient test with ParameterizedTypeReference
...
Issue: SPR-16715
2018-04-11 16:19:53 -04:00
Rossen Stoyanchev
224589ea74
Remove write pausing in Undertow response
...
Using the simple example shown in the ticket but switching from
Mono<String> to Flux<String> (and 5,000,000 onNext calls) shows that
constant pausing causes significant overhead and is not worth the
trouble vs ignoring the onWritePossible in REQUESTED state.
Issue: SPR-16702
2018-04-11 14:27:27 -04:00
Rossen Stoyanchev
3549745e37
Avoid inifinite recursion in UndertowServerHttpResponse
...
Undertow does not provide a way to check if we can write so with the
current implementation of isWritePossible, deep recursion can occur
when writing slows down. We now use a flag to keep track of write
ChannelListener callbacks.
This commit also addresses a related issue in
AbstractListenerWriteProcessor that went undected since #3c2d186
where after a large (single) buffer that is not written fully, the
completion signal is processed before the all data is written.
Issue: SPR-16702
2018-04-11 14:27:27 -04:00
Juergen Hoeller
e88ca0d633
Upgrade framework build to Tomcat 9.0 and Undertow 2.0
...
Issue: SPR-16470
2018-04-11 16:06:26 +02:00
Juergen Hoeller
e170cb0f79
Upgrade framework build to JPA 2.2 and JTA 1.3
...
Issue: SPR-16685
2018-04-11 16:06:10 +02:00
Juergen Hoeller
f28a5d0cf7
Proper exception for controller method return types that do not work with MvcUriComponentsBuilder (e.g. final classes)
...
Includes direct use of ControllerMethodInvocationInterceptor for return type Object, avoiding the attempt to generate an Object subclass.
Issue: SPR-16710
2018-04-11 16:05:54 +02:00
Juergen Hoeller
a6885c7235
Polishing
2018-04-11 16:05:35 +02:00
Andreas Asplund
6a34ca24ce
Restore org.springframework.cglib.core.KeyFactoryCustomizer.class
...
Issue: SPR-15859
2018-04-11 15:41:40 +02:00
sdeleuze
89d069b09d
Add default ctor to Reactive UrlBasedCorsConfigurationSource
...
Issue: SPR-16712
2018-04-11 14:38:42 +02:00
Juergen Hoeller
da80502ea6
AnnotationUtils.getAnnotation non-null check for synthesizeAnnotation
...
Issue: SPR-16708
2018-04-11 12:50:27 +02:00
Juergen Hoeller
61c3db0869
MethodHandles.Lookup.defineClass for CGLIB class definition purposes
...
Spring's CGLIB fork is patched with local copies of affected files here, introducing the notion of a "contextClass" (e.g. the proxy superclass) which gets passed through to ReflectUtils.defineClass for delegating to MethodHandles.Lookup.defineClass eventually, against a privateLookupIn(contextClass) lookup context on JDK 9/10/11.
Issue: SPR-15859
2018-04-11 12:47:55 +02:00
Juergen Hoeller
cdaa247861
Unwind _TestTypes to top-level public test classes in AOP test suite
2018-04-11 12:43:49 +02:00
Sam Brannen
2523c3ab77
Clean up deprecation warning in spring-test
2018-04-11 12:03:55 +02:00
Sam Brannen
8874427cf4
Clean up warnings in spring-core
2018-04-10 13:10:58 +02:00
Arjen Poutsma
7e2726f400
Add remoteAddress() to ServerRequest
...
Issue: SPR-16681
2018-04-10 11:13:45 +02:00
Juergen Hoeller
ff53d78e96
Remove bogus DataSource test from JpaTransactionManagerTests
2018-04-10 00:40:51 +02:00
Juergen Hoeller
9fbab791a0
Upgrade to TestNG 6.14.3, JUnit 5.1.1, Mockito 2.18
2018-04-10 00:12:28 +02:00
sdeleuze
27e87e5593
Document why "charset=UTF-8" is specified for JSON
...
Issue: SPR-14715
2018-04-09 12:03:17 +02:00
KwonJH
967ea152b7
Fix Java 9 link in the reference documentation
2018-04-09 11:10:37 +02:00
sdeleuze
e4298e8366
Improve Kotlin + bean validation documentation
...
Issue: SPR-16701
2018-04-09 10:15:50 +02:00
Juergen Hoeller
c82bf0b004
Upgrade to Mockito 2.17
2018-04-06 21:48:59 +02:00
Rossen Stoyanchev
313308208e
TestDispatcherServlet unwraps to find mock request
...
Issue: SPR-16695
2018-04-06 11:02:46 -04:00
Brian Clozel
2dde000475
Document socket timeout config limitations for HttpClient
...
This commit documents the difference between configuring the socket
timeout on the `RequestConfig` and on the `SocketConfig`.
The first one does not affect timeouts when establishing an SSL
connection or sending a CONNECT request to a proxy. For these use cases,
it is required to configure `SocketConfig` on the `HttpClient` instance
directly.
Issue: SPR-16697
2018-04-06 16:35:17 +02:00
Jinghu Wang
de3a9560d9
[docs] Fix formatting
2018-04-05 20:11:07 -04:00
Juergen Hoeller
a6fd9a7725
Upgrade to FreeMarker 2.3.28 and Netty 4.1.23
2018-04-05 10:30:03 +02:00
Sam Brannen
56774baa2a
Use Gradle 4.6's built-in support for the JUnit Platform
...
Gradle 4.6 provides built-in support for the JUnit Platform within the
standard `test` task.
This commit configures a custom `testJUnitJupiter` test task for
executing JUnit Jupiter tests directly on the JUnit Platform instead of
indirectly on JUnit 4 via @RunWith(JUnitPlatform.class).
This switch provides for better integration with Gradle's test reporting
and paves the way for a possible transition to the JUnit Platform in the
future.
Issue: SPR-16672
2018-04-04 15:43:44 +02:00
Sam Brannen
aba882af4c
Clean up warnings in spring-webmvc
2018-04-04 14:04:54 +02:00
Sam Brannen
2c648379ab
Delete dead code in spring-webmvc
2018-04-04 14:01:24 +02:00
Thor Andreas Rognan
17c16eaa9e
Upgrade to Gradle 4.6
...
Issue: SPR-16475
2018-04-04 12:39:09 +02:00
Sam Brannen
71cacff8c2
Upgrade to JUnit Jupiter 5.1
...
Issue: SPR-16408
2018-04-04 12:29:26 +02:00
sdeleuze
f1727bfbdb
Cleanup settings.gradle pluginManagement configuration
2018-04-04 11:08:13 +02:00
sdeleuze
c7c743872a
Fix Dokka reference to Spring Framework's Javadoc
...
This commit specifies a local packageListUrl and defines that dokka task
must be executed after the api task in order to be able to build KDoc
during the release process when the Spring Framework's Javadoc is not
published yet.
Issue: SPR-16687
2018-04-04 11:08:05 +02:00
Spring Buildmaster
4967dd887d
Next Development Version
2018-04-03 20:11:32 +00:00