Spring Buildmaster
66c295ef22
Release version 5.2.0.M1
2019-04-10 08:41:39 +00: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
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
Stephane Nicoll
3fb8d16ff7
Temporarily remove reference to Spring Framework's Javadoc
...
Issue: SPR-16687
2018-04-03 21:14:49 +02:00
Juergen Hoeller
40d5e7cc80
Upgrade to AspectJ 1.9 GA
...
Issue: SPR-16686
2018-04-03 17:43:09 +02:00
Stephane Nicoll
7be4193933
Upgrade to Reactor Bismuth-SR8
2018-04-03 15:45:36 +02:00
Juergen Hoeller
aa0face9a1
Upgrade to RxJava 1.3.8 and Rhino 1.7.9
2018-04-03 15:18:25 +02:00
Juergen Hoeller
475c4d4425
Polishing
2018-04-03 12:24:00 +02:00
Juergen Hoeller
9601d4bb5b
Revised mime.types file with cpp extension and updated modification docs
...
Issue: SPR-16678
2018-04-03 12:23:09 +02:00
Juergen Hoeller
5d0700b936
AnnotationUtils.annotatedInterfaceCache available as deprecated field
...
Issue: SPR-16675
2018-04-03 12:21:03 +02:00
Juergen Hoeller
6102715b8d
Consistent treatment of proxy classes and interfaces for introspection
...
Issue: SPR-16675
Issue: SPR-16677
2018-04-03 02:42:41 +02:00
Rossen Stoyanchev
65fdd0efeb
[docs] Updates for exception handling in web sections
...
Issue: SPR-16394
2018-04-02 00:51:14 -04:00
Rossen Stoyanchev
9dd3cd98ac
[docs] Move Filters section under Reactive Spring Web
...
Issue: SPR-16394
2018-04-02 00:50:56 -04:00
Juergen Hoeller
cc379f1cc7
Polishing
2018-04-01 12:57:19 +02:00
Juergen Hoeller
666037ec5c
Pointcut checking directly against superclass in case of CGLIB subclass
...
Issue: SPR-16675
2018-04-01 12:57:02 +02:00
Juergen Hoeller
66a3a82fb3
Avoid reference to HandlerMethod class in ServerErrorException
...
This breaks the package dependency cycle between web.server/web.method and makes ServerErrorException more generally applicable. Includes deprecation of the plain reason constructor variant, in favor of providing a Method or MethodParameter context (which MatrixVariableMethodArgumentResolver does now).
2018-04-01 00:21:15 +02:00
Juergen Hoeller
97735e4ffc
Proper references to JDK 9+ (including JDK 10) in build comments
2018-04-01 00:07:06 +02:00
Juergen Hoeller
28ea718d2d
Build setup allows for JDK 10 as source/test target compatibility
...
Includes upgrade to Groovy 2.4.15 and HtmlUnit 2.30.
Issue: SPR-16390
2018-03-31 23:17:31 +02:00
Juergen Hoeller
bc07a54075
Clear AnnotationUtils cache after context refresh (along with others)
...
Issue: SPR-16675
2018-03-31 23:08:30 +02:00
Juergen Hoeller
8a9321652d
Refined javadoc
2018-03-31 23:07:08 +02:00
Rossen Stoyanchev
d9e17a62ce
Refine SyncInvocableHandlerMethod error handling
...
Ensure the error is wrapped as ServerErrorException
2018-03-31 12:06:24 -04:00
Juergen Hoeller
912c270f2b
Polishing
2018-03-31 17:49:21 +02:00
Rossen Stoyanchev
4454ffd2b1
Replace remaining use of block operator
2018-03-31 11:18:38 -04:00
Juergen Hoeller
129c05bcff
Comprehensively cache annotated methods for interfaces and superclasses
...
Issue: SPR-16675
2018-03-31 15:12:02 +02:00
Stephane Maldini
b8d32095a9
workaround multipart integration test using blocking receive inside netty thread
2018-03-30 15:43:11 -07:00
Juergen Hoeller
6393e5ce0c
Consistent Ordered.LOWEST_PRECEDENCE declarations for default order
2018-03-31 00:20:44 +02:00
Juergen Hoeller
4da27c2a73
Avoid unnecessary introspection on methods and meta-annotations
...
Issue: SPR-16667
2018-03-31 00:18:14 +02:00
Rossen Stoyanchev
b1048975d2
Minor updates based on PR#1058
...
The original repo no longer exists:
https://github.com/spring-projects/spring-framework/pull/1058
2018-03-30 13:36:20 -04:00
Kazuki MATSUDA
d232fffa63
Use whenComplete since (null) return value not needed
2018-03-30 11:07:46 -04:00
Bian Jiaping
8f525f07e9
Fix typos, formatting and escaping in reference
...
Note: Some symbol combinations (including <=) serve as textual symbol
replacements in AsciiDoc.
http://asciidoctor.org/docs/asciidoc-syntax-quick-reference/#text-replacement
2018-03-30 10:06:33 -04:00
Juergen Hoeller
22a8a668c9
AnnotationTypeFilter assumes no custom annotations on common Java types
...
Issue: SPR-16667
2018-03-30 15:31:43 +02:00
Juergen Hoeller
78681c6369
JndiRmiServiceExporter still calls PortableRemoteObject when available
...
Issue: SPR-16670
2018-03-30 15:19:38 +02:00
Juergen Hoeller
0bc01fcd55
Polishing
2018-03-30 13:42:23 +02:00
Juergen Hoeller
7a8d41e5d6
Extended set of common classes and language interfaces in ClassUtils
...
Issue: SPR-16667
2018-03-30 13:41:22 +02:00
Johnny Lim
8dd0974e2f
Rename SingleColumnRowMapperTest to align with the other tests
2018-03-30 12:28:16 +02:00
Sam Brannen
e5096be660
Polishing
2018-03-30 12:23:28 +02:00
Sam Brannen
f79562f8d1
Introduce tests for generics & @Nested test classes
2018-03-30 12:12:21 +02:00
Sam Brannen
a6c45f0cd9
Polishing
2018-03-30 11:45:28 +02:00
Rossen Stoyanchev
240d6f52c9
Replaces rather than prepend contextPath
...
Issue: SPR-16650
2018-03-29 18:17:29 -04:00
Juergen Hoeller
d553ddc5b3
Nullability refinements (based on IntelliJ IDEA 2018.1 introspection)
...
Issue: SPR-15756
2018-03-29 23:50:17 +02:00
Juergen Hoeller
1cc513d7db
Consistent to/cc/bcc array handling and revised hashCode without text
...
Issue: SPR-16671
2018-03-29 23:44:04 +02:00
Juergen Hoeller
9a722b4558
Pass type name into PreparedStatement.setNull in case of Types.OTHER
...
Issue: SPR-16669
2018-03-29 23:43:53 +02:00
igor-suhorukov
93abe0e94b
All branches in a conditional structure should not have exactly the same implementation
2018-03-29 23:33:50 +02:00
igor-suhorukov
ab96bb5428
Remove redundant check
2018-03-29 23:33:38 +02:00
igor-suhorukov
c1ff97e2a8
Short-circuit logic should be used in boolean contexts
2018-03-29 23:33:22 +02:00
Rossen Stoyanchev
dd96c873e3
Improve docs on forwarded headers
...
Issue: SPR-16660
2018-03-29 16:11:01 -04:00
Rossen Stoyanchev
a546cf0a3b
Reject invalid forwarded headers
...
Issue: SPR-16660
2018-03-29 15:28:34 -04:00
Thor Andreas Rognan
5fb4c8254f
Fix inclusion of license in jar
2018-03-29 12:30:28 -04:00
Rossen Stoyanchev
30b63a71bd
Switch to Bismuth snapshots
2018-03-29 12:28:05 -04:00
Sam Brannen
9244090ba0
Support DI of individual constructor args in @Nested tests
...
Prior to this commit it was impossible to have an individual
constructor argument in a @Nested (i.e., inner) test class injected via
@Autowired, @Qualifier, or @Value.
This is due to a bug in javac on JDK versions prior to 9, whereby
annotation lookups performed directly via the
java.lang.reflect.Parameter API fail for inner class constructors.
Specifically, the parameter annotations array in the compiled byte code
for the user's test class excludes an entry for the implicit enclosing
instance parameter for an inner class constructor.
This commit introduces a workaround in ParameterAutowireUtils for this
off-by-one error by transparently looking up annotations on the
preceding Parameter object (i.e., index - 1). In addition, this commit
relies on the change recently introduced in MethodParameter in order to
compensate for the same JDK bug (see SPR-16652).
Issue: SPR-16653
2018-03-29 17:47:45 +02:00
Sam Brannen
17703e5dde
Polishing
2018-03-29 17:45:55 +02:00
Sam Brannen
7c28152c13
Introduce ClassUtils.isInnerClass() utility method
2018-03-29 17:45:25 +02:00
Juergen Hoeller
b165475eb6
Polishing
2018-03-29 16:05:52 +02:00
Juergen Hoeller
08dad4e3ac
Consistent references to primitive types (in alphabetical order)
2018-03-29 16:05:00 +02:00
Juergen Hoeller
695bf2961f
Consistent trace logging in PathResourceResolver
...
Issue: SPR-16616
2018-03-29 16:04:33 +02:00
Juergen Hoeller
53d01392d7
Workaround for inner class constructor parameter annotation bug in javac
...
Issue: SPR-16652
2018-03-29 15:45:02 +02:00
Juergen Hoeller
3ac46da22f
Correct description for doWithLocalFields
...
Issue: SPR-16658
2018-03-29 15:42:30 +02:00
nkjackzhang
82cb5dbf2b
NamedParameterUtils.parseSqlStatement should parse :{x} style parameter correctly
...
In my opinion, we should parse ":{x}" style parameter as "x" is parameter using "NamedParameterUtils.parseSqlStatement",
so the condition "j - i > 2" is the correct condition, not "j - i > 3", because if "i" is the index of
":" in ":{x}", and "j" is the index of "}" in ":{x}", "j - i == 3" is true.
Also add a test case for SPR-16663.
2018-03-29 15:00:25 +02:00
Stephane Nicoll
f4813f5b4c
Merge pull request #1759 from igor-suhorukov
...
* pr/1759:
Nested "enum"s should not be declared static
2018-03-29 09:13:18 +02:00
igor-suhorukov
8d2f64fe2d
Nested "enum"s should not be declared static
...
Closes gh-1759
2018-03-29 09:12:03 +02:00
Rossen Stoyanchev
f9e6ea5482
MvcResult returns asyncResult after asyncDispatch
...
Issue: SPR-16648
2018-03-28 22:15:16 -04:00
igor-suhorukov
e6020ed377
avoid unnecessary autoboxing
2018-03-28 23:48:12 +02:00
Rossen Stoyanchev
b8d72516e1
Update link to WebSocket spec issue
2018-03-28 15:54:57 -04:00
Sam Brannen
4b9e3a9211
Introduce failing test for SPR-16652
...
This commit introduces tests for looking up annotations on parameters
in constructors for nested and inner classes via Spring's
MethodParameter abstraction.
The test for an inner class is currently disabled since it fails on
JDK 8. See JIRA issue for details.
Issue: SPR-16652
2018-03-28 17:42:55 +02:00
Juergen Hoeller
d95bbb6b1b
Test for hasError keeping body available in case of unknown status code
...
Issue: SPR-16604
2018-03-28 12:16:03 +02:00
Juergen Hoeller
b2d87abcbb
Polishing
2018-03-28 12:06:38 +02:00
Stephane Nicoll
d1a0b8d53f
Clarify the format supported by @PropertySource
...
Issue: SPR-16563
2018-03-28 11:03:53 +02:00
Rossen Stoyanchev
5861e9685b
Always specify charset for form data requests
...
Issue: SPR-16613
2018-03-27 19:56:09 -04:00
Rossen Stoyanchev
e00384a6fd
MimeTypeUtils trims parameter names / values
...
Issue: SPR-16630
2018-03-27 19:56:09 -04:00
igor-suhorukov
4aae6a6dda
Use Map.forEach instead of manual Map.Entry iteration wherever possible SPR-16646
2018-03-28 01:09:03 +02:00
Rossen Stoyanchev
224d52e032
Refine RequestedContentTypeResolver contract
...
Consistently return "*/*" if no media types were requested rather than
an empty list. Existing code has to check for both in any case to see
if nothing was requested.
Issue: SPR-16624
2018-03-27 16:54:25 -04:00
Rossen Stoyanchev
f3994467c4
Refine ContentNegotiationStrategy contract
...
Consistently return "*/*" if no media types were requested rather than
an empty list. Existing code has to check for both in any case to see
if nothing was requested.
Issue: SPR-16624
2018-03-27 16:54:19 -04:00
Juergen Hoeller
9a27bc9b3e
Upgrade to Jackson 2.9.5 and Hibernate Validator 6.0.9
2018-03-27 17:33:34 +02:00
Juergen Hoeller
c072c6deb5
Refined javadoc for SimpleEvaluationContext and its builder features
...
Issue: SPR-16588
2018-03-27 17:07:03 +02:00
Juergen Hoeller
98ad23bef8
Consistent logging of encoded path evaluation failure
...
Issue: SPR-16616
2018-03-27 17:04:59 +02:00
Sam Brannen
75f70b269e
Introduce @Nested tests with constructor injection
...
This commit introduces @Nested tests to verify support for constructor
injection when using the SpringExtension.
One of the tests is disabled on Java 8 due to a bug in javac that was
first fixed in JDK 9.
See https://github.com/junit-team/junit5/issues/1345 for details.
2018-03-27 16:45:26 +02:00
Sam Brannen
b6e9d1c9ad
Publish SpEL content in Reference Manual
2018-03-27 12:48:37 +02:00
Juergen Hoeller
13356a7ee2
Consistent encoded path evaluation in reactive ResourceWebHandler and co
...
Issue: SPR-16616
2018-03-27 01:00:42 +02:00
Juergen Hoeller
e3d0ef6015
Use Map.forEach instead of manual Map.Entry iteration wherever possible
...
Issue: SPR-16646
2018-03-27 00:38:32 +02:00
Juergen Hoeller
10cb2ccaef
Avoid triggering lazy resolution in MultipartResolver.cleanupMultipart
...
Issue: SPR-16640
2018-03-27 00:25:05 +02:00
Juergen Hoeller
24aae2e104
Defensive containsSingleton cache guard within getObjectFromFactoryBean
...
Issue: SPR-16625
2018-03-27 00:24:03 +02:00
Juergen Hoeller
f59ea610df
Simplified separator check within isInvalidEncodedPath
...
Issue: SPR-16616
2018-03-27 00:23:36 +02:00
Juergen Hoeller
c60cefa331
SimpleEvaluationContext.Builder withRootObject/withTypedRootObject
...
Issue: SPR-16588
2018-03-27 00:22:54 +02:00
Rossen Stoyanchev
19875d8e3f
Document WebFlux concurrency model
...
Issue: SPR-16538
2018-03-26 09:59:38 -04:00
Juergen Hoeller
c441d60d1d
Upgrade to Kotlin 1.2.31 and RxJava 2.1.12
...
Includes H2 1.4.197 and Selenium HtmlUnit Driver 2.29.3 as well.
2018-03-24 16:48:53 +01:00
Juergen Hoeller
8d5587fe4f
Consistent thread-safe iteration in DefaultSingletonBeanRegistry
...
Issue: SPR-16620
2018-03-24 16:30:51 +01:00
Juergen Hoeller
9128226da4
SimpleEvaluationContext.Builder withMethodResolvers/withInstanceMethods
...
Includes DataBindingMethodResolver as ReflectiveMethodResolver subclass.
Issue: SPR-16588
2018-03-24 16:30:37 +01:00
Rossen Stoyanchev
a989ea0867
Polish Synchronoss message reader
...
Issue: SPR-16639
2018-03-24 08:59:16 -04:00
Rossen Stoyanchev
729d0d2796
Property handling of Void.class in WebClient retrieve()
...
Issue: SPR-16636
2018-03-23 22:21:06 -04:00
Rossen Stoyanchev
ab2410c754
MimeTypeUtils uses SecureRandom
...
The prevailing current wisdom is to use the default constructor for
secure and let it pick the best algorithm for the OS.
On Java 8 (Oracle), Linux this results in "NativePRNG" which uses
/dev/random (potentially blocking) for the initial seed, and
/dev/urandom (non-blocking) for subsequent calls to nextInt.
Issue: SPR-16635
2018-03-23 21:45:41 -04:00
Rossen Stoyanchev
f6ea7407e6
Improve docs on client-side multipart requests
...
Issue: SPR-16635
2018-03-23 21:44:27 -04:00
Rossen Stoyanchev
d007c25585
Improve docs on RestTemplate
...
In preparation for adding multipart content.
Issue: SPR-16635
2018-03-23 21:44:18 -04:00
Rossen Stoyanchev
0af847c01c
ServerSentEventHttpMessageReader internal refactoring
...
Eliminate use of .block() which Reactor now flags as illegal on
schedulers where that's not expected.
2018-03-23 19:01:11 -04:00
Juergen Hoeller
b2f900e518
Upgrade to Hibernate ORM 5.2.16 and 5.1.13
2018-03-23 17:36:55 +01:00
Juergen Hoeller
f00afe3247
Use (Concurrent)Map.computeIfAbsent for lazy nested collection creation
2018-03-23 17:36:23 +01:00
Juergen Hoeller
8d8e218b52
Consistent FactoryBean cache visibility in concurrent creation scenarios
...
Issue: SPR-16625
Issue: SPR-16627
2018-03-23 17:34:33 +01:00
Juergen Hoeller
937cd48fcb
Contextual BeanCreationException in case of depending on a missing bean
...
Issue: SPR-16628
2018-03-23 17:32:08 +01:00
Juergen Hoeller
38dcd179d5
Guidance of which PropertyAccessors to use with SimpleEvaluationContext
...
Issue: SPR-16588
2018-03-23 17:29:21 +01:00
Rossen Stoyanchev
94924566d5
Minor typo in docs
2018-03-23 11:12:54 -04:00
Rossen Stoyanchev
3b4c7a40c0
Improve docs on @Controller methods in STOMP section
...
Issue: SPR-16631
2018-03-23 10:54:53 -04:00
Arjen Poutsma
c56317928f
Add formData() and multipartData() to ServerRequest
...
Issue: SPR-16551
2018-03-23 10:00:30 +01:00
Rossen Stoyanchev
1b83f129a2
ReactorNettyTcpClient uses elastic pool
...
Issue: SPR-16626
2018-03-22 20:22:07 -04:00
Juergen Hoeller
a8688880b1
Upgrade to RxJava 2.1.11 and 1.3.7 as well as Jetty 9.4.9
2018-03-22 18:10:29 +01:00
Juergen Hoeller
51c57d77d9
SimpleEvaluationContext with dedicated factory methods for common cases
...
Aligned with DataBindingPropertyAccessor and shown in ref doc examples.
Issue: SPR-16588
2018-03-22 18:09:27 +01:00
Rossen Stoyanchev
025ee83403
Update CONTRIBUTING.md
2018-03-22 10:57:19 -04:00
sn42
f18d8c31e2
Correct link caption.
2018-03-22 13:21:57 +01:00
Christoph Dreis
d3a0a8e007
Use Collection.removeIf() where possible ( #1747 )
...
Use Collection.removeIf() where possible
Issue: SPR-16622
2018-03-22 11:36:11 +01:00
Rossen Stoyanchev
e0de9126ed
Re-use EvaluationContext in DefaultSubscriptionRegistry
...
Rather than create a new EvaluationContext instance per evaluation, we
now create a statically shared instance, without the root object in it,
and re-use it for all evalutations.
2018-03-21 23:29:58 -04:00
Rossen Stoyanchev
19293b9847
SimpleEvaluationContext builder
...
Issue: SPR-16588
2018-03-21 22:36:08 -04:00
Juergen Hoeller
b5511645b8
DataBindingPropertyAccessor with factory methods (forReadOnlyAccess etc)
...
Includes configurable write support at ReflectivePropertyAccessor level.
Issue: SPR-16588
2018-03-22 00:03:06 +01:00
Rossen Stoyanchev
94c525cdc8
Polish @RequestPart support
2018-03-21 18:26:13 -04:00
Juergen Hoeller
c1405ef140
Polishing
2018-03-21 16:12:42 +01:00
Juergen Hoeller
ba5ef6456f
WebFluxResponseStatusExceptionHandler for @ResponseStatus introspection
...
The web.server package is quite low-level and should not depend on web.bind in order to avoid a dependency cycle. Extracting the introspection of the ResponseStatus annotation into a WebFlux-level subclass resolves the cycle.
Issue: SPR-16567
2018-03-21 16:12:32 +01:00
Juergen Hoeller
639d2c6fe7
Polishing
2018-03-21 12:39:15 +01:00
Juergen Hoeller
1fd5935afa
SimplePropertyAccessor with configurable write support
...
Issue: SPR-16588
2018-03-21 12:06:40 +01:00
Juergen Hoeller
91b803a231
Consistent encoded path evaluation in ResourceHttpRequestHandler and co
...
Issue: SPR-16616
2018-03-21 12:02:13 +01:00
Rossen Stoyanchev
f9df8c738a
Avoid inifinite recursion in UndertowServerHttpRequest
...
Undertow does not provide a way to check if data is available to read
but instead we have to try to read and see if any data is returned.
This makes it impossible to implement checkOnDataAvailable without
trying to read and that can lead to infinite recursion like this:
...
UndertowServerHttpRequest$RequestBodyPublisher.checkOnDataAvailable(UndertowServerHttpRequest.java:156)
AbstractListenerReadPublisher.changeToDemandState(AbstractListenerReadPublisher.java:177)
AbstractListenerReadPublisher.access$900(AbstractListenerReadPublisher.java:47)
AbstractListenerReadPublisher$State$4.onDataAvailable(AbstractListenerReadPublisher.java:319)
AbstractListenerReadPublisher.onDataAvailable(AbstractListenerReadPublisher.java:85)
UndertowServerHttpRequest$RequestBodyPublisher.checkOnDataAvailable(UndertowServerHttpRequest.java:156)
This commit prevent the call to checkOnDataAvailable() when switching
states from READING->DEMAND which implies we exited the readAndPublish
loop because there was no more data to read.
Issue: SPR-16545
2018-03-20 17:21:33 -04:00
Rossen Stoyanchev
88a17a4b10
Reactor2TcpClient constructor with address supplier
...
Issue: SPR-12452
2018-03-20 12:21:45 -04:00
Rossen Stoyanchev
0e28bee0f1
Clean duplicate separators in resource URLs
...
Most Servlet containers do this anyway, but not all, and not
consistently for forward and backslashes.
Issue: SPR-16616
2018-03-19 17:16:03 -04:00
Juergen Hoeller
fdd756ce8a
Upgrade to Log4J 2.11
2018-03-19 20:39:54 +01:00
Juergen Hoeller
442ddb0845
Correct documentation of default HttpMessageConverters in RestTemplate
...
Issue: SPR-7885
2018-03-19 20:38:14 +01:00
Rossen Stoyanchev
2ff35daf9b
Add test case based on SPR-16615
2018-03-19 13:32:10 -04:00
Rossen Stoyanchev
26bb3a0893
Improve docs on enabling Servlet 3 multipart
2018-03-19 11:20:08 -04:00
Rossen Stoyanchev
8651b8d4c1
Show use of RequestEntity rather than HttpEntity
...
Issue: SPR-16608
2018-03-19 08:57:01 -04:00
Juergen Hoeller
99399084a6
Consistent Future check (even if typically encountering RunnableFuture)
...
Issue: SPR-16607
2018-03-19 12:42:49 +01:00
Juergen Hoeller
578c04ea17
Consistent table declarations (including fix for disarranged FTL macros)
...
Issue: SPR-16612
2018-03-19 12:41:22 +01:00
Juergen Hoeller
702b27e1e4
Polishing
2018-03-19 12:05:04 +01:00
Juergen Hoeller
2c7efbb9d0
Deprecate TableMetaDataContext.getSimulationQueryForGetGeneratedKey
2018-03-19 12:04:51 +01:00
Juergen Hoeller
b7c423813d
CallMetaDataContext handles 'procedureColumnResult' as return parameter
...
Issue: SPR-16611
2018-03-19 12:04:15 +01:00
Juergen Hoeller
3c1adf7f6a
ThreadPoolTaskExecutor/Scheduler cancels remaining Futures on shutdown
...
Issue: SPR-16607
2018-03-19 01:45:22 +01:00
Wang Jingyu
9d63f805b3
Fix AsciiDoc typos in AOP documentation ( #1743 )
...
* Fix AsciiDoc typos in AOP documentation
* Polish formatting
2018-03-17 17:17:41 +01:00
Rossen Stoyanchev
30583a62cf
Fix Class isAssignableFrom checks for Resource conversion
...
Issue: SPR-16606
2018-03-16 16:18:05 -04:00
Rossen Stoyanchev
842c29103f
MultipartBodyBuilder supports PublisherEntity as input
...
Issue: SPR-16601
2018-03-16 16:18:05 -04:00
Rossen Stoyanchev
313c6cef32
Polish
2018-03-16 16:18:05 -04:00
Juergen Hoeller
4fef1fe820
Polishing
2018-03-16 18:49:12 +01:00
Juergen Hoeller
914b2470dc
Scope annotation in class hierarchies vs XML bean definition inheritance
...
Issue: SPR-16602
2018-03-16 18:49:00 +01:00
Arjen Poutsma
b31d55dfce
Deprecated ClientRequest.method in favor of ClientRequest.create
...
The former method clashed with the ClientRequest.method() getter.
2018-03-16 17:27:29 +01:00
Arjen Poutsma
04c2a2990d
Provide simple way to create ClientResponse
...
This commit introduces ClientResponse.Builder, an easier way to create a
ClientResponse from an existing response, or from scratch.
Issue: SPR-16553
2018-03-16 17:27:29 +01:00
Juergen Hoeller
f8588e364a
AcceptHeaderLocaleResolver keeps language match among supported locales
...
Issue: SPR-16599
2018-03-16 14:17:50 +01:00
Rossen Stoyanchev
7de2650a70
Drop @WebServlet annotation
...
Issue: SPR-16591
2018-03-16 00:14:54 -04:00
Rossen Stoyanchev
72bbb2619d
Commit actions are (properly) deferred
...
Issue: SPR-16597
2018-03-15 23:17:57 -04:00
Rossen Stoyanchev
541ee13934
Add bufferContent option to MockRestServiceServer
...
Issue: SPR-14694
2018-03-15 22:13:44 -04:00
Rossen Stoyanchev
f7e75a5b82
Polish MockRestServiceServer client tests
2018-03-15 22:13:43 -04:00
Rossen Stoyanchev
8d51d6769b
[docs] Polish reactive types section
2018-03-15 22:13:43 -04:00
Juergen Hoeller
2096676b3f
Upgrade to Apache Johnzon 1.1.7 and JRuby 9.1.16
2018-03-15 15:43:45 +01:00
Juergen Hoeller
d4a8f76bf9
Consistent volatile access to running flag in Lifecycle implementations
...
Issue: SPR-16488
2018-03-15 15:17:55 +01:00
Rossen Stoyanchev
b8d94f8a20
Improve WebFlux support for response status exceptions
...
Support @ResponseStatus annotated exceptions.
Supported root cause exceptions with response status information.
Issue: SPR-16567
2018-03-14 20:07:00 -04:00
Rossen Stoyanchev
cb8c6e3251
Add SimpleEvaluationContext
...
Issue: SPR-16588
2018-03-14 15:53:19 -04:00
Juergen Hoeller
58011f71e9
Consistent assertions for template method result vs servlet registration
2018-03-14 18:55:50 +01:00
Juergen Hoeller
c4e9ce8d0e
Clarified repeatable PropertySource annotation vs use as meta-annotation
...
Issue: SPR-16592
2018-03-14 18:53:50 +01:00
Juergen Hoeller
3988dd9ebb
Polishing
2018-03-14 17:24:58 +01:00
Juergen Hoeller
356ef45e99
ConcurrentReferenceHashMap properly handles getOrDefault for null values
...
Issue: SPR-16584
2018-03-14 17:17:04 +01:00
Stephane Nicoll
cc12afdea2
Add support for deferred import selector group
...
This commit allows several DeferredImportSelector instances to be
grouped and managed in a centralized fashion. This typically allows
different instances to provide a consistent ordered set of imports to
apply.
Issue: SPR-16589
2018-03-13 16:52:26 -04:00
Sam Brannen
5f4d5f17f7
Polishing
2018-03-13 16:48:52 +01:00
Sam Brannen
2c2ce55f47
Support target type in JsonPath assertions for MockMvc results
...
This commit picks up where SPR-14498 left off by adding support for an
explicit target type when using JsonPath to perform an assertion against
the response content using a Hamcrest Matcher.
Specifically, there is a new overloaded value(Matcher<T>, Class<T>)
method in JsonPathResultMatchers for use with Hamcrest matchers where
the target type (i.e., Class<T>) can be specified.
Issue: SPR-16587
2018-03-13 15:55:39 +01:00
Bronwyn Perry-Huston
d64f2eb038
Add JSON matcher to assert on request body
...
Support asserting JSON regardless of order and formatting.
Based on same JsonExpectationHelper used in ContentResultMatchers.
Issue: SPR-13919
2018-03-13 12:27:05 +01:00
Andy Clement
1db7e02de3
Modify SpEL code gen to take account of null safe refs
...
With this change the code generation for method and property
references is modified to include branching logic in the
case of null safe dereferencing (?.). This is complicated
by the possible usage of primitives on the left hand side
of the dereference. To cope with this case primitives are
promoted to boxed types when this situation occurs enabling
null to be passed as a possible result.
Issue: SPR-16489
2018-03-12 15:58:59 -07:00
Juergen Hoeller
41730220f4
InterceptingClientHttpRequest adapts to StreamingHttpOutputMessage
...
Issue: SPR-16582
2018-03-12 22:31:48 +01:00
Juergen Hoeller
499128dae7
URIEditor uses straight ClassPathResource.getURI() access
...
Issue: SPR-16581
2018-03-12 22:26:18 +01:00
sdeleuze
36a222acd5
Take into account the MimeType's charset in Jackson encoder
...
Notice that per specification, only Unicode is supported
(UTF8, UTF16_BE, UTF16_LE, UTF32_BE, UTF32_LE).
Issue: SPR-16539
2018-03-12 21:54:53 +01:00
Juergen Hoeller
99bb97388e
Upgrade to Tomcat 8.5.29 and Selenium 3.11
2018-03-12 20:42:11 +01:00
Juergen Hoeller
04a8f81710
Polishing
2018-03-12 20:42:03 +01:00
Juergen Hoeller
967a2ef2d2
Validate Class attributes as well as Class array attributes
...
Issue: SPR-16564
2018-03-12 20:41:44 +01:00
Juergen Hoeller
50e980c02f
Validate declared annotations before deciding between reflection and ASM
...
Issue: SPR-16564
2018-03-12 13:40:26 +01:00
Juergen Hoeller
1b1a69a144
SimpleAliasRegistry fully synchronizes registerAlias and removeAlias
...
Issue: SPR-16577
2018-03-12 13:27:48 +01:00
Sam Brannen
42b4f6e1ff
Clean up warnings and dead code in spring-core module
2018-03-11 14:13:30 +01:00
Sam Brannen
2575c26020
Clean up warnings and dead code in spring-webflux module
2018-03-11 13:44:27 +01:00
Stephane Nicoll
fb7c4a3066
Polish
2018-03-11 10:26:41 +01:00
Sam Brannen
1fa1f2b58a
Delete unused import
2018-03-10 16:56:33 +01:00
Rossen Stoyanchev
e228ded589
Include form and multipart data in WebFlux.fn chapter
...
Issue: SPR-16547
2018-03-09 21:16:19 -05:00
Rossen Stoyanchev
a3d8c60aba
Restructure functional endpoints chapter
...
This commit restructures the existing content to separate out Overview
content into its own section, and also introduces more formal structure
where reference type content can be expanded over time.
Issue: SPR-16547
2018-03-09 21:16:19 -05:00
Rossen Stoyanchev
3653a37e27
Polish tests
2018-03-09 21:16:18 -05:00
Sam Brannen
107f8bb5fd
Polishing
2018-03-09 18:19:30 +01:00
Sam Brannen
00fea23e6b
Introduce test for WebTestClient with RegEx-based JsonPath
2018-03-09 14:51:37 +01:00
Juergen Hoeller
2a3f90dc7b
Upgrade to Hibernate ORM 5.2.15 and Hibernate Validator 6.0.8
2018-03-09 09:40:12 +01:00
Juergen Hoeller
df8061494c
TransactionTemplate equality for same transaction manager only
...
Issue: SPR-16572
2018-03-09 09:39:45 +01:00
Juergen Hoeller
cf74b1b8be
Consistent result synchronization in WebAsyncManager
...
Issue: SPR-16571
2018-03-09 09:03:15 +01:00
igor-suhorukov
58a5138f26
simplify lambda expression
2018-03-08 23:44:32 +01:00
igor-suhorukov
2f9d0a7de8
simplify boolean NOT operation
2018-03-08 23:44:15 +01:00
igor-suhorukov
d89f9af22d
parentheses should be removed from a single lambda input parameter when its type is inferred
2018-03-08 21:55:45 +01:00
igor-suhorukov
0c45c4c6a3
lamdbas containing only one statement should not nest this statement in a block
2018-03-08 21:49:04 +01:00
igor-suhorukov
6163f2d32f
use more modern java API for empty collections
2018-03-08 21:41:57 +01:00
igor-suhorukov
32b689a994
use StringBuilder for complex string concatenation
2018-03-08 21:25:47 +01:00
igor-suhorukov
407ecf7334
to get rid of "magic" time constants
2018-03-08 20:37:48 +01:00
Brian Clozel
ed7684d2b2
Don't implicitly check preconditions on PUT requests
...
Prior to this commit, the `HttpEntityMethodProcessor` would check HTTP
conditions on non-safe requests (i.e. not GET/HEAD). This would prevent
Controllers from returning `ResponseEntity` containing response headers
with updated values of `"Last-Modified"` or `ETag` once the resource has
been updated.
This commit avoids those checks for non GET/HEAD requests - this code
can still be leveraged from Controllers themselves using
`ServletWebRequest::checkNotModified` methods.
Issue: SPR-15780
2018-03-08 19:43:01 +01:00
Juergen Hoeller
50253f670e
Quick access to volatile field (full synchronization only for lazy init)
...
Issue: SPR-16570
2018-03-08 18:13:00 +01:00
Juergen Hoeller
139dc1d373
Polishing (collapsed if checks, consistent downcasts, refined javadoc)
2018-03-08 18:11:57 +01:00
igor-suhorukov
0f7485b01d
Polish: reorder the modifiers to comply with the Java Language Specification.
2018-03-08 17:57:47 +01:00
Juergen Hoeller
a02aafe5fe
Regular getBeanInfo call for interfaces (enabling Introspector's cache)
...
Issue: SPR-16568
2018-03-08 12:29:09 +01:00
Rossen Stoyanchev
eb96ff2943
Doc improvements related to HTTP streaming
...
Issue: SPR-16494
2018-03-07 17:07:09 -05:00
Rossen Stoyanchev
568c93457a
Improve ResponseBodyEmitter error handling
...
After send error, ignore calls to complete or completeWithError by the
application in the same thread (e.g. try-catch block), to avoid a
competing with an error callback from servlet container during which
the same action is taken.
Issue: SPR-16548
2018-03-07 15:25:31 -05:00
Rossen Stoyanchev
e20652009d
Improve docs on SseEmitter onComplete/onError
...
Issue: SPR-16548
2018-03-07 14:59:18 -05:00
Sam Brannen
b14301bfba
Allow TestContextManager to be compiled in Eclipse again
2018-03-07 17:44:24 +01:00
Violeta Georgieva
030bc224e3
Invert the check for ServletInputStream.isReady()
...
When checking whether there is still request body the first method
that should be checked is ServletInputStream.isReady() and then
ServletInputStream.isFinished(). ServletInputStream.isReady() is the active
method whereas the ServletInputStream.isFinished() is not.
It is important to call ServletInputStream.isReady() because if it returns
false it will schedule a dispatch and if the request body is already read it will
send onAllDataRead event.
Issue: SPR-16521
2018-03-07 11:23:10 -05:00
Juergen Hoeller
20287e0cb0
Polishing
2018-03-07 17:09:09 +01:00
Juergen Hoeller
934a995acb
Strong recommendation for OpenPDF 1.0.5 instead of iText 2.1.7
...
Issue: SPR-16107
(cherry picked from commit b70d400 )
2018-03-07 17:08:45 +01:00
Sam Brannen
0f5a3e2647
Polish formatting in Groovy scripts
2018-03-07 16:09:04 +01:00
Sam Brannen
df0b39e8ac
Add missing packages to Groovy scripts
2018-03-07 16:09:03 +01:00
Juergen Hoeller
f57fcdee3c
Polishing
2018-03-07 15:49:58 +01:00
Patrick0308
6f4d25a6e6
Polish "Use Java 8 forEach method on Map"
2018-03-07 15:39:58 +01:00
Sam Brannen
2454b31b30
Polish MockRestRequestMatchers[Tests]
2018-03-07 14:20:57 +01:00
Sam Brannen
f932796201
Polishing
2018-03-07 13:22:36 +01:00
Sam Brannen
fef0c7b151
Throw AssertionError instead of IAE in MockRestRequestMatchers
2018-03-07 13:22:21 +01:00
Yannik Hampe
4094879daf
Make MockRestRequestMatchers independent of JUnit ( #1720 )
...
MockRestRequestMatchers was using org.junit.Assert.assertNotNull
and thus could not be used in projects that use e.g. TestNG instead
of JUnit 4.
2018-03-07 13:07:32 +01:00
Rossen Stoyanchev
27815847b1
content-length support in EncoderHttpMessageWriter
...
EncoderHttpMessageWriter checks explicitly for Mono publishers and sets
the content length, if it is known for the given data item.
Issue: SPR-16542
2018-03-06 19:04:02 -05:00
Rossen Stoyanchev
7a8e0ff3c3
Update ServerWebExchangeTests
2018-03-06 18:12:37 -05:00
Juergen Hoeller
eb9c43dcbc
Reliably expose nested cause exception message for PersistenceException
...
Issue: SPR-16559
2018-03-06 23:06:14 +01:00
Juergen Hoeller
90d768bb7f
Overloaded convenience setters: setCacheControl(CacheControl), setExpires(ZonedDateTime)
...
Issue: SPR-16562
2018-03-06 23:06:04 +01:00
Juergen Hoeller
82515a3f01
Consistent incrementer arrangement for PostgreSQL, DB2 and SAP HANA
...
Includes related polishing in core.metadata and datasource.embedded and a revision of the corresponding database definitions in sql-error-codes.
Issue: SPR-16558
2018-03-06 13:36:15 +01:00
Juergen Hoeller
4a4f2c2f08
Drop version check in isGetGeneratedKeysSimulated (for PostgreSQL 10)
...
Issue: SPR-16556
2018-03-06 13:31:26 +01:00
Rossen Stoyanchev
e48def2d35
Set readyToWrite flag after cached signals emitted
...
Issue: SPR-16555
2018-03-05 23:23:39 -05:00
Brian Clozel
6d26e61ac7
Guard against invalid paths in ResourceUrlProvider
...
This commit makes sure that no `StringIndexOutOfBoundsException` is
thrown when `getForRequestUrl` is called with a URL that's shorter than
the expected context path.
Issue: SPR-16526
2018-03-05 15:26:56 +01:00
Juergen Hoeller
4f8c4546f1
Upgrade to SnakeYAML 1.20 and Selenium 3.10
2018-03-05 15:25:01 +01:00
Juergen Hoeller
a0cc80063d
Concurrency and exception message refinements for test transactions
2018-03-05 13:00:35 +01:00
Juergen Hoeller
ff818d56a4
Correct description for class-level @Transactional with AspectJ
...
Includes proper quoting of AspectJ expressions in Asciidoc.
Issue: SPR-16552
Issue: SPR-16549
2018-03-05 12:22:17 +01:00
Juergen Hoeller
c543368aad
Polishing
2018-03-03 17:33:48 +01:00
igor-suhorukov
06fef1e5a4
Polish: assertion arguments should be passed in the correct order
2018-03-03 16:14:45 +01:00
Stephane Nicoll
38ebb6c982
Restore includes and isCompatibleWith
...
See gh-1713
2018-03-03 12:41:58 +01:00
Stephane Nicoll
d89d95ef1c
Merge pull request #1715 from igor-suhorukov:master
...
* pr/1715:
Polish
2018-03-03 12:12:45 +01:00
igor-suhorukov
129530f792
Polish
...
Closes gh-1715
2018-03-03 12:12:15 +01:00
Rossen Stoyanchev
cef98e1125
FilePart uses correct flags when opening files
...
Issue: SPR-16546
2018-03-02 10:42:50 -05:00
Juergen Hoeller
cec7204fca
Polishing
2018-03-02 13:53:17 +01:00
Juergen Hoeller
2e164787db
Upgrade to Groovy 2.4.14 and Undertow 1.4.23
2018-03-02 13:52:42 +01:00
igor-suhorukov
ed936cbd89
Polish: Overriding methods should do more than simply call the same method in the super class
2018-03-02 00:06:27 +01:00
Juergen Hoeller
cd4f0935c5
Revised deprecation markers
2018-03-01 23:43:06 +01:00
Juergen Hoeller
cf1d162e1c
Upgrade to Kotlin 1.2.30
2018-03-01 23:41:59 +01:00
Rossen Stoyanchev
9352e3d047
Add ClientRequest attribute for URI template
...
Issue: SPR-16537
2018-03-01 17:06:24 -05:00
Rossen Stoyanchev
36cfdf68b1
Correct log level
...
Issue: SPR-16528
2018-03-01 15:52:59 -05:00
Juergen Hoeller
fa670dd07d
Indexer enforces target descriptor only after non-null target check
...
Issue: SPR-16544
2018-03-01 13:31:56 +01:00
Juergen Hoeller
bfddbbe731
Polishing
2018-03-01 01:39:06 +01:00
Juergen Hoeller
478162741d
WebApplicationContextFacesELResolver.isReadOnly returns true for WAC
...
Issue: SPR-16543
2018-03-01 01:32:11 +01:00
Juergen Hoeller
6f7ad0304c
Polishing
2018-03-01 00:29:38 +01:00
igor-suhorukov
83300c4b27
Polish: follow naming convention
2018-03-01 00:22:29 +01:00
igor-suhorukov
8080f56db8
Polish: "@Override" should be used on overriding and implementing methods
2018-03-01 00:15:18 +01:00
Juergen Hoeller
a19d4deb24
Polishing
2018-02-28 16:41:59 +01:00
Juergen Hoeller
33cd160861
Upgrade to Reactor Bismuth SR7, Hibernate ORM 5.2.14, Common Annotations 1.3.2
2018-02-28 14:01:04 +01:00
Juergen Hoeller
9962df6527
Polishing
2018-02-28 00:09:15 +01:00
Juergen Hoeller
95aad9cdc2
Interrupt listener invoker threads on shutdown (after initial wait step)
...
Issue: SPR-16536
2018-02-28 00:06:46 +01:00
igor-suhorukov
d1ccecd021
Polish: to get rid unnecessary array creation
2018-02-27 23:37:54 +01:00
Rossen Stoyanchev
bf0308b0cf
Merge pull request #1706 from mariusz-jasinski/SPR-16519
2018-02-27 15:39:30 -05:00
Rossen Stoyanchev
356ef5199e
Polish
...
Issue: SPR-16519
2018-02-27 15:38:34 -05:00
Mariusz Jasinski
184ed6da57
Overloaded acknowledge method with StompHeaders
...
Issue: SPR-16519
2018-02-27 15:38:10 -05:00
igor-suhorukov
7bce04c06c
Polish: combine catches block with same body
2018-02-27 12:51:28 +01:00
Rossen Stoyanchev
f835f7b500
Switch to Bismuth snapshots
2018-02-26 20:41:00 -05:00
Rossen Stoyanchev
e12fcca1e3
Fix failing test
2018-02-26 20:35:17 -05:00
Rossen Stoyanchev
e0e90ed006
SSE writer respects charset in MediaType
...
Issue: SPR-16516
2018-02-26 16:42:00 -05:00
Juergen Hoeller
6663d0ff07
Support for ResolvableType.getType().getTypeName() on Java 8
...
Issue: SPR-16535
2018-02-26 17:19:12 +01:00
Juergen Hoeller
c2d5ca9811
Proper nullable return declaration for AbstractValueAdaptingCache.lookup
...
Issue: SPR-15540
2018-02-26 13:05:12 +01:00
Juergen Hoeller
7d89de06e3
Enforce GMT timezone for testBindInstantFromJavaUtilDate
...
Issue: SPR-16534
2018-02-26 13:02:17 +01:00
Juergen Hoeller
15c97b753e
Revised URI building in http.server (consistently use raw attributes)
...
Issue: SPR-16434
2018-02-26 13:00:38 +01:00
sdeleuze
c6f5acf15d
Upgrade Dokka to 0.9.16
2018-02-26 11:07:02 +01:00
Juergen Hoeller
2a379e099c
Polishing
2018-02-25 21:24:38 +01:00
Juergen Hoeller
8a56cd0e8b
Revised URI building in http.server (avoid package cycle with web.util)
...
Issue: SPR-16434
2018-02-25 21:24:10 +01:00
igor-suhorukov
b202205d77
Polish: String.valueOf() should not be appended to a String
2018-02-25 21:10:19 +01:00
igor-suhorukov
49fd724d8f
Polish: String function use should be optimized for single characters
2018-02-25 20:48:47 +01:00
Rossen Stoyanchev
9c55dd5961
Additional shortcut with charset in WebSocketMessage
2018-02-25 14:41:13 -05:00
Alexander Sparkowsky
d3eff49c59
Fix typos in webmvc documentation
2018-02-25 19:40:25 +01:00
Juergen Hoeller
3732032ee4
Customizable PreparedStatementCreator in NamedParameterJdbcTemplate
...
Issue: SPR-16050
2018-02-25 18:23:00 +01:00
Juergen Hoeller
0ef9568c06
Upgrade to OkHttp 3.10 (as well as RxJava 2.1.10 and Caffeine 2.6.2)
2018-02-25 15:38:56 +01:00
Juergen Hoeller
9e55422334
Polishing
2018-02-25 15:38:32 +01:00
Juergen Hoeller
01d9475bcc
Turn registered controller classes into controller instances on the fly
...
Issue: SPR-16520
2018-02-25 14:29:44 +01:00
Juergen Hoeller
85984f3b72
Mark Castor tests as deprecated
...
Issue: SPR-16219
2018-02-25 14:29:28 +01:00
igor-suhorukov
c782075a13
Polish: Array designators "[]" should be on the type, not the variable
2018-02-25 13:14:20 +01:00
Juergen Hoeller
7f58d9ede0
Efficiently merge bean name result with parent result (possibly empty)
2018-02-25 00:27:06 +01:00
Juergen Hoeller
3531c104b0
Prefer Collections.addAll call with array over Set.addAll(Arrays.asList)
2018-02-25 00:21:39 +01:00
igor-suhorukov
67a91cf6f9
Polish: redundant pairs of parentheses should be removed
2018-02-25 00:01:43 +01:00
Juergen Hoeller
eeecbaef2c
Gson/JsonbHttpMessageConverter keeps output stream open (for SseEmitter)
...
Issue: SPR-16529
2018-02-23 10:49:38 +01:00
Juergen Hoeller
578c078082
Polishing
2018-02-22 15:14:20 +01:00
Juergen Hoeller
0f740527c1
Deprecated StringUtils.mergeStringArrays
2018-02-22 15:13:57 +01:00
Juergen Hoeller
1278459ad5
ReactorHttpHandlerAdapter logs bad request at warn level only
...
Issue: SPR-16524
2018-02-22 15:12:51 +01:00
Juergen Hoeller
3d6483873f
Upgrade to Netty 4.1.22
2018-02-22 15:11:45 +01:00
Juergen Hoeller
0939492966
Upgrade to Apache Johnzon 1.1.6
2018-02-22 11:32:14 +01:00
Juergen Hoeller
a5cbf5fe24
Consistent use of Collection.toArray with zero-sized array argument
...
Includes consistent use of ClassUtils.toClassArray (as non-null variant)
Issue: SPR-16523
2018-02-22 11:29:46 +01:00
Jinsoo Park
1ab3f88e82
Fix typo
...
MockMVc -> MockMvc
2018-02-21 14:22:40 -05:00
Rossen Stoyanchev
bb8cddda23
Assert instances (vs classes) in MockMvc/WebTestClient
...
Issue: SPR-16520
2018-02-21 14:01:53 -05:00
Rossen Stoyanchev
3bfa56dff2
Polish
2018-02-21 10:29:46 -05:00
Rossen Stoyanchev
6959e66b25
JsonEOFException is wrapped as DecodingError
...
Jackson2Tokenizer now also wraps JsonProcessingException's on
endOfInput(), as it also does in tokenize(DataBuffer). This ensures
treating those errors as 400 vs 500.
Issue: SPR-16521
2018-02-21 10:12:33 -05:00
Rossen Stoyanchev
a6d527e57a
Call onAllDataRead when read() returns -1
...
When read returns -1, we know we've reached the end of input. Instead
of waiting for the onAllDataRead container callback, this commit
proactively calls onAllDataRead.
Issue: SPR-16521
2018-02-21 09:44:24 -05:00
Spring Buildmaster
1aaefbdd03
Next Development Version
2018-02-19 11:12:59 +00:00
Juergen Hoeller
f316f6a46a
Remove unnecessary assertions from annotation resolution code paths
...
Issue: SPR-16514
2018-02-19 10:29:09 +01:00
Juergen Hoeller
3ba858213f
Upgrade to RxJava 1.3.6
2018-02-18 23:43:32 +01:00
Juergen Hoeller
0de36d2883
Consistent HttpMethod identity comparisons
2018-02-18 22:01:22 +01:00
Stephane Nicoll
d1e9161ca6
Merge pull request #1691 from theHacker:patch-1
...
* pr/1691:
Polish Javadoc
2018-02-18 08:57:51 +01:00
Alexander Münch
37f19a4b43
Polish Javadoc
...
WebSocketMessageBrokerStats's Javadoc now states the correct default
logging period.
Closes gh-1691
2018-02-18 08:57:08 +01:00
Juergen Hoeller
1ea233ac56
Upgrade to Reactor Bismuth SR6
2018-02-17 23:23:24 +01:00
Juergen Hoeller
d7cab23e6d
Consistent use of StringUtils.toStringArray
...
(cherry picked from commit 6d11b40 )
2018-02-16 20:49:17 +01:00
Rossen Stoyanchev
c198138d4e
Polish URI encoding section
2018-02-16 14:35:15 -05:00
Rossen Stoyanchev
2b4250ec44
[doc] WebFlux has coverage of URI links
...
Issue: SPR-16423
2018-02-16 12:58:01 -05:00
Rossen Stoyanchev
9c679fccdf
Fix intdentation
2018-02-16 12:34:25 -05:00
Rossen Stoyanchev
ac495d7380
Polish ForwardedHeaderFilter and related code
...
Issue: SPR-16506
2018-02-16 12:17:23 -05:00
Juergen Hoeller
c9d08bff41
DefaultListableBeanFactory only calls getPriority for non-null instance
...
Issue: SPR-16508
2018-02-16 17:27:42 +01:00
Rossen Stoyanchev
6920a1f958
ForwardedHeaderFilter handles query+fragment correctly
...
Issue: SPR-16506
2018-02-16 11:10:50 -05:00
Rossen Stoyanchev
dcf5c646be
Use correct X509 certificate attribute name
...
Issue: SPR-16507
2018-02-16 09:45:17 -05:00
Sam Brannen
1513e7be63
Polishing
2018-02-16 14:25:13 +01:00
Juergen Hoeller
8d3264f680
Prefer List.sort(Comparator) over Collections.sort(List, Comparator)
2018-02-16 10:23:18 +01:00
Juergen Hoeller
b35274f5a7
WebSocket callbacks need to remain inner classes (retaining generics)
2018-02-16 10:22:05 +01:00
igor-suhorukov
d5b0df8c3f
Polish codacy warning: fields should be declared at the top of the class, before any method declarations, constructors, initializers or inner classes.
2018-02-16 09:38:19 +01:00
igor-suhorukov
2be4985b8f
Polish: anonymous inner classes containing only one method should become lambdas,
...
use getOrDefault instead of ternary operator
2018-02-16 09:38:19 +01:00
Rossen Stoyanchev
aa4bcedad3
Up-to-date and expanded coverage on preparing URIs
...
Issue: SPR-16422
2018-02-15 23:25:52 -05:00
Rossen Stoyanchev
9801afb85d
Fix compile error
...
Update places that call UriUtils to catch the right exception that is
now raised as a result of using Charet.forName.
2018-02-15 15:59:21 -05:00
Rossen Stoyanchev
4db0d999af
Polish UriBuilderFactory and implementation
...
Issue: SPR-16422
2018-02-15 15:44:44 -05:00
Rossen Stoyanchev
3d20db1e49
Polish UriUtils, UriComponents
...
Issue: SPR-16422
2018-02-15 15:44:37 -05:00
Rossen Stoyanchev
394c30efd0
Update to Bismuth snapshots
2018-02-15 11:08:05 -05:00
Juergen Hoeller
cd8a1bdb8b
AcceptHeaderLocaleContextResolver leniently handles invalid header value
...
Also falls back to language-only match among its supported locales now.
Issue: SPR-16500
Issue: SPR-16457
2018-02-15 13:14:49 +01:00
sdeleuze
067ad4c57a
Update Kotlin reference documentation
2018-02-15 11:46:30 +01:00
Andy Wilkinson
52dfc4ebc4
Align spring-webflux's Webjars Locator dependency with spring-webmvc
2018-02-15 00:58:17 +01:00
Rossen Stoyanchev
3367df8637
Suggest use of OkHttp MockWebServer
...
Issue: SPR-16482
2018-02-14 17:32:24 -05:00
Juergen Hoeller
7baf33fea0
Avoid multiple warnings related to jackson-module-kotlin
...
Issue: SPR-16497
2018-02-14 21:19:57 +01:00
Rossen Stoyanchev
1aeae5d40d
Fix compiler error
2018-02-14 12:23:52 -05:00
Rossen Stoyanchev
0ead0503eb
AbstractJackson2Encoder uses private fields
...
Make the protected fields in AbstractJackson2Encoder private plus
minor refactoring to the way streaming separators are applied.
The current (5.0.3) behavior is to always use '\n', but in 5.0.4 the
newly supported "application/stream+x-jackson-smile" needs to be
excluded from that. For now, separator determination remains private
in the abstract base class, but current behavior remains which is to
apply '\n' by default.
Issue: SPR-15424
2018-02-14 12:15:01 -05:00
Juergen Hoeller
6d7573262e
FormTag skips rendering of hidden fields in case of empty Map
...
Issue: SPR-16498
2018-02-14 17:41:45 +01:00
Juergen Hoeller
de7ff556d9
Polishing
2018-02-14 17:41:08 +01:00
Sam Brannen
24adc7d3c6
Delete unused imports
2018-02-14 16:55:57 +01:00
Juergen Hoeller
95f7180298
Explicit documentation notes on transacted sessions vs AUTO_ACKNOWLEDGE
...
Issue: SPR-16487
2018-02-14 15:32:23 +01:00
Juergen Hoeller
3b810f3544
Consistent Class array vs vararg declarations (and related polishing)
2018-02-14 14:44:00 +01:00
Juergen Hoeller
46cbdff5c3
Consistent ControllerAdvice applicability against user-declared class
...
Issue: SPR-16496
2018-02-14 14:41:16 +01:00
Juergen Hoeller
766e6028d7
Defensively handle DatabaseMetaData.getConnection() returning null
...
Issue: SPR-16495
2018-02-14 14:40:52 +01:00
igor-suhorukov
7826567df6
Polish: lamdbas containing only one statement should not nest this statement in a block
2018-02-14 01:22:01 +01:00
Juergen Hoeller
99662bc702
Polishing
2018-02-13 23:32:10 +01:00
igor-suhorukov
45e520ed86
Polish: remove unused private fields, remove empty operator
2018-02-13 23:00:18 +01:00
Rossen Stoyanchev
1908080d5c
Test for disconnected client detection
...
Issue: SPR-16494
2018-02-13 14:58:10 -05:00
Rossen Stoyanchev
8c37ad7ac5
Startup/shutdown log messages for AbstractHttpServer
...
Issue: SPR-16494
2018-02-13 14:58:10 -05:00
Juergen Hoeller
37609e4ede
Object/FieldError exposes source object through unwrap/contains methods
...
Issue: SPR-16372
2018-02-13 17:58:31 +01:00
Stephane Nicoll
6bbc5b0f26
Merge pull request #1681 from olivergierke-patch-1
...
* pr/1681:
Add explicit anchor to discussion about constructor VS. setter injection
2018-02-13 17:31:36 +01:00
Oliver Gierke
30316b16e5
Add explicit anchor to discussion about constructor VS. setter injection
...
This commit adds an Asciidoc anchor to the section on different injection
styles to be able to link to the discussion as official recommendation.
Closes gh-1681
2018-02-13 17:29:56 +01:00
Juergen Hoeller
0c78c9c6f7
Refined javadoc and exception messages
2018-02-13 15:25:42 +01:00
Juergen Hoeller
d3cee45f30
Polishing
2018-02-13 13:15:29 +01:00
Sam Brannen
c11a963b1e
Remove dependency on apiguardian-api in spring-test
...
The apiguardian-api dependency is once again a mandatory transitive
dependency of JUnit 5 since JUnit Jupiter 5.0.3.
2018-02-13 13:04:48 +01:00
Sam Brannen
02fb5a4121
Use effectively final local variable in lambda expression
2018-02-13 12:56:36 +01:00
Juergen Hoeller
c9aede3727
Upgrade to Tomcat 8.5.28 (and Selenium HtmlUnit Driver 2.29.2)
2018-02-13 12:44:34 +01:00
Vladimir Sitnikov
659f13be1c
Avoid creating message arguments to Assert.isABC calls
...
See https://github.com/spring-projects/spring-framework/commit/67f184293b94c076b0474231f739a74f42d5ffa8
2018-02-13 12:31:49 +01:00
Juergen Hoeller
b449928691
Avoid unused arguments for internal delegates
2018-02-13 11:40:28 +01:00
Rossen Stoyanchev
0585fb3999
Polish
2018-02-12 22:04:53 -05:00
Rossen Stoyanchev
4ee09c89b5
Fix regression in MappingJackson2MessageConverter
...
As of 4.3.13 MappingJackson2MessageConverter uses the MethodParameter
hint to obtain generic type information but it needs to be careful, and
nest one level, if the target parameter type has a Message wrapper.
Issue: SPR-16486
2018-02-12 21:30:26 -05:00
Juergen Hoeller
3c631f8ea0
SubProtocolWebSocketHandler closes sessions outside of lifecycle monitor
...
Issue: SPR-16488
2018-02-13 00:04:55 +01:00
Juergen Hoeller
a5a069c5b1
Upgrade to JavaMail 1.6.1
2018-02-13 00:02:43 +01:00
Rossen Stoyanchev
73095955bf
Refine logging in ExchangeFunctions
...
Notably do not log error signal since we are letting that propagate.
Also improve logging messages vs relying on the log operator.
Issue: SPR-16484
2018-02-12 15:56:04 -05:00
Juergen Hoeller
b089ded5b0
Polishing
2018-02-12 15:55:18 +01:00
Juergen Hoeller
d5cabca2f7
Internal adaptation to Deque semantics
2018-02-12 15:55:09 +01:00
Stephane Nicoll
e7076ad35c
Merge pull request #1676 from fabriziocucci:patch-1
...
* pr/1676:
Fix indentation in doc
2018-02-12 08:12:55 +01:00
Fabrizio Cucci
13f942fab7
Fix indentation in doc
...
Closes gh-1676
2018-02-12 08:11:34 +01:00
Kazuki Shimizu
8c623c8a42
Supports ConversionService on SingleColumnRowMapper
...
Issue: SPR-16483
2018-02-11 22:36:50 +01:00
igor-suhorukov
711b0f50f2
Polish: replace the synchronized class "Stack" by an unsynchronized one such as "Deque".
2018-02-11 21:15:46 +01:00
Juergen Hoeller
3cbb2b7616
Upgrade to Hibernate ORM 5.1.12 (for integration tests)
2018-02-10 21:57:59 +01:00
Juergen Hoeller
d00e1c5e4f
Polishing
2018-02-10 21:35:46 +01:00
Juergen Hoeller
b5bd977d9a
Revised assertion refactoring in AbstractExpressionTests
2018-02-10 18:17:40 +01:00
Juergen Hoeller
91965500cb
Upgrade to TestNG 6.14.2 and Selenium 3.9.1
2018-02-10 17:48:58 +01:00
Juergen Hoeller
55ee250659
Object/FieldError stores source object as transient (not serialized)
...
Issue: SPR-16372
2018-02-10 17:41:30 +01:00
igor-suhorukov
0ee505b73e
Polish: assertion arguments should be passed in the correct order,
...
use assertNull instead of assertEquals(null, value),
declare delta as double value in assertEquals
2018-02-10 17:17:28 +01:00
Juergen Hoeller
39201adca4
Consistent handling of InterruptedException
...
Issue: SPR-16479
2018-02-10 13:03:33 +01:00
igor-suhorukov
6ea0af3540
Polish: Lambdas should be replaced with method references
2018-02-10 12:09:46 +01:00
igor-suhorukov
d3a1d44864
Polish: Maps with keys that are enum values should be replaced with EnumMap
2018-02-10 12:09:33 +01:00
igor-suhorukov
9a6fbf59c5
Polish: follow name convention - make immutable fields final
2018-02-10 12:09:19 +01:00
Juergen Hoeller
9bb7fcd997
Object/FieldError provides access to source object (exception/violation)
...
Issue: SPR-16372
2018-02-09 18:42:56 +01:00
Juergen Hoeller
e873b18f43
ResolvableType.forClassWithGenerics retains original TypeVariables
...
Issue: SPR-16456
2018-02-09 15:29:00 +01:00
Juergen Hoeller
a639535f33
Upgrade to Netty 4.1.21
2018-02-09 13:33:16 +01:00
Juergen Hoeller
c8b860c4b8
Streamlined BeanFactory access within DefaultLifecycleProcessor
2018-02-09 13:31:31 +01:00
Juergen Hoeller
fc93f99f53
Relaxed procedure existence check on Oracle (for non-exposed synonyms)
...
Issue: SPR-16478
2018-02-09 13:30:31 +01:00
Stephane Nicoll
8222698eb2
Merge pull request #1569 from lonre:patch-1
...
* pr/1569:
Fix typo
2018-02-09 10:18:33 +01:00
Lonre Wang
b8c6734580
Fix typo
...
Closes gh-1569
2018-02-09 10:18:16 +01:00
Stephane Nicoll
991eb4858e
Update copyright header
2018-02-09 10:16:58 +01:00
Stephane Nicoll
0d757bf3f7
Merge pull request #1671 from igor-suhorukov:master
...
* pr/1671:
Change this "try" to a try-with-resources
2018-02-09 10:13:22 +01:00
igor-suhorukov
c0b4b5787f
Change this "try" to a try-with-resources
...
Closes gh-1671
2018-02-09 10:12:55 +01:00
Stephane Nicoll
909cacec42
Merge pull request #1670 from igor-suhorukov
...
* pr/1670:
Collection.isEmpty() should be used to test for emptiness
2018-02-09 10:12:06 +01:00
igor-suhorukov
e381514b07
Collection.isEmpty() should be used to test for emptiness
...
Closes gh-1670
2018-02-09 10:11:44 +01:00
Stephane Nicoll
7da40abba5
Merge pull request #1669 from igor-suhorukov
...
* pr/1669:
Polish
2018-02-09 10:11:16 +01:00
igor-suhorukov
4c888d0f32
Polish
...
Closes gh-1669
2018-02-09 10:10:05 +01:00
Arjen Poutsma
fb61af1882
Allow "release on close" for DataBuffer.asInputStream
...
This commit introduces DataBuffer.asInputStream(boolean), that can
release the underlying buffer when the stream is closed.
Furthermore, this commit adds additional javadoc.
Issue: SPR-16444
2018-02-08 10:11:53 +01:00
Juergen Hoeller
4318710b9b
Upgrade to Hibernate 5.2.13
2018-02-07 14:14:22 +01:00
Juergen Hoeller
285b01fc79
Test with all-negated profile condition
...
Issue: SPR-16465
2018-02-07 14:14:11 +01:00
Juergen Hoeller
ac7a699356
NamedParameterUtils.isParameterSeparator checks for non-ASCII characters
...
Issue: SPR-16472
2018-02-07 14:10:39 +01:00
Johnny Lim
5c0ddf3c69
Polishing
2018-02-07 10:59:10 +01:00
Rossen Stoyanchev
1b98d09855
Fix copy+paste error
2018-02-06 15:43:05 -05:00
Rossen Stoyanchev
9551b3a9bb
Eliminate sub-sections in Spring MVC test chapter
...
The very short, summary mini-sections confuse the client-side code that
highlights the TOC item. This commit removes the sub-sections.
2018-02-06 12:16:31 -05:00
Rossen Stoyanchev
efdfe9ad8d
Minor Javadoc update
2018-02-06 11:23:53 -05:00
Rossen Stoyanchev
1653a32a04
Stabilize Flux.interval emissions in integration tests
...
After this commit the use of interval in tests is combined with
take(n).onBackpressureBuffer(n) to ensure emissions don't fail if the
fixed rate is exceeded (e.g. on slow CI server).
Tests that verify N number of items followed by verifyOnComplete()
should set the number of emissions to N.
Tests that verify N number of items followed by thenCancel() should
set the number of buffered to an arbitrary number greater than N.
2018-02-06 11:01:19 -05:00
Juergen Hoeller
41a4bdea55
Upgrade to Kotlin 1.2.21
2018-02-05 22:51:59 +01:00
Juergen Hoeller
5c813a366b
Consistent use of @throws instead of @exception
2018-02-05 22:51:51 +01:00
Juergen Hoeller
0ac117ff27
Explicit notes on isolation level handling in participating transactions
...
Issue: SPR-16463
2018-02-05 22:51:43 +01:00
Juergen Hoeller
817a836960
Consistent object type exposure for JSON rendering (workaround for Gson)
...
Issue: SPR-16461
2018-02-05 22:51:33 +01:00
sdeleuze
31b25b5808
Make WebFlux Jackson refdoc section relevant for Smile
...
Issue: SPR-16151
2018-02-05 18:00:41 +01:00
sdeleuze
196f3f8cc1
Improve WebFlux exception logging
...
This commit updates HttpWebHandlerAdapter and
ResponseStatusExceptionHandler in order to specify the method/uri in the
logged message.
It also logs a WARN message for bad request (400) HTTP responses in
order to get some logs when an exception is thrown due to client error
(unable to deserialize request body for example).
Issue: SPR-16447
2018-02-05 16:08:22 +01:00
Stephane Nicoll
fdde9de005
Merge pull request #1606 from kamilszymanski:arraycopy
...
* pr/1606:
Replace manual array copy with native method call
2018-02-04 11:41:10 +01:00
Kamil Szymanski
61117245a6
Replace manual array copy with native method call
...
Closes gh-1606
2018-02-04 11:39:43 +01:00
Rossen Stoyanchev
f20eacdb9b
Polish
2018-02-02 15:06:59 -05:00
Rob Winch
0cd427bdd3
MockHttpServletRequestBuilder decodes pathInfo
...
Previously MockHttpServletRequestBuilder calculated the pathInfo from the
provided URL without decoding the value. This meant that the pathInfo
incorrectly included URL encoded values.
Now MockHttpServletRequestBuilder properly decodes the pathInfo.
Fixes: SPR-16453
2018-02-02 15:00:47 -05:00
Arjen Poutsma
609f173ebc
StringDecoder shouldn't chop off strings randomly
...
Issue: SPR-16337
2018-02-02 15:59:21 +01:00
Juergen Hoeller
cfe7ff1c81
MimeType.compareTo uses case-insensitive Charset (analogous to equals)
...
Issue: SPR-16458
2018-02-02 13:44:07 +01:00
Juergen Hoeller
4dc964544f
AcceptHeaderLocaleResolver falls back to language-only match among its supported locales
...
Issue: SPR-16457
2018-02-02 12:41:59 +01:00
Juergen Hoeller
c5a33d62dd
TypeVariablesVariableResolver compares variables by full equality again
...
Issue: SPR-16456
2018-02-02 12:41:43 +01:00
Juergen Hoeller
30f6e447d5
TypeVariablesVariableResolver compares variables by name
...
Issue: SPR-16456
2018-02-02 11:34:36 +01:00
Juergen Hoeller
b3e21ec737
MockHttpServletRequest leniently handles invalid Accept-Language header
...
Issue: SPR-16454
2018-02-02 11:34:22 +01:00
Juergen Hoeller
7f96827ade
Polishing
2018-02-02 11:34:03 +01:00
Juergen Hoeller
4a1cc9ced7
Constructor-provided field values get recorded for failed binding result
...
Also, TypeMismatchExceptions get registered via BindingErrorProcessor.
Issue: SPR-16449
2018-02-02 11:33:56 +01:00
Juergen Hoeller
9c069f6cb1
Avoid String concatenation for not-null assertion in BeanProperty/DirectFieldBindingResult
...
Issue: SPR-16455
2018-02-02 11:33:39 +01:00
Juergen Hoeller
b6ecfcf9ec
CachingConnectionFactory makes its Session caching inactive during reset
...
Issue: SPR-16450
2018-02-02 11:33:10 +01:00
Stephane Nicoll
10caaefd0b
Merge pull request #1657 from izeye:polish-20180201
...
* pr/1657:
Polish SqlParameter.sqlTypesToAnonymousParameterList()
2018-02-01 09:15:37 +01:00
Johnny Lim
df3241e072
Polish SqlParameter.sqlTypesToAnonymousParameterList()
...
Closes gh-1657
2018-02-01 09:14:56 +01:00
Stephane Nicoll
f0dd31a639
Merge pull request #1656 from adamlehenbauer:master
...
* pr/1656:
Fix typos
2018-02-01 08:44:57 +01:00
adamlehenbauer
8de80ffe9e
Fix typos
...
Closes gh-1656
2018-02-01 08:43:49 +01:00
Rossen Stoyanchev
0ded239453
[doc] Update Spring MVC exception handling content
...
Issue: SPR-16394
2018-01-31 23:03:10 -05:00
Rossen Stoyanchev
d9a93f44ae
[doc] Update links to composed annotations
2018-01-31 20:39:34 -05:00
sdeleuze
b6c78452b2
Update and improve script templating documentation
...
Issue: SPR-16447
2018-01-31 17:57:41 +01:00
Rossen Stoyanchev
b77032c36e
[doc] Explain custom/composed @RequestMapping annotations
...
Issue: SPR-16442
2018-01-31 11:03:37 -05:00
sdeleuze
b2681e1f4a
Add ViewResolverRegistry#scriptTemplate in WebFlux
...
Issue: SPR-16431
2018-01-31 10:38:08 +01:00
Juergen Hoeller
c7f60d1799
SchedulerFactoryBean always ignores local factory settings in case of an external SchedulerFactory instance (expecting it to be fully initialized)
...
This commit includes various javadoc fixes and related refinements.
Issue: SPR-16439
2018-01-30 22:35:42 +01:00
Rossen Stoyanchev
6d909b013e
Do not commit response on access to content
...
MockHttpServletResponse no longer calls flushBuffer on calls to
getContentAsByteArray and getContentAsString. The flushing doesn't
actually do anything useful but does commit the response leading to
unexpected side effects.
Issue: SPR-16430
2018-01-30 16:19:08 -05:00
Juergen Hoeller
cd57335e46
SchedulerFactoryBean ignores local factory settings in case of external SchedulerFactory instance (unless it extends from StdSchedulerFactory)
...
Issue: SPR-16439
2018-01-30 21:31:04 +01:00
sdeleuze
d02e4fb545
Add Vary:Access-Control-Request-Method/Headers CORS headers
...
This commit adds these 2 Vary headers in addition to the existing
Origin one to avoid caching of Access-Control-Request-Method and
Access-Control-Request-Headers headers which can be an issue
when allowed methods or headers are unbounded and only the
requested method or headers are returned in the response.
Issue: SPR-16413
2018-01-30 17:00:32 +01:00
Juergen Hoeller
857a5b03b7
SchedulerFactoryBean accepts external Quartz SchedulerFactory instance
...
Issue: SPR-16439
2018-01-30 16:55:09 +01:00
Rossen Stoyanchev
f4de8615aa
Fix encoding issue in ServerHttpRequest.mutate()
...
Issue: SPR-16434
2018-01-30 10:23:02 -05:00
Juergen Hoeller
637e09f995
Polishing
2018-01-30 16:00:30 +01:00
Juergen Hoeller
ef2e16912d
Formatting support for java.time.Year and java.time.Month
...
Issue: SPR-16437
2018-01-30 15:54:47 +01:00
Juergen Hoeller
89d2bd954a
Properly analyze Java 9 class cast messages for lambda event listeners
...
Issue: SPR-16435
2018-01-30 15:53:58 +01:00
Rossen Stoyanchev
4f28c28287
Update Javadoc on uriTemplateHandler property
...
Issue: SPR-16419
2018-01-29 21:53:22 -05:00
Rossen Stoyanchev
5ff724968d
[docs] View Technologies section in WebFlux
...
Issue: SPR-16393
2018-01-29 21:28:48 -05:00
Rossen Stoyanchev
49eec6248d
[docs] Reorder View Technologies
...
From:
Thymeleaf
Groovy Markup
FreeMarker
JSP & JSTL
Script Views
XML
Tiles
XSLT
PDF, Excel
RSS, Atom
Jackson
To:
Thymeleaf
FreeMarker
Groovy Markup
Script views
JSP & JSTL
Tiles
RSS, Atom
PDF, Excel
Jackson
XML
XSLT
Also move View Technologies after MVC Config to align order with
WebFlux config.
Issue: SPR-16393
2018-01-29 16:43:51 -05:00
Rossen Stoyanchev
e76973c5f0
[docs] Update view-related content
...
1. The View Technologies chapter in Spring MVC
2. The View Resolution and View Resolver config in WebFlux
Issue: SPR-16393
2018-01-29 16:43:51 -05:00
Juergen Hoeller
8d42888476
Upgrade to RxJava 1.3.5 and WebJars Locator 0.35
...
Includes Rhino 1.7.8 and JRuby 9.1.15 as well.
2018-01-29 21:31:27 +01:00
Juergen Hoeller
7772b914c6
Deep BeanCurrentlyInCreationException check in getTypeForFactoryBean
...
Issue: SPR-16427
2018-01-29 21:13:59 +01:00
sdeleuze
32f6ccece8
Add WebFlux support for Smile streaming
...
The commit brings following changes:
- Move getDecodableMimeTypes() to AbstractJackson2Decoder
- Move getEncodableMimeTypes() to AbstractJackson2Encoder
- Add support for application/stream+x-jackson-smile
- Avoid streaming line separator when Smile encoder is used
- Use double null token in Jackson2Tokenizer to identify documents
Issue: SPR-16151
2018-01-29 18:56:25 +01:00
Juergen Hoeller
e1fa65a37c
Notes about HibernateJpaVendorAdapter settings vs native Hibernate rules
...
Issue: SPR-16428
2018-01-29 18:40:18 +01:00
Juergen Hoeller
4e194c3fbe
Deprecate outdated HibernateTemplate operations in favor of lambdas
...
Issue: SPR-16426
2018-01-29 18:40:08 +01:00
Rossen Stoyanchev
c718ddf7b0
Update CONTRIBUTING.md
2018-01-29 09:26:23 -05:00
Rossen Stoyanchev
0762131d88
Update CONTRIBUTING.md
2018-01-29 09:25:46 -05:00
Rossen Stoyanchev
00b95b10a8
Docs: result handling and view resolution
...
Issue: SPR-16393
2018-01-26 22:14:14 -05:00
Rossen Stoyanchev
fbde97f302
Default order 0 for ServerResponseResultHandler
...
Issue: SPR-16420
2018-01-26 17:06:01 -05:00
Sam Brannen
b612f53e27
Rename doesExist() to exists() for header assertions
2018-01-26 17:24:54 +01:00
Juergen Hoeller
0e734d83d5
@EnableAspectJAutoProxy: per application context, requires aspectjweaver
...
Issue: SPR-14753
Issue: SPR-15801
2018-01-26 10:38:43 +01:00
Juergen Hoeller
37ab8a700b
Doc: no "useCodeAsDefaultMessage" for setValidationMessageSource
...
Issue: SPR-15986
2018-01-26 10:35:37 +01:00
Juergen Hoeller
e49198d49f
Polishing
2018-01-25 22:12:29 +01:00
Juergen Hoeller
13c735442c
@Scheduled supports java.time.Duration format for its delay attributes
...
Issue: SPR-15455
2018-01-25 19:11:18 +01:00
Juergen Hoeller
ef3f93e84a
Language tag parsing support in StringUtils and StringToLocaleConverter
...
Issue: SPR-16188
2018-01-25 19:10:31 +01:00
Juergen Hoeller
c6b0d85a7c
Consistent available() support in DelegatingServletInputStream
...
Issue: SPR-16416
2018-01-25 19:06:20 +01:00
Ketan Padegaonkar
a0c9fdba12
Fix DelegatingServletInputStream#available
...
Ensure that the method returns the correct number of bytes that can be
read without blocking
Issue: #SPR-16416
2018-01-25 18:02:59 +01:00
Sam Brannen
165ca12e6d
Add doesExist() to HeaderAssertions for WebTestClient
2018-01-25 15:50:19 +01:00
Sam Brannen
431494096a
Polishing
2018-01-25 15:49:06 +01:00
Juergen Hoeller
cf100d4d03
AbstractClientSockJsSession.close propagates IOException from disconnect
...
Issue: SPR-16415
2018-01-25 12:24:46 +01:00
Juergen Hoeller
8e2be91353
Fine-tuned logging of WebSocket close exceptions
...
Issue: SPR-16409
2018-01-25 12:24:40 +01:00
Juergen Hoeller
9ef0465c34
Upgrade to Jackson 2.9.4 and RxJava 2.1.9
2018-01-25 12:24:17 +01:00
Rossen Stoyanchev
b948e7cf75
Polish
2018-01-24 19:58:14 -05:00
Rossen Stoyanchev
84cc7ffdf6
Fix test failure
2018-01-24 19:55:46 -05:00
Rossen Stoyanchev
5d25ca29a6
Merge pull request #1649 from neonailol/header-does-exist-matcher
2018-01-24 17:39:15 -05:00
Rossen Stoyanchev
49f1aa78eb
Polish
2018-01-24 17:37:49 -05:00
Neonailol
81ca1f7c2b
Add doesExist assertion method to HeaderResultMatchers
2018-01-24 17:28:46 -05:00
Rossen Stoyanchev
cf812ba831
Reference docs: improve async request content
2018-01-24 17:28:20 -05:00
Juergen Hoeller
0e6f8df0a8
ServletServerHttpRequest.getURI() ignores malformed query string
...
The resolved URI instance is also being cached now. This should not make a difference in a real Servlet environment but does affect tests which assumed they could modify an HttpServletRequest path behind a pre-created ServletServerHttpRequest instance. Our WebSocket test base class has been revised accordingly, re-creating the ServletServerHttpRequest in such a case.
Issue: SPR-16414
2018-01-24 22:13:40 +01:00
Stephane Nicoll
6db1b692b8
Merge pull request #1650 from izeye:polish-20180124
...
* pr/1650:
Polish "Remove an unnecessary intermediate variable"
Remove an unnecessary intermediate variable
2018-01-24 09:19:15 +01:00
Stephane Nicoll
42a2081e8c
Polish "Remove an unnecessary intermediate variable"
...
Closes gh-1650
2018-01-24 09:18:46 +01:00
Johnny Lim
826db88509
Remove an unnecessary intermediate variable
...
See gh-1650
2018-01-24 09:18:24 +01:00
sdeleuze
1af052433c
Document @Bean nullable parameters optional bean injection
...
Issue: SPR-16053
2018-01-23 18:05:05 +01:00
Rossen Stoyanchev
97894a1c22
Improve logging dependencies for tests
2018-01-23 10:42:41 -05:00
Spring Buildmaster
14fa2b18ce
Next Development Version
2018-01-23 09:42:34 +00:00
Rossen Stoyanchev
4b861aeae6
Reference docs: update async request content
...
Issue: SPR-16203
2018-01-22 22:42:59 -05:00
Rossen Stoyanchev
aee8a9c97b
Upgrade to Bismuth-SR5
...
Issue: SPR-16385
2018-01-22 19:57:38 -05:00
Juergen Hoeller
91e6274b7d
Upgrade to Apache HttpClient 4.5.5 and Tomcat 8.5.27
2018-01-22 22:11:00 +01:00
Juergen Hoeller
61579ffe7b
Polishing
2018-01-22 21:34:44 +01:00
Arjen Poutsma
b47491695e
Support array of scalar values in Jackson2Tokenizer
...
Issue: SPR-16407
2018-01-22 17:08:08 +01:00
Juergen Hoeller
9d0e62ef68
Javadoc format and related polishing
2018-01-22 11:43:21 +01:00
Juergen Hoeller
3dd6c19c6d
Upgrade to Netty 4.1.20
2018-01-22 11:43:06 +01:00
Arjen Poutsma
0befc60c8f
Renamed DataBufferUtils/DataBufferFactory.compose to join
...
Issue: SPR-16365
2018-01-22 10:51:07 +01:00
sdeleuze
3f3141cdda
Add additional test for SPR-16210
...
Issue: SPR-16210
2018-01-22 10:29:21 +01:00
Arjen Poutsma
646fcc5c2f
Support Custom Headers for Multipart Async Data
...
This commit makes sure there is no custom Content-Disposition header
before setting one automatically.
This commit also adds a headers(Consumer<HttpHeaders>) method, so that
one can user the nicer methods of HttpHeaders, as opposed to basic
strings.
Issue: SPR-16376
2018-01-20 15:18:20 +01:00
Juergen Hoeller
b2ce98e881
Upgrade to CGLIB 3.2.6
...
Issue: SPR-16267
2018-01-20 14:29:56 +01:00
Juergen Hoeller
395c9bd723
Consistently call HttpURLConnection.setFixedLengthStreamingMode(long)
...
Issue: SPR-16404
2018-01-20 14:29:40 +01:00
andrm
142f1ab42f
Removed unnecessary cast to int
...
Since Java7 HttpURLConnection offers setFixedLengthStreamingMode method with long parameter which should be prefered over version with int argument, therefore casting ContentLength to int is no longer needed. Moreover it makes impossible to stream payload larger than Integer.MAX_VALUE
2018-01-20 14:11:15 +01:00
Stephane Nicoll
0ca4cd1cf8
Merge pull request #1647 from izeye:polish-20180120
...
* pr/1647:
Polish InterceptorRegistration
2018-01-20 10:15:53 +01:00
Johnny Lim
36d42bcda4
Polish InterceptorRegistration
...
Closes gh-1647
2018-01-20 10:15:12 +01:00
Rossen Stoyanchev
283811b16b
Ensure filename is written
...
Now that SPR-16307 makes it possible to write a part with a Publisher
we need to ensure we get the filename correctly when writing with
Publisher<Resource>.
Issue: SPR-16376
2018-01-19 22:12:53 -05:00
Rossen Stoyanchev
aea6bb6357
Update STOMP docs on using dot as separator
...
Issue: SPR-16275
2018-01-19 21:51:31 -05:00
Rossen Stoyanchev
0fb31c5e36
Refine "." separator support for STOMP messaging
...
After this commit DefaultUserDestinationResolves no longer looks at
whether AntPathMatcher is configured with "." as separator and rather
expects to be explicitly told whether to keep the leading slash in
translated destinations which actually depends on what the message
broker supports (e.g. RabbitMQ "/", Artemis ".") or how it is
configured (simple broker could be either way).
There is also a minor improvement in SimpMessagingTemplate to ensure
user destinations are correctly formed based on what the
DefaultUserDestinationResolver expects. When using "." as separtor it
allows sending messages to "queue.q1" rather than "/queue.q1".
Issue: SPR-16275
2018-01-19 21:02:43 -05:00
Rossen Stoyanchev
17f9b61249
Polish MessageBrokerConfigurationTests
2018-01-19 21:02:43 -05:00
Rossen Stoyanchev
afd248da8a
MultipartHttpMessageWriter consumes source once only
...
The previous fix #09f1f7 did not actually address the issue but only
moved it further down, so instead of the subscribe(), it was consuming
it inside the MultipartHttpMessageWriter#write method which returned
this.body.then(), and then again for the actual request body writing.
In this commit MultipartHttpMessageWriter#write returns Mono.empty()
since we don't actually want to write the part content from there, but
only want to access it as soon as it is availabele, for writing to
the request body.
Issue: SPR-16402
2018-01-19 20:55:22 -05:00
Juergen Hoeller
572c668726
Polishing
2018-01-19 21:30:37 +01:00
Arjen Poutsma
5520e730f1
DataBufferUtils.read should not take input stream/channel as parameter
...
Fixed by creating `Callable`-based variants, as explained in the JIRA
issue.
Issue: SPR-16403
2018-01-19 17:38:14 +01:00
Rossen Stoyanchev
09f1f727a7
Remove explicit subscribe in MultipartHttpMessageWriter
...
Issue: SPR-16402
2018-01-19 10:41:08 -05:00
Juergen Hoeller
40127bd9ad
Polishing
2018-01-19 12:30:10 +01:00
Juergen Hoeller
4c7414833b
ResolvableType returns clone for cached state with original local source
...
Issue: SPR-16210
2018-01-19 12:30:03 +01:00
Rossen Stoyanchev
357fb48d13
Update docs on stomp.js library
...
Issue: SPR-15624
2018-01-18 13:09:40 -05:00
Rossen Stoyanchev
513461d4f1
Update STOMP overview
...
Issue: SPR-15624
2018-01-18 13:04:43 -05:00
Arjen Poutsma
c53c8bfc5a
Set 304 status on ServerResponse when ETag/LastModified match
...
This commit checks the Etag/LastModified headers on the incoming
request, and sets a 304 Not Modified status with no body when they
match, by delegating to ServerWebExchange.checkNotModified.
Issue: SPR-16348
2018-01-18 11:34:38 +01:00
Arjen Poutsma
c211e3998b
Polishing
2018-01-18 11:34:38 +01:00
Arjen Poutsma
61d330f805
Javadoc
2018-01-18 11:34:38 +01:00
Juergen Hoeller
ea5f8f5a7c
Consistently handle NoClassDefFoundError in BeanUtils and related places
...
Issue: SPR-16369
2018-01-17 20:24:57 +01:00
Rossen Stoyanchev
0c289283ff
Separate from expectations from response creation
...
This commit separates the creation of a response so that it is executed
after the synchronized block inside which requests need to be matched
and validated (for order and count).
This allows a ResponseCreator to be slow or block if it has to.
Issue: SPR-16319
2018-01-17 13:01:40 -05:00
Rossen Stoyanchev
7ab4d0ca08
Polish MockRestServiceServer code
2018-01-17 13:01:40 -05:00
Juergen Hoeller
214576673a
Proper NoClassDefFoundError check against BeanUtils.instantiateClass
...
Issue: SPR-16369
2018-01-17 18:29:05 +01:00
Juergen Hoeller
32b4279929
Upgrade to Kotlin 1.2.20 (and Undertow 1.4.22)
2018-01-17 18:28:26 +01:00
Stephane Nicoll
817254f2eb
Merge pull request #1646 from JanStureNielsen:patch-2
...
* pr/1646:
Fix doc typo
2018-01-17 18:07:04 +01:00
Jan Nielsen
fed81c6f83
Fix doc typo
...
Closes gh-1646
2018-01-17 18:06:17 +01:00
Stephane Nicoll
dfe4e01f51
Merge pull request #1645 from JanStureNielsen:patch-1
...
* pr/1645:
Fix doc typo
2018-01-17 18:06:04 +01:00
Jan Nielsen
df9761cb3f
Fix doc typo
...
Closes gh-1645
2018-01-17 18:05:39 +01:00
Rossen Stoyanchev
12baafd4f0
WebFlux docs: security + consistent order for WebFlux config
2018-01-16 23:23:26 -05:00
Rossen Stoyanchev
1148b61dfa
WebMVC Docs: remove old code-by-convention content
...
We cover this more succinctly from other places, e.g. in Model Methods
by referring to the Javadoc of Contentions, or pointing to the
RequestToViewNameTranslator.
2018-01-16 23:23:09 -05:00
Rossen Stoyanchev
bb7152d6e7
WebFlux docs: matrix variables
...
Issue: SPR-16040
2018-01-16 22:53:40 -05:00
Rossen Stoyanchev
61fc321554
WebFlux docs: Request|ResponseBody + Http|ResponseEntity
...
Issue: SPR-16040
2018-01-16 22:10:04 -05:00
Rossen Stoyanchev
4f2e54fc2d
Document multipart data support for WebFlux
...
Issue: SPR-16040
2018-01-16 16:53:19 -05:00
Rossen Stoyanchev
b97fa4a5ee
Update docs on multipart requests + table of parameters
...
Issue: SPR-16040
2018-01-16 11:33:27 -05:00
Juergen Hoeller
65a167f7fd
JmsListenerAnnotationBeanPostProcessor properly deals with nested proxies
...
Issue: SPR-16196
2018-01-16 14:39:31 +01:00
Juergen Hoeller
0270808b3c
Upgrade to EclipseLink 2.7.1
2018-01-16 14:39:14 +01:00
Timo Meinen
823a16ce17
Log SQL parameters in EclipseLink when using showSql
...
As of EclipseLink 2.4.0 - Juno this is not sufficient to log
SQL parameter binding. Additionally,
eclipselink.logging.parameters must be enabled.
Issue: SPR-16383
2018-01-16 14:20:49 +01:00
Sam Brannen
7b4ec72378
Upgrade to JUnit Jupiter 5.0.3
...
Issue: SPR-16384
2018-01-16 13:17:32 +01:00
Rossen Stoyanchev
437c33ba42
WebFlux @ModelAttribute coverage in reference
...
Issue: SPR-16040
2018-01-15 17:47:27 -05:00
sdeleuze
43d3abdfd5
Fix SockJs CorsConfiguration for forbidden origins
...
After this commit, AbstractSockJsService uses the configured allowed
origins when generating the CorsConfiguration instead of "*".
As a consequence, forbidden origin requests still result in a 403
response but now with no CORS headers in order to improve consistency
between the status code and the headers.
Issue: SPR-16304
2018-01-15 18:07:24 +01:00
Stephane Nicoll
3ae776b1fa
Fix BOM link
...
Issue: SPR-16317
2018-01-15 17:12:19 +01:00
Rossen Stoyanchev
61352fe85b
Fix compile error
2018-01-15 10:28:12 -05:00
Rossen Stoyanchev
6375cc55a3
Merge pull request #1642 from EnvOut/master
2018-01-15 10:01:54 -05:00
Rossen Stoyanchev
dd09c08cdf
Replace use of AbstractWebSocketMessageBrokerConfigurer
2018-01-15 10:01:14 -05:00
Sergey
d6591a6329
Default methods in WebSocketMessageBrokerConfigurer
...
+ deprecate AbstractWebSocketMessageBrokerConfigurer
2018-01-15 09:54:55 -05:00
Stephane Nicoll
42dfa40151
Make sure endpoint settings override default factory settings
...
Issue: SPR-16338
2018-01-15 15:42:50 +01:00
Stephane Nicoll
89b81b0080
Merge pull request #1636 from izeye:exception-message
...
* pr/1636:
Fix an exception message in ScheduledAnnotationBeanPostProcessor
2018-01-15 15:19:16 +01:00
Johnny Lim
d31767eab8
Fix an exception message in ScheduledAnnotationBeanPostProcessor
...
Closes gh-1636
2018-01-15 15:19:02 +01:00
Juergen Hoeller
b160f93495
CacheProxyFactoryBean exposes all relevant CacheInterceptor callbacks
...
Issue: SPR-16295
2018-01-14 23:48:21 +01:00
Juergen Hoeller
44fd2d96cc
Restore original separator set (but keep new isParameterSeparator impl)
...
Issue: SPR-16340
2018-01-14 17:57:32 +01:00
Juergen Hoeller
9623cdec48
Functional response builders allow for non-standard HTTP status codes
...
Issue: SPR-16366
2018-01-14 17:45:58 +01:00
Philippe Marschall
91e39d558f
Use ArrayList instead of LinkedList for known size
...
Spring JDBC unlike other modules uses LinkedList instead of ArrayList
in several places. There is a large body of evidence suggesting that on
contemporary hardware ArrayList is both faster and has less overhead
than even in degenerate cases of empty lists [3] or unknown size.
There are two places in Spring JDBC where the size of the list is known
in advance and an ArrayList of the correct final size can be created
[1] https://bugs.java.com/bugdatabase/view_bug.do?bug_id=8011200
[2] http://cliffc.org/blog/2017/11/05/modern-hardware-performance-cache-lines/
[3] https://bugs.openjdk.java.net/browse/JDK-8011200
Issue: SPR-16378
2018-01-14 17:45:32 +01:00
Sam Brannen
c88f11f958
Avoid deprecation warnings on JDK 9 in spring-test
2018-01-13 16:45:04 +01:00
Rossen Stoyanchev
1dbcd66091
More sections in WebFlux docs @Controller argument
...
Issue: SPR-16040
2018-01-12 16:48:06 -05:00
Juergen Hoeller
4c9ed0d87e
Polishing
2018-01-12 18:24:00 +01:00
Juergen Hoeller
06e6386dc9
CollectionUtils.lastElement for common Set/List extraction
...
Issue: SPR-16374
2018-01-12 18:23:52 +01:00
Juergen Hoeller
13a8f90e08
ScheduledAnnotationBeanPostProcessor properly deals with nested proxies
...
Issue: SPR-16196
2018-01-12 16:48:17 +01:00
Juergen Hoeller
a15975d94d
Log non-loadable TestExecutionListener classes at debug level only
...
Issue: SPR-16369
2018-01-12 16:47:46 +01:00
Juergen Hoeller
93f645800b
Test for non-equality after URI normalization
...
Issue: SPR-16364
2018-01-12 16:46:06 +01:00
Juergen Hoeller
347c2daa2c
Test for multiple interfaces at BridgeMethodResolver level
...
Issue: SPR-16288
2018-01-12 16:45:38 +01:00
Arjen Poutsma
e39bf87b07
Add reference docs for DataBufferUtils.compose
...
Issue: SPR-16365
2018-01-12 11:38:50 +01:00
Arjen Poutsma
67e7c784e8
Use DataBufferUtils.compose and remove writeAggregator
...
Use DataBufferUtils.compose instead of writeAggregator to combine
multiple data buffers into one, as the write aggregator would not work
when the initial data buffer did not have enough capacity to contain
all subsequent buffers.
Removed writeAggregator, as it is no longer needed.
Issue: SPR-16365
2018-01-12 10:36:09 +01:00
Arjen Poutsma
384a399fd2
Add DataBufferUtils.compose
...
Added a utility method that composes data buffers into a single buffer.
Depending on the `DataBuffer` implementation, the returned buffer may be
a single buffer containing all data of the provided buffers, or it may
be a true composite that contains references to the buffers.
Issue: SPR-16365
2018-01-12 10:36:09 +01:00
Rossen Stoyanchev
c60313de3f
Refine UriTemplate match pattern
...
The match/matches methods of UriTemplate use a regex with (.*) in place
of URI variables, which work fine except in the end where such a
pattern can match greedily more than one segment.
This commit updates the regex to use ([^/]*) instead since URI
variables are only meant to be used within a single path segment.
Issue: SPR-16169
2018-01-11 16:36:35 -05:00
Rossen Stoyanchev
84b8ceca0f
Update Javadoc for AbstractHandlerMapping properties
...
Clarify what PathPatternParser is used for which is CORS checks in the
very least. Some sub-classes will also use it for request mapping but
not all (e.g. RouterFunctionMapping). Hence the need to be more
explicit.
2018-01-11 12:41:04 -05:00
Rossen Stoyanchev
72e3c43375
Refine @EnableWebFlux docs for functional endpoints
...
@EnableWebFlux bootstraps both annotated controllers and functional
endpoints, so we need to be more explicit about which parts of the
configuration apply to which.
Issue: SPR-16360
2018-01-11 12:25:42 -05:00
Juergen Hoeller
8f6d3feaa0
Tests for non-required MultipartFile parameters
...
Issue: SPR-16329
2018-01-11 10:22:59 +01:00
Juergen Hoeller
121f9e3734
BridgeMethodResolver properly resolves all declared interfaces
...
Issue: SPR-16288
2018-01-11 10:18:27 +01:00
Rossen Stoyanchev
ea73ec5c41
ResourceUrlProvider handles sanitizes double slashes
...
Issue: SPR-16296
2018-01-10 17:48:43 -05:00
Rossen Stoyanchev
cdf2ab9737
Expand docs on WebFlux.fn + @EnableWebFlux
...
Issue: SPR-16360
2018-01-10 16:28:34 -05:00
sdeleuze
19a1477228
Fix Kotlin bean w/ default + secondary ctors handling
...
This commit polishes SPR-16022 fix in order to handle correctly
the case when primary and default constructors are the same when
a secondary constructor is defined.
Issue: SPR-16289
2018-01-10 18:29:33 +01:00
Arjen Poutsma
5adaa1030c
Javadoc
2018-01-10 17:54:51 +01:00
Arjen Poutsma
f7bf6460aa
Reverted signature change on fromMultipartData
...
Reverted back from `MultiValueMap<String, Object>` to
`MultiValueMap<String, ?>`
2018-01-10 17:54:51 +01:00
Rossen Stoyanchev
b36af8a11f
Uncomment test after Reactor Netty fix
...
Issue: SPR-16246
2018-01-10 10:47:36 -05:00
Arjen Poutsma
8a129ef3da
Use write aggregator from DataBufferUtils
...
This commit uses the newly introduced write aggregator from
DataBufferUtils throughout WebFlux.
Issue: SPR-16351
2018-01-10 11:15:47 +01:00
Arjen Poutsma
69ccba30e9
Introduce write aggregator to DataBufferUtils
...
As a consequence of dropping CompositeByteBuf (see prior commit),
DataBuffers fluxes that are aggregated with Flux.reduce(BiFunction) are
now required to be released, as the composite no longer holds a
reference to subsequent data buffers.
For this purpose, DataBufferUtils now has a writeAggregator that can be
used with Flux.reduce, and that released the subsequent buffers
properly.
Issue: SPR-16351
2018-01-10 11:14:02 +01:00
Arjen Poutsma
e6893da971
Remove use of CompositeByteBuf in NettyDataBuffer
...
Prior to this commit, NettyDataBuffer had a optimization in
write(ByteBuf...), where it used a CompositeByteBuf to hold the original
and the parameter buffer.
Unfortunately, this procedure has nasty consequences when splicing
buffers (see https://stackoverflow.com/a/48111196/839733 ).
As of this commit, NettyDataBuffer stopped using CompositeByteBuf, and
simply does ByteBuf.write().
Issue: SPR-16351
2018-01-10 11:05:41 +01:00
Rossen Stoyanchev
5ed0cf9027
Fix init issues in AbstractReactiveWebInitializer
...
Issue: SPR-16290
2018-01-09 17:32:40 -05:00
Rossen Stoyanchev
537f79f680
Merge pull request #1609 from jeff/SPR-16245
2018-01-09 16:40:46 -05:00
Rossen Stoyanchev
018469286d
Polish
2018-01-09 16:39:40 -05:00
Jeff Nelson
30e40210a8
Extract protected method in AbstractRequestLoggingFilter
...
Issue: SPR-16245
2018-01-09 16:38:21 -05:00
Juergen Hoeller
c8bdb3c602
Polishing
2018-01-09 22:20:22 +01:00
Juergen Hoeller
e43439c6c3
SqlParameterSource interface exposes parameter names
...
Includes default implementations of getSqlType and getTypeName.
Issue: SPR-16361
2018-01-09 22:19:46 +01:00
Juergen Hoeller
b2322e58d9
Support for PostgreSQL array syntax
...
Includes efficient separator determination.
Issue: SPR-16340
2018-01-09 22:19:05 +01:00
Masahiro Ide
d9af4d6599
ResourceBundleMessageSource uses ConcurrentHashMaps instead of synchronization
...
Issue: https://jira.spring.io/browse/SPR-16235
2018-01-09 22:12:03 +01:00
Stephane Nicoll
f72318a0ae
Merge pull request #1640 from making:patch-2
...
* pr/1640:
Fix source code in doc
2018-01-09 19:17:24 +01:00
Toshiaki Maki
50b46c9e35
Fix source code in doc
...
Closes gh-1640
2018-01-09 19:17:09 +01:00
sdeleuze
9c7de232b8
Polishing
...
Optimize same origin check when the request is an instance of
ServletServerHttpRequest and when there is no forwarded headers.
This commit also optimizes the getPort methods and ForwardedHeaderFilter
forwarded headers checks.
Issue: SPR-16262
2018-01-09 14:33:54 +01:00
sdeleuze
c326e44488
Refine forwarded protocol support
...
This commit refines forwarded protocol support in order to support
proxies that only set "X-Forwarded-Proto" header and not
"X-Forwarded-Port" by performing a reset of the port in such case.
"Forwarded" header support has been updated accordingly since it
also supports similar use case, as described in SPR-15504.
Issue: SPR-16262
2018-01-09 14:33:54 +01:00
Rossen Stoyanchev
30c0616384
Improve error message
...
Issue: SPR-16214
2018-01-08 21:30:41 -05:00
Rossen Stoyanchev
74b5c371ba
Merge pull request #1634 from lin/patch-1
2018-01-08 17:36:24 -05:00
Rossen Stoyanchev
846636f2b9
Polish
2018-01-08 17:35:30 -05:00
Aleksey Voronenkov
cb8ad46564
Overloaded methods in InterceptorRegistration
...
Issue: SPR-16324
2018-01-08 17:31:06 -05:00
Juergen Hoeller
45828cb934
Check BeanInfoFactory for interface introspection as well
...
Issue: SPR-16322
2018-01-08 18:05:02 +01:00
Rossen Stoyanchev
446e7ed25c
Links from @RequestMapping to reference docs
...
Issue: SPR-16266
2018-01-08 09:29:52 -05:00
Juergen Hoeller
73cad470e5
Upgrade to HtmlUnit 2.29 and Selenium 3.8.1
2018-01-08 13:41:36 +01:00
Juergen Hoeller
4adc820714
Warning instead of error for non-present type filter class
...
Issue: SPR-16356
2018-01-08 13:41:23 +01:00
Stephane Nicoll
0d151b0212
Fix SpEL syntax
...
Issue: SPR-16315
2018-01-08 08:46:20 +01:00
Juergen Hoeller
72590dbb21
CachingConnectionFactory does not cache producer for temporary queue/topic
...
Issue: SPR-16353
2018-01-08 00:26:29 +01:00
Juergen Hoeller
7a55d932f9
Build against OpenPDF 1.0.5 instead of outdated iText 2.1.7
...
Issue: SPR-16352
2018-01-08 00:26:10 +01:00
Skelotron
b9e03cb06b
SPR-16316 — fix transaction timeout value overflow
2018-01-07 23:48:24 +01:00
Juergen Hoeller
4a57e26d76
Polishing
2018-01-07 23:33:35 +01:00
Juergen Hoeller
b6191f6057
Direct reference to JPA 2.1 SynchronizationType enum
...
Issue: SPR-13481
2018-01-07 23:30:05 +01:00
Juergen Hoeller
d187cbce73
LoadTimeWeaver detection differentiates between WebSphere and Liberty
...
Issue SPR-16248
2018-01-07 23:29:16 +01:00
Juergen Hoeller
6a1fe0b1d0
FunctionReference's method field is volatile
...
Issue: SPR-16255
2018-01-07 23:23:45 +01:00
Juergen Hoeller
0a06bce3a6
Relaxed BeanFactory assertion in resolveInterceptorNames
...
Issue: SPR-16347
2018-01-07 23:23:25 +01:00
Juergen Hoeller
977550f956
Properly handle null bean instance in getLifecycleBeans
...
Issue: SPR-16343
2018-01-07 23:23:08 +01:00
Juergen Hoeller
18d90ec140
Properly handle null FactoryBean instance
...
Issue: SPR-16250
2018-01-07 23:22:56 +01:00
Juergen Hoeller
d3e0f4dd91
Consider enum subclasses as simple value types as well
...
Issue: SPR-16278
2018-01-07 23:20:09 +01:00
Juergen Hoeller
9beb97880f
Support for static field access on non-public enums
...
Issue: SPR-16284
2018-01-07 23:19:47 +01:00
Juergen Hoeller
7ad69bfc20
Avoid extra existence check in SimpleMetadataReaderFactory
...
Issue: SPR-16281
2018-01-07 23:18:52 +01:00
Juergen Hoeller
1a154c3e4c
Consistently throw FileNotFoundException even for NIO access
...
Issue: SPR-16334
2018-01-07 23:18:28 +01:00
Rossen Stoyanchev
37f0e8c6e5
Access to ApplicationContext via ServerWebExchange
...
Issue: SPR-16298
2018-01-05 15:46:45 -05:00
Rossen Stoyanchev
93a522f336
Fix regression in BodyInserters with multipart data
...
The issue was introduced very recently with commit #7035ee but never
released.
Issue: SPR-16350
2018-01-05 13:59:14 -05:00
Rossen Stoyanchev
542de82c5f
Document Jackson encoder/decoder behavior
...
Issue: SPR-16260
2018-01-04 22:02:27 -05:00
Rossen Stoyanchev
7bf9b767fd
Improve HTTP message reading/writing docs
...
Cross-reference sections on HttpMessageReader/Writer and
HttpMessageConverter and improve the content.
Issue: SPR-16260
2018-01-04 21:15:04 -05:00
Rossen Stoyanchev
0f1f95e090
Add hasJsonPath/doesNotHaveJsonPath assertion options
...
Issue: SPR-16339
2018-01-03 20:27:09 -05:00
Juergen Hoeller
a49123a72b
Upgrade to RxJava 2.1.8 (and Protobuf 3.5.1)
2017-12-31 18:51:22 +01:00
Juergen Hoeller
dd4f915234
Upgrade to JCache 1.1 (and Caffeine 2.6.1)
...
Issue: SPR-13574
2017-12-28 14:08:21 +01:00
sdeleuze
d2616b7996
Fix RestOperations extensions parameters nullability
...
Issue: SPR-16328
2017-12-27 17:54:38 +01:00
sdeleuze
deac8e556e
Improve Kotlin extensions doc about type erasure
...
Since type erasure can be fixed only when using
ParameterizedTypeReference based Java methods, RestOperations and
WebFlux API documentation should be updated to specify which extensions
are subject to type erasure, and which are not.
Issue: SPR-16273
2017-12-27 17:49:18 +01:00
Stephane Nicoll
8fc16fc937
Merge pull request #1627 from nkjackzhang:patch-1
...
* pr/1627:
Polish Javadoc
2017-12-23 14:20:28 +01:00
nkjackzhang
ec6eed6c63
Polish Javadoc
...
Closes gh-1627
2017-12-23 14:19:56 +01:00
Rossen Stoyanchev
3aee3182ac
Restore milestone repo for AspectJ
2017-12-22 15:13:48 -05:00
Rossen Stoyanchev
f389f66270
Upgrade to Reactor Bismuth snapshots
...
This allows us to confirm 0.7.3 fixes and run tests against the latest
ahead of an upgrade to Reactor Netty 0.8 snapshots.
The fix for #231 and #240 are confirmed but unfortunately test case for
2017-12-22 12:50:18 -05:00
Arjen Poutsma
6c3a64578c
Move ResolvableType from HttpEntity to PublisherEntity
...
This commit moves the ResolvableType field from HttpEntity to
PublisherEntity, a new entity type defined in MultipartBodyBuilder.
With this change, the scope of the ResolvableType is limited to
multipart-related code, instead of becoming part of the complete
HttpEntity hierarchy.
Issue: SPR-16307
2017-12-22 13:44:01 +01:00
Brian Clozel
6e587d5c57
Add new WebTestClient header assertions
...
This commit adds new header assertions for `WebTestClient`.
`doesNotExist` tests that a given header is not present:
.expectHeader().doesNotExist("Cache-Control");
`contentTypeCompatibleWith` tests for MediaType compatibility:
.expectHeader().contentTypeCompatibleWith("text/*");
Issue: SPR-16285
2017-12-21 20:34:24 +01:00
Arjen Poutsma
7035ee7ebb
Support Publishers for multipart data in BodyInserters
...
This commit uses the changes in the previous commit to support
Publishers as parts for multipart data.
Issue: SPR-16307
2017-12-21 17:41:01 +01:00
Arjen Poutsma
f23612c3a3
Add ResolvableType to HttpEntity for multipart Publishers
...
This commit adds a ResolvableType field to HttpEntity, in order to
support Publishers as multipart data. Without the type, the
MultipartHttpMessageWriter does not know which delegate writer to use to
write the part.
Issue: SPR-16307
2017-12-21 17:40:27 +01:00
Juergen Hoeller
9d27e86951
Upgrade to Hibernate Validator 6.0.7
2017-12-21 17:00:06 +01:00
Juergen Hoeller
4577a19190
Upgrade to Commons Pool 2.5 (and Jackson Kotlin Module 2.9.3)
2017-12-21 13:52:00 +01:00
sdeleuze
0075f13126
Improve CORS list properties combination logic
...
This commit allows CorsConfiguration#combine()
to differentiate permit default values set by
CorsConfiguration#applyPermitDefaultValues()
from values configured explicitly by the user.
Those permit default values will be overridden
by any user-provided ones while user-provided values
will be combined in an additive way, including
when "*" is specified.
Documentation has been improved accordingly.
Issue: SPR-15772
2017-12-20 22:38:01 +01:00
Juergen Hoeller
425a999d5e
Upgrade to Gradle 4.4.1 (and Netty 4.1.19)
...
Issue: SPR-16237
2017-12-20 18:10:15 +01:00
Rossen Stoyanchev
a8cf275aed
MockServerHttpRequest builder supports query params
...
Issue: SPR-16280
2017-12-19 15:38:12 -05:00
Rossen Stoyanchev
6df1a7874a
MockHttpServletResponse uses correct language header
...
Issue: SPR-16311
2017-12-19 13:56:16 -05:00
sdeleuze
99cbfd32c3
Set default view content-type with WebFlux fn
...
With this commit, the default content-type defined by the
view (usually "text/html;charset=UTF-8" defined in AbstractView)
is used if any, when none is defined in the response headers.
Issue: SPR-16247
2017-12-19 11:11:40 +01:00
sdeleuze
e3e4f37222
Upgrade to Kotlin 1.2.10
2017-12-19 11:03:50 +01:00
Juergen Hoeller
3a51b5a9d2
Upgrade to Hibernate Validator 6.0.6
2017-12-15 15:58:12 +01:00
Arjen Poutsma
b8201f48fd
Typo in example code in spring reactive reference document
...
Issue: SPR-16300
2017-12-15 12:03:14 +01:00
Rossen Stoyanchev
f4d8c7cc2b
Improve decodeToMono support
...
This commit ensures uniform support for decodeToMono across the various
byte and String related decoders.
Issue: SPR-16253
2017-12-14 16:59:34 -05:00
Arjen Poutsma
8e253a316d
Support top-level scalar values in Jackson2Tokenizer
...
Issue: SPR-16166
2017-12-14 16:44:40 +01:00
sdeleuze
51aa16f85f
Remove -Xskip-runtime-version-check Kotlin compiler arg
...
This compiler argument is not needed anymore since KT-16780
has been fixed.
2017-12-14 15:08:00 +01:00
sdeleuze
8c2e5dcb4a
Update Kotlin reference documentation
...
This commit removes the mention that Spring Boot 2.0 includes
Jackson Kotlin module since it is not the case as of M7, and
add a note about using bean validation annotations with Kotlin.
2017-12-14 14:22:59 +01:00
Juergen Hoeller
05988193b7
Upgrade to Jackson 2.9.3 and Netty 4.1.18
2017-12-13 17:55:50 +01:00
sdeleuze
6a7b197af7
Improve Jackson codecs documentation
2017-12-13 12:07:43 +01:00
sdeleuze
73a81f98d4
Allow interceptors to add existing header values
...
Additional commit to provide support of requests
that have a body.
Issue: SPR-15066
2017-12-13 10:08:24 +01:00
Rossen Stoyanchev
583201b02c
MappingJackson2MessageConverter uses generic type
...
Issue: SPR-16252
2017-12-12 22:32:33 -05:00
Rossen Stoyanchev
f05175586e
Refine behavior on error after response committed
...
If the response is set and we can't change the status through
ServerHttpResponse any more, allow the error signal to propagate and
let the individual server adapters handle it. Ultimately that should
result in closing the connection.
On Servlet containers, we check one last time if the response is
committed (we may not have filled the buffer). If not then save
the exception as a request attribute, dispatch, and re-throw it on the
container thread.
On Undertow access the connection and close it.
On Netty just let the error through to Reactor Netty.
Issue: SPR-16051
2017-12-12 14:51:24 -05:00
Juergen Hoeller
9d421841d5
Merge pull request #1622 from dreis2211/SPR-16293
...
Improve performance of some string operations
Issue: SPR-16293
2017-12-12 18:36:07 +01:00
Christoph Dreis
260ebeca3a
Improve performance of some string operations
...
Issue: SPR-16293
2017-12-12 17:14:24 +01:00
Rossen Stoyanchev
f736b665bd
Fix compile issue from previous commit
2017-12-11 16:37:11 -05:00
Rémi Alvergnat
76dcde9e31
Fix Stomp Broker Relay ignoring destination prefixes in some cases
...
Issue: SPR-16265
2017-12-11 13:25:29 -08:00
sdeleuze
554662ebab
Allow interceptors to add existing header values
...
Provide a fully mutable HttpHeaders to ClientHttpRequestInterceptors
of a RestTemplate when headers are set using HttpEntity. This avoids
UnsupportedOperationException if both HttpEntity and
ClientHttpRequestInterceptor add values for the same HTTP header.
Issue: SPR-15066
2017-12-11 15:01:20 +01:00
sdeleuze
ac00d8a215
Use JCenter first to resolve plugins
...
This is a workaround for Kotlin/dokka#146 .
2017-12-11 12:07:17 +01:00
sdeleuze
769ea1b106
Fix Kdoc regression to show only Kotlin API
...
As of Gradle Kotlin plugin 1.1.60,
project.sourceSets.main.kotlin.srcDirs contains
Java source directories in addition to Kotlin
ones. This commit filter out Java sources to
retain only Kotlin ones.
Issue: SPR-16268
2017-12-11 11:28:39 +01:00
Stephane Nicoll
206a5e02dd
Merge pull request #1615 from gro-gg:patch-1
...
* pr/1615:
Fix exception message
2017-12-09 15:46:55 -08:00
Philipp Grogg
591429e538
Fix exception message
...
initialDelayString is parsed into long, not integer.
Closes gh-1615
2017-12-09 15:46:28 -08:00
Juergen Hoeller
d198626618
Upgrade to Gradle 4.4 (and Apache HttpClient 4.5.4)
...
Issue: SPR-16237
2017-12-07 07:28:07 +01:00
Sam Brannen
767ea9db83
Fix minor logic error in SocketUtils
2017-12-06 17:00:29 -08:00
Tony Mitchell
9f36d170be
Support identical minPort and maxPort in SocketUtils ( #1612 )
...
This commit fixes a bug where an IllegalStateException was
thrown if the minPort and maxPort values supplied to
SocketUtils.findAvailableTcpPort(int, int) were identical.
2017-12-06 16:38:46 -08:00
Sam Brannen
f9689dfe48
Polishing
2017-12-06 15:54:02 -08:00
Juergen Hoeller
bf8831157d
Merge pull request #1614 from dreis2211/SPR-16264
...
Reduce access on user in SimpleBrokerMessageHandler.handleMessageInternal
2017-12-06 00:40:38 +01:00
Christoph Dreis
f4e9fb52a8
Reduce access on user in SimpleBrokerMessageHandler.handleMessageInternal
...
Issue: SPR-16264
2017-12-05 11:18:02 +01:00
ugultopu
04ab93ceb4
Add missing verb on the note about relays
2017-12-04 11:20:39 -05:00
Juergen Hoeller
0ef117ff11
Upgrade to Tomcat 8.5.24 and Jetty 9.4.8
2017-12-03 16:03:02 +01:00
Rossen Stoyanchev
fda08852ba
Take content-type from ResponseEntity unconditionally
...
From #9a894a we began using the content-type from the ResponseEntity
but cross-checking it still against the requested content type.
Arguably there isn't any purpose in cross-checking. The only possible
outcomes are: a) it's compatible or b) it's not, which would result in
406 (NOT_ACCEPTABLE). As we've been given explicitly the media type to
use, it makes little sense to send 406, ignoring the wish to use that
content type.
Issue: SPR-16251
2017-12-02 00:43:43 -05:00
Rossen Stoyanchev
203370a810
Handle absolute URI in Reactor request.uri()
...
The request URI returned from HttpServerRequest.uri() typically
contains contains an absolute path but could also contain an
absolute URI. This commit adds handling for the latter, effectively
taking only the absolute path portion.
Issue: SPR-16243
2017-12-01 23:34:35 -05:00
Rossen Stoyanchev
b9a1168580
Consistently return null if certificates not available
...
Issue: SPR-16244
2017-12-01 21:38:40 -05:00
Rossen Stoyanchev
e99b0038a0
Polish
2017-12-01 21:18:13 -05:00
Rossen Stoyanchev
91d3e4402f
Add test case for SPR-16246
2017-12-01 15:40:35 -05:00
Rossen Stoyanchev
44c95a4736
Adjust logging to catch sporadic PERF build failure
2017-12-01 10:11:51 -05:00
sdeleuze
7368f58518
Upgrade to Kotlin 1.2
...
apiVersion and languageVersion options are set to 1.1
on production code in order to avoid incompatibilities
with Kotlin 1.1 based projects or libraries.
Issue: SPR-16239
2017-11-30 14:50:16 +01:00
Rossen Stoyanchev
63c2c08e01
Update advice on file extensions in URLs
...
Issue: SPR-16240
2017-11-29 15:09:13 -05:00
Rossen Stoyanchev
dd0d270ba2
Improve error handling when response is committed
...
ResponseStatusExceptionHandler lets the error through if it can't
change the status while HttpWebHandlerAdapter logs a more helpful
message (including status code) but without a full stack trace.
Issue: SPR-16231
2017-11-29 12:39:06 -05:00
Juergen Hoeller
873cb4e58b
Remove unnecessary deprecation suppression
2017-11-29 15:44:08 +01:00
Juergen Hoeller
b55a2631ba
NamedParameterJdbcTemplate provides accessor for classic JdbcTemplate
...
Issue: SPR-16241
2017-11-29 15:38:21 +01:00
Rossen Stoyanchev
6f73b8b200
Add WebTestClient to Web Servlet section
2017-11-29 08:45:07 -05:00
Sam Brannen
2b68212c20
Fix grammar
2017-11-29 14:44:21 +01:00
Rossen Stoyanchev
3650ecc3bb
Polish
2017-11-28 22:16:07 -05:00
Rossen Stoyanchev
bec63fbb33
Update CORS chapters
...
- Add "Processing" section (also replaces Advanced Customizations)
- Add information on out-of-the-box behavior
- Add more deails on @CrossOririn default configuratio
- Add cross-references between Spring MVC and WebFlux
- Polish
2017-11-28 16:29:30 -05:00
Rossen Stoyanchev
375a63a041
Update README.md
2017-11-28 09:28:34 -05:00
Sam Brannen
773cd3241b
Polishing
2017-11-28 14:11:21 +01:00
Juergen Hoeller
f2e8171bfb
Latest dependency updates (RxJava 2.1.7, TestNG 6.13.1, Selenium HtmlUnit Driver 2.28.2)
2017-11-28 12:10:26 +01:00
Rossen Stoyanchev
dc3d834026
Refinements related to a committed response
...
1. setComplete checks the isCommitted flag to avoid an unnecessary
debug message. This method is meant to be safe to call many times.
2. setStatusCode lowers log message to TRACE, since the return value
communicates the outcome it's arguably much less critical.
3. Add comment and test case for ResponseStatusExceptionHandler.
A ResponseStatusException is clearly meant to be handled by this
handler so don't let it pass through even if the respones is
committed.
Issue: SPR-16231
2017-11-27 16:31:49 -05:00
Spring Buildmaster
e30f1fbe89
Next Development Version
2017-11-27 10:52:28 +00:00
Juergen Hoeller
b1c657fa4b
Consistent nullability in DataAccessUtils through nullableSingleResult
...
Issue: SPR-16225
2017-11-26 17:16:39 +01:00
Juergen Hoeller
a8323f6a27
Latest dependency updates (OkHttp 3.9.1, JRuby 9.1.14, Rome 1.9)
2017-11-26 16:03:48 +01:00
Juergen Hoeller
81052cd27a
Upgrade to Kotlin 1.1.61
...
Issue: SPR-16194
2017-11-24 23:23:38 +01:00
Juergen Hoeller
35dd8db892
Correct number of web-specific scopes
...
Issue: SPR-16230
2017-11-24 14:13:23 +01:00
Juergen Hoeller
edf22a3e25
Upgrade to Log4J 2.10 (and Groovy 2.4.13)
2017-11-24 12:04:08 +01:00
sdeleuze
3b96690e69
Add missing RestOperations extensions
...
Issue: SPR-16229
2017-11-23 22:12:03 +01:00
Rossen Stoyanchev
01a82b5291
Improve semantics writing currentData
...
Before this commit, the return value from write was interpreted as the
data being fully written and ready to be released via releaseData().
This is not true for WebSocketSession implementations where a true
return value simply means the message was sent with the full payload
but releas is not appropriate until a send confirmation.
Technically not an issue since WebSocketSession's extending this do
not use pooled buffers. Nevertheless this commit refines the semantics
of write, removes the releaseData() method, and makes sub-classes
responsible for releasing the buffer when fully written (and they
know best when that is). As a bonus currentData is now private.
Issue: SPR-16207
2017-11-23 10:55:03 -05:00
Rossen Stoyanchev
102a0ad792
Polish
2017-11-23 10:22:35 -05:00
Rossen Stoyanchev
c1b191edb0
Polish and improve logging
2017-11-22 23:25:36 -05:00
Rossen Stoyanchev
f44366877c
Switch to suspended mode before demand
...
After this commit, Tomcat and Undertow WebSocketSession imlpementations
start out in suspended mode and wait for demand.
The JettyWebSocketSession is capable of suspending but it doesn't seem
to work if invoked before any messages are received. That may become an
issue if there is a case where no demand appears long enough for more
messages to accumulate than we can hold.
UnderowServerHttpRequest would ideally also start in suspended mode but
that also doesn't work. It is not an issue in this case since we can
ignore the read notifications.
Servlet API requires a proactive check before it calls you back so
there is no need to suspend.
Issue: SPR-16207
2017-11-22 17:55:20 -05:00
Rossen Stoyanchev
afdca285e5
Avoid resume-suspend race condition
...
This commit turns suspendReading() into a readingPaused() notification
that is invoked after a succession of reads stops because there is no
more demand. Sub-classes can use this notification to suspend, if that
applies to them.
Most importantly the notification is guaranteed not to overlap with
checkOnDataAvailable() which means that suspend does not need to be
atomic and guarded against resume. The two can and do compete all the
time when reading ends with no demand, and a request for demand arrives
concurrently.
Issue: SPR-16207
2017-11-22 17:48:03 -05:00
sdeleuze
4a87d3da7b
Set Vary: Origin on CORS unauthorized response
...
Issue: SPR-16224
2017-11-22 22:46:53 +01:00
sdeleuze
652e5c5584
Disable CORS credentials by default
...
Access-Control-Allow-Credentials CORS header, used to
allow cookies with CORS requests, is not set to true
anymore by default when enabling CORS with
@CrossOrigin or global CORS configuration in order to
provide a more secured default CORS configuration.
The related allowCredentials property now requires to
be set to true explicitly in order to support cookies
with CORS requests.
Issue: SPR-16130
2017-11-22 22:46:44 +01:00
Juergen Hoeller
93f17dae47
Log4jLog explicitly passes String argument (avoiding argument expansion)
...
Issue: SPR-16226
2017-11-22 21:13:39 +01:00
Rossen Stoyanchev
b7c924cac1
Polish
2017-11-21 23:20:13 -05:00
Violeta Georgieva
d8099adc9a
AbstractListenerWebSocketSession: suspend the channel when there is no demand
...
Issues: SPR-16207
2017-11-21 22:59:33 -05:00
Rossen Stoyanchev
06b2ab3908
Use volatile for subscriber in base publishers
...
Issue: SPR-16207
2017-11-21 22:57:15 -05:00
Rossen Stoyanchev
b89a48a703
Improve FlushingIntegrationTests
2017-11-21 22:12:33 -05:00
Rossen Stoyanchev
3c2d1862f1
Light refactoring/polish in reactive read/write bridge
...
Issue: SPR-16207
2017-11-21 21:46:30 -05:00
Violeta Georgieva
2a481c5411
Fix race conditions in AbstractListenerReadPublisher
...
Transition from DEMAND->NO_DEMAND:
Two concurrent threads enter DEMAND.request and DEMAND.onDataAvailable.
And DEMAND.onDataAvailable finishes before DEMAND.request to be able to
update the demand field then a request for reading will be lost.
Transition from READING->NO_DEMAND:
readAndPublish() returns false because there is no demand but before
switching the states READING.request is invoked again a request for
reading will be lost.
Changing READING->DEMAND/NO_DEMAND is made conditional so that the
operations will be executed only if changing states succeeds.
When in READING state detect completion before each next item in order
to exit sooner, if completed.
Issue: SPR-16207
2017-11-21 14:44:46 -05:00
Violeta Georgieva
b814875211
Fix race condition in transition from UNSUBSCRIBED->COMPLETED
...
- Ensure completion signal (normal/exception) will be delivered to
the subscriber when transition from UNSUBSCRIBED->COMPLETED
- According to the specification "Publisher.subscribe MUST call onSubscribe
on the provided Subscriber prior to any other signals to that Subscriber" so
ensure onComplete/onError signals will be called AFTER onSubscribe signal.
Issue: SPR-16207
2017-11-21 14:44:01 -05:00
Violeta Georgieva
41b13a4e8a
Ensure onComplete/onError events will be delivered
...
Issue: SPR-16207
2017-11-21 14:42:05 -05:00
Juergen Hoeller
604017894e
Upgrade to Tiles 3.0.8 (and Selenium HtmlUnit Driver 2.28.1)
2017-11-21 17:56:42 +01:00
Juergen Hoeller
0cc644f61f
Polishing
2017-11-21 16:34:08 +01:00
sdeleuze
9f1d8517ba
Polish Kotlin source code style
2017-11-21 15:59:23 +01:00
Juergen Hoeller
5843173567
Polishing
2017-11-21 13:42:57 +01:00
Juergen Hoeller
08c95fbcb3
Unit tests for configuration superclass inclusion
...
Issue: SPR-16217
2017-11-21 13:42:01 +01:00
Stephane Nicoll
bdb04b1d28
Merge pull request #1601 from hongxingwz:master
...
* pr/1601:
Fix copy/paste in Javadoc
2017-11-21 06:58:45 +01:00
jianglei
4b614dc1de
Fix copy/paste in Javadoc
...
Closes gh-1601
2017-11-21 06:58:14 +01:00
Rossen Stoyanchev
bc8e525e60
Add shared instance of ReactiveAdapterRegistry
...
Issue: SPR-16218
2017-11-20 17:02:22 -05:00
Juergen Hoeller
6f24c0de17
Consistent use of tabs for sample code in the reference documentation
2017-11-20 22:28:00 +01:00
Juergen Hoeller
08c78554b9
Deprecate Castor support
...
Issue: SPR-16219
2017-11-20 22:27:47 +01:00
Juergen Hoeller
40dacd3c1c
Polishing
2017-11-20 22:27:07 +01:00
Juergen Hoeller
73b9aaa7ff
Upgrade to RxJava 1.3.4
2017-11-20 22:26:39 +01:00
Juergen Hoeller
27bbb73583
Expose all HttpResource header values (even if commonly not multi-value)
...
Issue: SPR-14264
2017-11-20 15:31:34 +01:00
Juergen Hoeller
84699c8b9b
Document common use cases for @Order vs @Priority vs @DependsOn
...
Issue: SPR-16213
2017-11-20 12:53:37 +01:00
Juergen Hoeller
040aae5309
Upgrade to Protobuf 3.5 and Apache Johnzon 1.1.5
2017-11-20 12:49:25 +01:00
Juergen Hoeller
daee6eeaad
ParameterMetaData.getParameterType performance on Oracle 12c
...
Issue: SPR-16139
2017-11-19 21:17:32 +01:00
Juergen Hoeller
a8b48848b9
SqlParameterSourceUtils.createBatch with Collection support
...
Issue: SPR-16215
2017-11-19 21:17:24 +01:00
Juergen Hoeller
20fcefc647
ResourceHttpRequestHandler uses EmbeddedValueResolverAware
2017-11-19 21:16:29 +01:00
Juergen Hoeller
14a7da8183
Upgrade to Hibernate Validator 6.0.5
2017-11-19 21:16:10 +01:00
Andy Clement
508aea8a47
Rework implementation of PathPattern.extractPathWithinPattern
...
This commit changes the implementation of the PathPattern
extractPathWithinPattern method that used an old AntPathMatcher
derivative to a new version that integrates more closely with
PathContainer.
It also introduces consistency in a couple of areas. The javadoc
is updated to specify this but basically:
- the response from the extra method will have all leading
and trailing separators removed.
- the response will have multiple adjacent separators within the
reponse reduced to just one. (For example response would be
aaa/bb/cc and not aaa///bbb//cc)
If your response would start or finish with multiple separators, they
are all removed.
Issue: SPR-16120
2017-11-17 12:03:17 -08:00
Rossen Stoyanchev
b1b5353b7f
Revise charset by location support for static resources
2017-11-17 12:33:58 -05:00
Rossen Stoyanchev
ce895d7a84
Add mention of shortcut methods in BodyInserters
2017-11-17 10:43:53 -05:00
Violeta Georgieva
0fbfa64385
UndertowServerHttpRequest: suspend reading when no demand
...
- When there is no demand for reading, the implementation
should suspend reading otherwise useless events will be
send by Undertow to the registered read listener.
- There is not need to wait for an event for reading/writing after calling
resumeReads/resumeWrites
2017-11-16 16:15:55 +01:00
sdeleuze
3e8e0c1d6a
Upgrade to Reactor Bismuth-SR4
...
Issue: SPR-16206
2017-11-16 15:36:42 +01:00
sdeleuze
c530745015
Fix JsonView + HttpEntity Reactive handling
...
This commit adds
AbstractMessageReaderArgumentResolver#readBody and
AbstractMessageWriterResultHandler#writeBody variants
which allow to pass the actual MethodParameter in order
to perform proper annotation-based hint resolution with
nested generics, for example with HttpEntity.
Issue: SPR-16098
2017-11-16 15:12:58 +01:00
Arjen Poutsma
e4d405271a
Document DataBuffer/PooledDataBuffer and codecs
...
Issue: SPR-16156
2017-11-16 11:36:26 +01:00
Juergen Hoeller
cc7c90cca5
Polishing
2017-11-16 10:52:56 +01:00
Juergen Hoeller
7af9910244
Restored support for placeholders in mvc namespace resource locations
...
With the recent charset mechanism in place, we cannot rely on implicit placeholder parsing during String-to-Resource conversion anymore.
2017-11-16 09:36:23 +01:00
Rossen Stoyanchev
8e21023f28
Update docs on ClientResponse
...
Issue: SPR-16200
2017-11-15 17:08:57 -08:00
Rossen Stoyanchev
19a9bc4747
Remove unnecessary assertion
...
Issue: SPR-16201
2017-11-15 16:04:32 -08:00
Rossen Stoyanchev
6e05a5881e
Update WebClient Javadoc
...
Issue: SPR-16197
2017-11-15 15:09:01 -08:00
Juergen Hoeller
7bcbdbbc62
Upgrade to AspectJ 1.8.13 (and 1.9 RC2)
...
Issue: SPR-16161
2017-11-15 23:55:55 +01:00
sdeleuze
9dd29f76ae
Polish CORS documentation
2017-11-15 16:16:13 +01:00
sdeleuze
38040bf3f2
Add WebFlux CORS reference documentation
...
Issue: SPR-16199
2017-11-15 16:16:01 +01:00
Juergen Hoeller
7697b398d5
Polishing
2017-11-14 17:11:16 +01:00
Juergen Hoeller
85baba33bf
Accessors for PeriodicTrigger properties
...
Issue: SPR-15982
2017-11-14 17:09:19 +01:00
Rossen Stoyanchev
fb7b7d089b
Revert erroneously committed change
2017-11-14 08:42:04 -05:00
sdeleuze
90e5945014
Upgrade to Kotlin 1.1.60
...
Issue: SPR-16194
2017-11-14 10:09:00 +01:00
sdeleuze
edf8232555
Avoid implicit autowiring with Kotlin secondary ctors
...
Autowiring implicitely Kotlin primary constructors
when there are secondary constructors has side effects
on ConstructorResolver. It seems reasonable to
require explicit @Autowired annotation in such case.
With this commit, implicit autowiring of Kotlin
primary constructors is only performed when there
is a primary constructor defined alone or with
a default constructor (define explicitly or
generated via the kotlin-noarg compiler plugin
or via optional constructor parameters with default
values).
Issue: SPR-16022
2017-11-14 09:25:46 +01:00
Rossen Stoyanchev
536e72c8df
Add WebSocket chapter to WebFlux section
...
Issue: SPR-15700
2017-11-13 23:20:01 -05:00
Rossen Stoyanchev
0dd31b834e
Refactor WebSocket intro and create separate doc
...
Issue: SPR-15700
2017-11-13 23:20:01 -05:00
Rossen Stoyanchev
5e86049438
Expose WebSocket options for Tomcat/Jetty
2017-11-13 23:20:01 -05:00
Rossen Stoyanchev
e818b904ad
Polish WebSocket-related
2017-11-13 23:20:01 -05:00
Juergen Hoeller
c30145d6f9
MethodReference treats proxy-targeting expressions as non-compilable
...
Issue: SPR-16191
2017-11-13 23:00:53 +01:00
Juergen Hoeller
7406f5993a
Polishing
2017-11-13 22:39:39 +01:00
Juergen Hoeller
3e5209bea5
Test dependency updates (Mockito 2.12, HtmlUnit 2.28, Selenium 3.7.1, XMLUnit 2.5.1)
2017-11-13 21:51:23 +01:00
Juergen Hoeller
b5cedd43eb
Consistent and efficient access to BeanDefinition argument values
...
Issue: SPR-16192
2017-11-13 21:51:11 +01:00
Juergen Hoeller
e2bb06edbd
Unit tests for unresolvable generics with partial mismatch
...
Issue: SPR-16179
2017-11-13 21:51:02 +01:00
Juergen Hoeller
3091feee23
SpringValidatorAdapter skips value retrieval for Set field without index
...
Issue: SPR-16177
2017-11-13 21:50:55 +01:00
diesieben07
0e49e32188
Handle parameters of Kotlin extension methods correctly
...
The EXTENSION_RECEIVER parameter of Kotlin's extension
methods appear as normal method parameters to Java and
thus require a name. The synthetic name "$receiver" is
used here, as it is not a valid Kotlin identifier,
but valid in Java.
Issue: SPR-16119
2017-11-13 15:42:32 +01:00
Sam Brannen
2be2aa7b96
Add missing word to JavaDoc
2017-11-13 00:46:20 +01:00
Sam Brannen
532eb1d776
Upgrade to JUnit Jupiter 5.0.2
2017-11-12 23:43:02 +01:00
Juergen Hoeller
e2018e6b72
HibernateJpaVendorAdapter sets connection release mode ON_CLOSE in non-PersistenceUnitInfo bootstrap scenario
...
Issue: SPR-16162
2017-11-11 18:43:43 +01:00
Juergen Hoeller
72f20e8d4f
Polishing
2017-11-11 00:37:50 +01:00
Rossen Stoyanchev
87375fe6f8
ServerHttpRequest exposes SSL certificates
...
Issue: SPR-15964
2017-11-10 16:43:12 -05:00
Rossen Stoyanchev
9a894ab61e
Use ResponseEntity Content-Type as producible media type
...
Issue: SPR-16172
2017-11-10 15:05:03 -05:00
Juergen Hoeller
780993ce75
Polishing
2017-11-10 20:21:26 +01:00
Juergen Hoeller
a80fd9994a
HibernateJpaVendorAdapter preserves connection release mode for JTA
...
Issue: SPR-16162
2017-11-10 20:21:03 +01:00
Juergen Hoeller
de782026c4
Explicitly document UriTemplate as thread-safe
...
Issue: SPR-16173
2017-11-10 20:20:23 +01:00
Juergen Hoeller
a5da05c3dc
Comprehensive documentation on injection point matching
...
Issue: SPR-16142
2017-11-10 20:20:13 +01:00
Juergen Hoeller
423af674cd
Upgrade to Gradle 4.3.1 (and Netty 4.1.17)
...
Issue: SPR-16080
2017-11-10 20:20:02 +01:00
Rossen Stoyanchev
f565f635e3
Polish
2017-11-10 11:29:58 -05:00
Rossen Stoyanchev
ff97eafa4f
Fix NPE in ErrorsArgumentResolver
...
Issue: SPR-16187
2017-11-10 10:57:26 -05:00
Rossen Stoyanchev
a5103307c6
Polish ErrorArgumentResolver
2017-11-10 10:15:46 -05:00
Arjen Poutsma
8223809455
Use existing CompositeByteBuf if possible
...
This commit uses the existing CompositeByteBuf if present, as opposed
to creating a new composite for every call to
NettyDataBuffer.write(ByteBuf...)
Issue: SPR-16180
2017-11-10 15:09:14 +01:00
Rossen Stoyanchev
8cfa3c632b
Allow Undertow client in websocket integration tests
...
It seems to work.
2017-11-09 17:49:11 -05:00
Rossen Stoyanchev
988c5f2b56
Merge pull request #1590 from yneth/master
2017-11-09 17:17:04 -05:00
Rossen Stoyanchev
cb34b0b963
Polish
2017-11-09 17:16:31 -05:00
anton_bondarenko
b487db294b
Fix NullPointer when setting cookies in RequestUriSpec
2017-11-09 16:59:44 -05:00
Rossen Stoyanchev
807297f173
Remove RxNetty (from test sources)
...
Practically no changes to RxNetty for a year and efforts underway to
rebuild 0.6.x based on a current Reactor Netty base.
Aside from the extra time to run integration tests having two
Netty-based servers can also cause false alarms such as ByteBuf leaks
related to RxNetty.
2017-11-09 15:56:56 -05:00
Rossen Stoyanchev
369d33c3d0
Support charset config by (static) resource location
...
This commit adds support for configuring static resource locations
with a charset to be applied to relative paths.
2017-11-09 13:15:06 -05:00
Arjen Poutsma
db00669197
Allow to set cookies in ServerResponse
...
Issue: SPR-16121
2017-11-09 11:04:02 +01:00
Rossen Stoyanchev
840ef46a9f
Polish
...
Also remove ErrorDeferredResultProcessingInterceptor which was meant
to be package private to begin with as its peer
ErrorCallableProcessingInterceptor (also removed).
2017-11-08 23:15:31 -05:00
Juergen Hoeller
457c70cf33
Merge pull request #1588 from benbenw/SPR-16170
...
Improve memory allocations when substituting named parameters
Issue: SPR-16170
2017-11-08 23:54:38 +01:00
benoit
667e0341fa
Improve memory allocations when substituting named parameters.
...
Create the buffer with at least the original sql length to avoid
multiple re-allocations
Add a fast path if the original sql doesn't contain any parameters
2017-11-08 23:45:53 +01:00
Rossen Stoyanchev
263da1535b
WebTestClient can be configured with connector
...
Issue: SPR-16168
2017-11-07 13:01:12 -05:00
sdeleuze
1a246c0a67
Fix ListableBeanFactory Kotlin extensions return types
2017-11-07 13:51:53 +01:00
Rossen Stoyanchev
9786750b5a
Improve @RequestAttribute WebFlux resolver
...
The resolver now takes into account the possibility the attribute
itself may be a reactive type.
Issue: SPR-16158
2017-11-06 21:44:45 -05:00
Rossen Stoyanchev
14f02d7192
Update reference with examples of multipart requests
...
Issue: SPR-16118
2017-11-06 16:33:58 -05:00
Juergen Hoeller
4ec60f08ad
PrintingResultHandler defensively accesses session.getAttributeNames()
...
Issue: SPR-16164
2017-11-06 21:19:44 +01:00
Juergen Hoeller
899994e7c1
Merge pull request #1587 from dreis2211/SPR-16165
...
Reduce access on headers for STOMP messaging
Issue: SPR-16165
2017-11-06 20:41:10 +01:00
Christoph Dreis
9fab208fdd
Reduce access on headers for STOMP messaging
...
Issue: SPR-16165
2017-11-06 20:19:00 +01:00
Juergen Hoeller
ffd6eff369
Scheduled task introspection through ScheduledTaskHolder interface
...
Issue: SPR-15982
2017-11-06 18:36:39 +01:00
Juergen Hoeller
9511d29adb
Updated bean count expectations in ClassPathBeanDefinitionScannerTests
...
Issue: SPR-16152
2017-11-06 18:36:29 +01:00
Arjen Poutsma
af2e296ff3
Javadoc
2017-11-06 16:00:18 +01:00
Stephane Nicoll
1838ddb95d
Support Ant-style package name with component index
...
This commit improves the component index so that it supports ant-style
package name (i.e. com.example.**.foo).
Issue: SPR-16152
2017-11-06 15:19:30 +01:00
Juergen Hoeller
9649b0cb25
Properly resolve null beans as getBeansOfType result entries
...
Issue: SPR-16163
2017-11-06 13:27:51 +01:00
Arjen Poutsma
2d1f87501c
Add MultipartBodyBuilder
...
This commit introduces the MultipartBodyBuilder, a builder for multipart
form bodies.
Issue: SPR-16134
2017-11-06 10:42:11 +01:00
Juergen Hoeller
9b7af8b5aa
Polishing
2017-11-05 21:07:26 +01:00
Juergen Hoeller
07b479e264
FileUrlResource creates same class from createRelative
...
Issue: SPR-16140
2017-11-05 21:01:29 +01:00
Juergen Hoeller
a75dd2dd3e
Consistent getDateHeader checks in spring-webmvc unit tests
...
Issue: SPR-16160
2017-11-05 17:00:18 +01:00
Juergen Hoeller
e5c1deea63
Polishing
2017-11-05 16:23:30 +01:00
Juergen Hoeller
80a0cf71f4
MockHttpServletResponse.getDateHeader returns -1 for non-existent header
...
Includes consistent getDateHeader results in both MockHttpServletResponse variants (spring-test and spring-web)
Issue: SPR-16160
2017-11-05 16:12:21 +01:00
Juergen Hoeller
0edf4d6509
MockHttpServletRequest.getRequestURL aligns with getServerName/Port
...
Issue: SPR-16138
2017-11-05 16:11:21 +01:00
Juergen Hoeller
db050ac38c
Polishing
2017-11-04 01:07:09 +01:00
Juergen Hoeller
996d747aed
Upgrade to Mockito 2.11
...
Includes fixes for invalid exception declarations in Mockito-based unit tests. Also includes FreeMarker 2.3.27, Commons Pool 2.4.3, JSON-P 1.1.2.
Issue: SPR-16157
2017-11-04 01:06:59 +01:00
Juergen Hoeller
a37fce854f
Merge pull request #1586 from jmax01/master
...
Correctly handle NVARCHAR, LONGNVARCHAR and NCLOBs
Issue: SPR-16154
2017-11-03 23:48:44 +01:00
jmaxwell
e4c5b77de7
SPR-16154 - Correctly handle NVARCHAR, LONGNVARCHAR and NCLOBs
2017-11-03 14:49:32 -05:00
Rossen Stoyanchev
845110aa66
Update docs on HTTP/2
2017-11-03 10:35:42 -04:00
Stephane Nicoll
fb76aa0150
Detected candidate inner classes
...
This commit improves the indexer to also consider static inner classes
on top of regular top level classes.
Issue: SPR-16112
2017-11-03 13:25:23 +01:00
Rossen Stoyanchev
ef39092b3b
UriUtils#encodUriVariables methods are now public
2017-11-03 08:21:55 -04:00
Jay Bryant
7964360f79
Fix a broken link
2017-11-02 21:21:24 -04:00
Rossen Stoyanchev
4534c5fbfc
AbstractReactiveWebInitializer supports Servlet mapping
...
Issue: SPR-16155, SPR-16144
2017-11-02 21:03:09 -04:00
Rossen Stoyanchev
8c33ed02b3
ServletHttpHandlerAdapter supports Serlvet path mapping
...
Issue: SPR-16155
2017-11-02 20:53:26 -04:00
Rossen Stoyanchev
aa653b23bc
Add AbstractReactiveWebInitializer
...
This commit introduces a new AbstractReactiveWebInitializer in
spring-web that relies on WebHttpHandlerBuilder to detect request
processing infrastructure beans from an ApplicationContext.
This eliminates the need to create a DispatcherHandler, since it is
expected to be a Spring bean, and as a result the initializers in
spring-webflux have been deprecated.
Issue: SPR-16144
2017-11-02 14:57:06 -04:00
Juergen Hoeller
1611ce7180
AbstractApplicationContext silently ignores non-initialized ApplicationEventMulticaster/LifecycleProcessor on destruction
...
Issue: SPR-16149
2017-11-02 16:07:12 +01:00
Juergen Hoeller
d00e4f17ec
ClassPathResource uses specific constructors in createRelative
...
Issue: SPR-16146
2017-11-02 16:05:57 +01:00
Juergen Hoeller
b921d564d2
DefaultResourceLoader resolves writable FileUrlResource for "file:" URL
...
Issue: SPR-16140
2017-11-02 16:05:40 +01:00
Juergen Hoeller
da9f138a65
Upgrade to Caffeine 2.6 and Undertow 1.4.21
2017-11-02 16:05:27 +01:00
Norman Soetbeer
4dee333a75
Allow empty usernames for BasicAuth
...
The RFCs around basic authentication don't explicitly disallow empty
usernames. On the other hand usernames containing colons are, as colons
are used to separate the username from the password.
2017-11-02 09:59:14 -05:00
Rossen Stoyanchev
abe4420006
Improve ReactorNettyTcpClient shutdown logic
...
This commit takes care of the TODOs in ReactorNettyTcpClient by taking
advantage of improvements in Reactor Netty.
Issue: SPR-16145
2017-11-01 16:34:32 -04:00
Rossen Stoyanchev
b35b50bef1
Polish
2017-11-01 09:21:36 -04:00
Rossen Stoyanchev
64bc9b4311
Do match message type
...
SimpMessageTypeMessageCondition was lenient in matching the message
type, essentially matching on any non-null message type with an exact
match given a preference only in comparing mulitple matches.
This commit modifies matching logic to look for an exact match.
Issue: SPR-16109
2017-11-01 09:21:36 -04:00
Arjen Poutsma
a58002a5de
Chained API for form and multipart data in BodyInserters
...
Issue: SPR-16133
2017-11-01 13:17:52 +01:00
Rossen Stoyanchev
579328bd7a
MockClientHttpRequest|Response support cookie headers
...
Issue: SPR-16124
2017-10-31 12:08:18 -04:00
Juergen Hoeller
d06129debd
InterceptingHttpAccessor uses internal ArrayList for sorting
...
Also caches InterceptingClientHttpRequestFactory (if applicable)
Issue: SPR-16137
2017-10-31 16:33:38 +01:00
Rossen Stoyanchev
48c2cc18b9
Update form + multipart data Javadoc on BodyInserters
...
Issue: SPR-16118
2017-10-31 09:21:09 -04:00
Rossen Stoyanchev
8083eaae54
syncBody better differentiates plain vs multipart forms
...
FromHttpMessageWriter and MultipartHttpMessageWriter both support
MultiValueMap except the former supports String values only. This
presents an issue since either full generic type information must be
provided, which is cumbersome on the client side, or if left out there
is no good way to order the writers to make a proper decision.
This commit:
- refines the canWrite behavior of to not a
accept MultiValueMap without proper generic information unless the
MediaType is explicitly set providing a strong hint.
- modifies MultipartHttpMessageWriter to be configured with a
FormHttpMessageWriter so it can write both plan and multipart data with
the ability to properly differentiate based on actual map values.
Issue: SPR-16131
2017-10-31 09:12:05 -04:00
Juergen Hoeller
e5c8dc0d65
MessageSource.getMessage returns null default message as-is (again)
...
Issue: SPR-16127
2017-10-31 11:06:42 +01:00
Juergen Hoeller
295e3b6a99
MockRestServiceServer test for follow-up request after failure
...
Issue: SPR-16132
2017-10-30 16:40:20 +01:00
Juergen Hoeller
3c07afc5be
Merge pull request #1580 from epabst/SPR-16132
...
Move requests.add(request) into finally block.
2017-10-30 16:19:30 +01:00
Eric Pabst
43d88e4a25
Move requests.add(request) into finally block.
...
This avoids "IllegalStateException: Expectations already declared" when
a MockRestServiceServer is used after one request throws an exception.
Issues: SPR-16132
2017-10-30 08:53:13 -06:00
Arjen Poutsma
49787493a6
Proper Undertow PooledByteBuffer release
...
This commit changes the way Undertow's PooledByteBuffers are dealt with.
Previously, these buffers where closed as soon as all data was read. As
of this commit, the UndertowServerHttpRequest returns PooledDataBuffers
from getBody(), so that the buffers are released when release() is
called.
2017-10-30 10:39:18 +01:00
Juergen Hoeller
70ed45020b
Add StatusAssertions.isForbidden
...
Includes aligned quoting for header assertion messages.
Also aligns HeaderAssertionTests class name.
Issue: SPR-16129
2017-10-29 09:51:25 +01:00
Rossen Stoyanchev
d9ede5bcca
Remove link to build and release FAQ
...
The "Build from Source" wiki page now consolidates build-related information
and is independent from "Release" information. The former is broadly of interest
to any contributor. The later is of interest to committers.
2017-10-27 16:42:29 -04:00
Rossen Stoyanchev
f549d583cb
Update links
2017-10-27 16:02:54 -04:00
Rossen Stoyanchev
b3407a6ce7
Update link.
2017-10-27 15:55:21 -04:00
Juergen Hoeller
80fc85067e
Upgrade to RxJava 2.1.6
2017-10-27 15:29:17 +02:00
Juergen Hoeller
78284a62e2
Polishing
2017-10-27 15:28:51 +02:00
Sebastien Deleuze
0e1be82cfb
Add SPR-15942 to the refdoc list of pending Kotlin issues
2017-10-27 13:56:24 +02:00
Sebastien Deleuze
b9a0e6bbf2
Update documentation about WebTestClient Kotlin issue
...
Issue: SPR-16057
2017-10-27 13:52:51 +02:00
Juergen Hoeller
419b4440a7
Introspect interface-declared methods in case of proxy (for varargs)
...
Issue: SPR-16122
2017-10-27 10:52:44 +02:00
Rossen Stoyanchev
2611aa000d
Polish
2017-10-26 21:20:45 -04:00
Rossen Stoyanchev
9d00552aac
Add logo to README
2017-10-26 21:10:09 -04:00
Rossen Stoyanchev
4437a185f4
Replace logo
2017-10-26 21:02:38 -04:00
Rossen Stoyanchev
e0177c9af6
Add logo
2017-10-26 20:44:03 -04:00
Rossen Stoyanchev
a7c30570c4
Update README.md
2017-10-26 17:49:54 -04:00
Juergen Hoeller
fd6f2bd6a4
Test for null value against boolean property
...
Issue: SPR-16123
2017-10-26 22:49:34 +02:00
Juergen Hoeller
ee7b928300
Upgrade to Derby 10.14.1.0
2017-10-26 21:26:31 +02:00
Juergen Hoeller
a2f5e1254e
Drive letter case alignment in addClassPathManifestEntries
...
Issue: SPR-16117
2017-10-26 15:28:27 +02:00
Rossen Stoyanchev
a982123ed5
Decouple ExchangeResult from WiretapRequest/Response
...
This commit decouples ExchangeResult from knowledge about
WiretapClientHttpRequest/Response both of which are now private to
WiretapConnector.
ExchangeResult takes ClientHttpRequest/Response instead along with
promises for the serialized request and response content in the form
of MonoProcessor<byte[]>.
This sets up the possibility for an ExchangeResult to be created
outside and independent of WebTestClient, should we decide to make its
constructor public.
Issue: SPR-16101
2017-10-25 17:41:46 -04:00
Juergen Hoeller
7e8c8f0b76
Polishing
2017-10-25 19:23:48 +02:00
Juergen Hoeller
f965123513
Correct SpEL example (matching its comment)
...
Issue: SPR-16111
2017-10-25 19:19:32 +02:00
Juergen Hoeller
9bab7a2708
Upgrade to Java Activation Framework 1.2 for test runtime
...
Includes upgrade to Hibernate Validator 6.0.4 (where applicable)
Issue: SPR-16115
2017-10-25 19:18:10 +02:00
Rossen Stoyanchev
01e7cae3ed
Fix links
2017-10-25 11:19:30 -04:00
Rossen Stoyanchev
065c9cc101
Typo
2017-10-25 11:17:03 -04:00
Rossen Stoyanchev
376e5b6b53
README + CONTRIBUTING refer to Build from Source wiki
2017-10-25 11:14:42 -04:00
Rossen Stoyanchev
3c1518f53a
Update CONTRIBUTING.md
2017-10-25 10:13:11 -04:00
Rossen Stoyanchev
5ac377499c
CONTRIBUTING is markdwon again + polish README
...
The main way CONTRIBUTING will be viewed is on Github and the output
is just not good enough to justify using asciidoctor vs md/txt as
the recommended on the Github help page for contributing guidelines.
For example it was attractive to use a TOC and that works on Github
but doesn't look good. In the end it's a very short TOC and
maintaining manually is easy enough and it's easier to control the
look.
2017-10-25 10:05:41 -04:00
Rossen Stoyanchev
bf4c97cb1c
Polish README
2017-10-24 23:48:12 -04:00
Rossen Stoyanchev
4e384a636f
Polish README
2017-10-24 23:42:54 -04:00
Rossen Stoyanchev
b1068fe71e
Replace TOC with manual listing
...
Essentially optimize for viewing on Github since the Asciidoctor
TOC works but doesn't look good with no styling.
2017-10-24 23:30:15 -04:00
Rossen Stoyanchev
a455feab59
Optimize TOC for viewing on Github
2017-10-24 23:21:29 -04:00
Rossen Stoyanchev
375d26ed50
Update link to CONTRIBUTING
2017-10-24 23:19:45 -04:00
Rossen Stoyanchev
e30d1d92ec
Overhaul contributing guidelines
...
The guidelines were originally created several years ago. This commit
does not fundamentally change anything but rather make the guidance
more compact.
The commit consolidates into into CONTRIBUTING.adoc information from
CONTRIBUTING-DOCUMENTATION.adoc and also the wiki page "The Lifecycle
of an Issue".
2017-10-24 22:54:26 -04:00
Rossen Stoyanchev
ce4d88d474
Convert CONTRIBUTING from md to adoc
2017-10-24 15:57:47 -04:00
Spring Buildmaster
6dcc8539f7
Next Development Version
2017-10-24 15:15:29 +00:00
Juergen Hoeller
d963597ec0
Test with hasError for unknown status code
...
Issue: SPR-16108
2017-10-24 15:51:29 +02:00
Juergen Hoeller
9cfa9291cc
Polishing
2017-10-24 14:56:38 +02:00
Juergen Hoeller
2d0ab4740c
Consistent hasText checks for CharSequence vs String
...
Directly inlined hasLength implementations for proper nullability detection in IntelliJ, assuming a hasText checked value is never null afterwards. Since the JVM is going to do this at runtime anyway, this is effectively equivalent but more indicative for source code introspection algorithms.
Issue: SPR-15540
2017-10-24 13:16:47 +02:00
Juergen Hoeller
9efdadcdca
Compatibility with OpenPDF as alternative to iText 2.1.7
...
Issue: SPR-16107
2017-10-24 13:14:53 +02:00
Juergen Hoeller
efe943df72
WebSphereUowTransactionManager logs overridden application exceptions
...
Issue: SPR-16102
2017-10-24 13:14:22 +02:00
Brian Clozel
bf6025303b
Start documenting HTTP/2 support
...
A new HTTP/2 support section has been added in the Spring MVC
documentation. Also, a dedicated wiki page is created for specific
container support information.
Issue: SPR-15821
2017-10-24 11:41:51 +02:00
Arjen Poutsma
6457a1556e
Javadoc
2017-10-24 10:59:47 +02:00
Juergen Hoeller
a4f8ce7553
Upgrade to AspectJ 1.9 RC1
...
Issue: SPR-16077
2017-10-24 02:02:59 +02:00
Juergen Hoeller
182da15908
BridgeMethodResolver properly resolves interface hierarchies
...
Issue: SPR-16103
2017-10-24 01:01:49 +02:00
Juergen Hoeller
55b0c2f243
Polishing
2017-10-24 01:01:42 +02:00
Sebastien Deleuze
1c256a112b
Parse correctly ContentDisposition header with semicolons
...
Issue: SPR-16091
2017-10-23 23:09:14 +02:00
Rossen Stoyanchev
a3e62284ea
Create Languages section
...
Issue: SPR-16044
2017-10-23 16:57:56 -04:00
Rossen Stoyanchev
c80aa83383
Upgrade to Reactor Bismuth SR3
2017-10-23 15:01:51 -04:00
Juergen Hoeller
ecea82d3a5
Polishing
2017-10-23 17:14:09 +02:00
Juergen Hoeller
f31069ac05
Upgrade to Selenium 3.6 and XMLUnit 2.5
2017-10-23 17:13:55 +02:00
Arjen Poutsma
40a6fba443
Allow to change URL/method in ClientRequest.Builder
...
This commit exposes the ClientRequest's URL and HttpMethod fields via a
setter, so that they can be changed more easily in a request that was
created via ClientRequest.from(ClientRequest).
Issue: SPR-16093
2017-10-23 16:39:33 +02:00
Sebastien Deleuze
585ad5961a
Upgrade to Reactor Bismuth-SR2
...
Issue: SPR-16085
2017-10-23 11:35:46 +02:00
Stephane Nicoll
62c6a0054d
Merge pull request #1575 from ocadaruma:fix-example
...
* pr/1575:
Fix wrong javadoc example
2017-10-23 09:20:46 +02:00
Haruki Okada
159da04eed
Fix wrong javadoc example
...
Closes gh-1575
2017-10-23 09:20:19 +02:00
Juergen Hoeller
c7100f771c
Explicit notes on advice mode proxy vs aspectj
...
Issue: SPR-16092
2017-10-22 20:34:34 +02:00
Juergen Hoeller
75ec973bae
Refined tests for StringUtils.starts/endsWithIgnoreCase
...
Issue: SPR-16095
2017-10-22 20:29:46 +02:00
Juergen Hoeller
5d41e0f012
Avoid temporary String creation in StringUtils.starts/endsWithIgnoreCase
...
Issue: SPR-16095
2017-10-22 14:31:17 +02:00
Juergen Hoeller
9a88ebdeba
Consistent hasText checks for CharSequence vs String
...
Issue: SPR-15540
2017-10-22 12:12:32 +02:00
Juergen Hoeller
9288990603
Varargs and consistent nullability in MailMessage implementations
...
Issue: SPR-15756
2017-10-21 23:18:54 +02:00
Juergen Hoeller
5809f5b8eb
SubProtocolWebSocketHandler provides protected decorateSession method
...
Issue: SPR-16089
2017-10-21 23:02:54 +02:00
Juergen Hoeller
d418ba1b5d
Remove snapshot repository (after Reactor Bismuth-SR1 upgrade)
...
Issue: SPR-16085
2017-10-21 22:55:51 +02:00
Stephane Nicoll
9404041719
Upgrade to Reactor Bismuth-SR1
2017-10-21 08:10:56 +02:00
Rossen Stoyanchev
1cc5afe24b
Fix lines over 120 characters
...
https://github.com/spring-projects/spring-framework/wiki/Spring-Framework-Code-Style#line-wrapping
2017-10-20 16:42:26 -04:00
Stephane Nicoll
8ad212dae2
Merge pull request #1570 from wilkinsona:patch-3
...
* pr/1570:
Add missing "be" in Part's javadoc
2017-10-20 16:44:08 +02:00
Andy Wilkinson
07eee05d1d
Add missing "be" in Part's javadoc
...
Closes gh-1570
2017-10-20 16:43:48 +02:00
Juergen Hoeller
e17ad551f3
Latest dependency updates (RxJava 1.3.3, Hibernate ORM 5.2.12, Hibernate Validator 5.4.2 & 6.0.3)
2017-10-20 16:16:06 +02:00
Juergen Hoeller
d1fac36e3e
SchedulingConfigurer and JmsListenerConfigurer respect @Order
...
Issue: SPR-16090
2017-10-20 16:10:12 +02:00
Juergen Hoeller
a4537b1b6d
Accessors for configured send-time and buffer-size limit
...
Issue: SPR-16089
2017-10-20 16:02:26 +02:00
Rossen Stoyanchev
48eb416ecc
Fix failing tests
2017-10-19 21:42:31 -04:00
Rossen Stoyanchev
ab92754a2e
@MatrixVariable resolvers for WebFlux
...
The information was already parsed and available in a request attribute
but until now there were no argument resolvers to expose it.
Issue: SPR-16005
2017-10-19 21:01:38 -04:00
Arjen Poutsma
c7a15260d6
Various DataBuffer improvements
...
This commit introduces various improvements in DataBuffer:
- DataBuffer now exposes its read and write position, as well as its
capacity and writable byte count.
- Added DataBuffer.asByteBuffer(int, int)
- DataBufferUtils.read now reads directly into a DataBuffer, rather than
copying a ByteBuffer into a DataBuffer
- TomcatHttpHandler now reads directly into a DataBuffer
Issues: SPR-16068 SPR-16070
2017-10-19 10:38:52 +02:00
Rossen Stoyanchev
d8a7b96b46
WebFlux support for "request handled" in controller
...
Issue: SPR-16087
2017-10-18 21:07:27 -04:00
Juergen Hoeller
a3eeda99e0
Consistent separation between chapters and after chapter titles
2017-10-18 20:24:17 +02:00
Juergen Hoeller
9df6f3e6b8
Polishing
2017-10-18 20:21:49 +02:00
Juergen Hoeller
c3378fda33
AbstractMessageSource properly interacts with non-AbstractMessageSource parent
...
Issue: SPR-16047
2017-10-18 20:21:12 +02:00
Rossen Stoyanchev
950edf888a
Support for Map method argument in WebFlux
...
Issue: SPR-16086
2017-10-18 11:41:46 -04:00
Juergen Hoeller
bec1fc1852
ModelAttributeMethodProcessor detects re-enabled binding declaration
...
Issue: SPR-16083
2017-10-18 12:31:22 +02:00
Juergen Hoeller
ea00c7c6c8
Explicit notes on ExceptionHandler root vs cause resolution
...
Issue: SPR-16074
2017-10-18 12:18:30 +02:00
Juergen Hoeller
ba74e42808
Upgrade to Gradle 4.2.1
...
Issue: SPR-15985
2017-10-18 12:17:24 +02:00
Juergen Hoeller
5f270bc432
Upgrade to SnakeYAML 1.19
2017-10-18 12:17:13 +02:00
Sebastien Deleuze
e5a55327f4
Upgrade to Reactor Bismuth-BUILD-SNAPSHOT
...
This is done in order to prepare for Reactor Bismuth-SR1
which will be used by Spring Framework 5.0.1.RELEASE.
Issue: SPR-16085
2017-10-18 11:38:07 +02:00
Rossen Stoyanchev
32d78e60b6
Update information on WebApplicationContext hierarchy
...
Issue: SPR-16041
2017-10-17 21:49:57 -04:00
Rossen Stoyanchev
cd634633d8
MockMvc re-uses response instance on async dispatch
...
MockMvc now properly detects the presence of an AsyncContext and
re-uses the response instance used to start it.
This commit also includes a minor fix in
ResponseBodyEmitterReturnValueHandler to ensure it does not disable
ETag related content buffering for reactive return values that do not
result in streaming (e.g. single value or collections).
Issue: SPR-16067
2017-10-17 16:57:35 -04:00
Rossen Stoyanchev
94c4a7f941
Shortcut factory method in MockServerWebExchange
...
MockServerWebExchange now has a second factory method that accepts a
MockServerHttpRequest.BaseBuilder.
Issue: SPR-16079
2017-10-17 12:23:12 -04:00
Juergen Hoeller
3d1023be8c
Polishing
2017-10-17 11:56:30 +02:00
Juergen Hoeller
ef6aef9107
Allow PropertyEditor conversion as fallback for enums
...
Issue: SPR-16082
2017-10-17 11:49:54 +02:00
Stephane Nicoll
3cb38cef2e
Merge pull request #1566 from drumonii:double-backtick-with-apostrophes
...
* pr/1566:
Missing some double backticks with apostrophes
2017-10-17 08:34:54 +02:00
Drummond Dawson
ff2bea9b6b
Missing some double backticks with apostrophes
...
Closes gh-1566
2017-10-17 08:33:46 +02:00
Rossen Stoyanchev
b4c95bf278
ReactiveAdapterRegistry uses Reactor's JdkFlowAdapter
...
Issue: SPR-16052
2017-10-16 20:49:22 -04:00
Juergen Hoeller
16a08cb465
Upgrade to Jackson 2.9.2
2017-10-16 23:53:23 +02:00
Juergen Hoeller
be9c096746
Extended coverage of full vs lite mode for configuration classes
...
Issue: SPR-16076
(cherry picked from commit 17fb4fed09 )
2017-10-16 23:53:09 +02:00
Juergen Hoeller
d1b5b5d2f7
Clarify destroy method suppression for DisposableBean vs (Auto)Closeable
...
Issue: SPR-16078
(cherry picked from commit dff2c84 )
2017-10-16 23:53:02 +02:00
Rossen Stoyanchev
2d05e538fb
Set path in CookieWebSessionIdResolver
...
Issue: SPR-16030
2017-10-16 09:55:58 -04:00
Rossen Stoyanchev
4831d38db2
Lower log level for ResponseStatusException
...
Issue: SPR-16049
2017-10-16 09:55:58 -04:00
Rossen Stoyanchev
e9187daa5c
Improvements to DispatcherHandler chapter
2017-10-16 09:55:58 -04:00
Rossen Stoyanchev
314f3fc547
Summary of client-side REST options in MVC section
2017-10-16 09:55:58 -04:00
Juergen Hoeller
c3cf0840b7
Polishing
2017-10-16 15:34:39 +02:00
Juergen Hoeller
c29b6f5b55
Consistent handling of null array for arguments
...
Issue: SPR-16075
2017-10-16 15:34:18 +02:00
Juergen Hoeller
3890d4c9eb
AbstractServerHttpResponse stores HTTP status code as integer value
...
Issue: SPR-16073
2017-10-16 15:34:09 +02:00
Sam Brannen
8a94077da0
Clean up warnings in spring-core
2017-10-15 18:28:08 +02:00
Sam Brannen
8f4fb207d7
Reinstate CastorUnmarshallerTests.clearCollectionsFalse()
2017-10-15 16:16:48 +02:00
Sam Brannen
e9367a11f6
Delete unused import
2017-10-15 16:15:44 +02:00
Juergen Hoeller
43b5e21947
Consistent alias declarations for value attribute on stereotypes
...
Issue: SPR-16066
2017-10-13 18:18:12 +02:00
Arjen Poutsma
24ca8ccf5a
WebTestClient.mutate() should not impact future .mutate() invocations
...
Issue: SPR-16059
2017-10-13 16:54:30 +02:00
Sebastien Deleuze
6e71664a60
Add spring-kotlin-fullstack example to Kotlin refdoc
2017-10-13 14:38:46 +02:00
Juergen Hoeller
625737f90a
Controller/Repository/Service declare value attribute as alias for Component
...
Issue: SPR-16066
2017-10-13 14:24:12 +02:00
Juergen Hoeller
682186a20d
Refactored CodecConfigurer creation for clearer subpackage interdependencies
...
Includes redeclaration of CodecConfigurer.DefaultCodecs without concrete Jackson decoder/encoder references in order to avoid hard Jackson dependency.
Issue: SPR-16064
2017-10-13 14:23:22 +02:00
Arjen Poutsma
faa74988c4
WebClient.mutate() should not impact future .mutate() invocations
...
Before this commit, when adding filters to a builder obtained via
`WebClient.mutate()`, the filters were added both to the original client
as well as the mutated builder. This commit fixes that.
Issue: SPR-16059
2017-10-13 11:23:10 +02:00
Sebastien Deleuze
2962f085e5
Relax type check in FormHttpMessage(Reader|Writer)
...
Issue: SPR-16055
2017-10-12 17:48:42 +02:00
Sam Brannen
ef0e4dc56a
Delete unused import
2017-10-12 17:31:10 +02:00
Juergen Hoeller
91a8993895
Skip init/destroy method check for null beans
...
Issue: SPR-16063
2017-10-12 15:31:57 +02:00
Juergen Hoeller
d611486978
HandlerMappingIntrospector.getHandlerMappings() never returns null
2017-10-12 15:31:11 +02:00
Rossen Stoyanchev
2e0a2845ab
Top-level main.css for all asciidoctor styles
...
Properly separate tocbot from asciidoctor styles and use main.css to
include both.
2017-10-11 07:40:25 -04:00
Brian Clozel
3febec3df6
ResourceWebHandler signals error for missing resources
...
Prior to this commit, the `ResourceWebHandler` would itself handle the
response with an HTTP 404 in many cases, including a missing static
resource.
This does not give a chance to `WebExceptionHandler` instances to handle
that error and, for example, display an error page.
See spring-projects/spring-boot#8625
Issue: SPR-16023
2017-10-10 23:28:03 +02:00
Brian Clozel
1356bd4359
Share HandlerInterceptors in ResourceHandlerMapping
...
Prior to this commit, the Resource `HandlerMapping` configured by
`@EnableSpringMvc` would be set up with only one custom
`HandlerInterceptor` (the one exposing the `ResourceUrlProvider` for
resolving URLs of static resources).
This behavior is not consistent with the rest of the default
configuration which leverages the interceptors configured against the
interceptor registry (with possible user-provided ones).
This change allows to register interceptors against resource handling;
this can be useful for metrics purposes, as in
spring-projects/spring-boot#10335 .
Issue: SPR-16034
2017-10-10 22:57:52 +02:00
Juergen Hoeller
699fde91db
Polishing
2017-10-10 22:18:09 +02:00
Rossen Stoyanchev
6833d4cdff
Spring MVC content refactoring
...
Easier to find (at the top level) and better summary of testing support.
Improve structure headings names.
Remove or update outdated content.
2017-10-10 16:16:29 -04:00
Juergen Hoeller
0d3fa4eb70
Upgrade to Apache Johnzon 1.1.4
2017-10-10 20:35:47 +02:00
Juergen Hoeller
6ef7dd4d5e
Notes on classpath scanning and exports vs opens with Jigsaw
...
Issue: SPR-14579
2017-10-10 20:33:52 +02:00
Juergen Hoeller
dc3299152c
Polishing
2017-10-09 16:06:03 +02:00
Juergen Hoeller
28e2dd0487
Upgrade to RxJava 2.1.5
2017-10-09 14:00:11 +02:00
Juergen Hoeller
cc6e6490d2
Polishing
2017-10-09 13:59:29 +02:00
Juergen Hoeller
ad4c8e7c0d
Consistently sort BeanDefinitionRegistryPostProcessors
...
Issue: SPR-16043
2017-10-09 13:59:09 +02:00
Juergen Hoeller
53091c76bf
Convenient forType methods for ParameterizedTypeReference
...
Issue: SPR-16054
2017-10-09 13:59:01 +02:00
Rossen Stoyanchev
d4677be5c0
Improve Web Servlet section structure
2017-10-06 21:29:36 -04:00
Rossen Stoyanchev
9998c63ee4
Compact headings in Web Servlet section
...
Optimized for viewing in left TOC.
2017-10-06 13:11:15 -04:00
Stephane Nicoll
b47905f050
Merge pull request #1549 from WilderPereira:patch-1
...
* pr/1549:
Fix doc format
2017-10-06 07:46:18 +02:00
Wilder Pereira
fba2633e6e
Fix doc format
...
Closes gh-1549
2017-10-06 07:45:31 +02:00
Rossen Stoyanchev
3533db78d2
Fix broken link to overview
2017-10-05 23:33:21 -04:00
Rossen Stoyanchev
b11caeb3ea
Fix headings in WebFlux section
2017-10-05 22:43:26 -04:00
Rossen Stoyanchev
ee3913c6d0
Use Tocbot for Table of Contents
2017-10-05 22:23:38 -04:00
Rossen Stoyanchev
8aaa7e9cc7
Polish index.html
2017-10-05 15:31:27 -04:00
Rossen Stoyanchev
eea8ee2165
Migrate JSP tag library appendix reference to Javadoc.
...
The Javadoc on tag classes now has all the information including a
list of all tags at the package level, HTML tables listing tag
attributes in each tag class, and class level description that is
as good or in many cases better than what was in the reference.
Issue: SPR-16045
2017-10-05 14:25:23 -04:00
Rossen Stoyanchev
e5a5677fcd
Appendix refactoring
...
1. Move schemas to local appendix within each top-level section.
2. Link to Javadoc for JSP tags
3. Purge Class Spring usage information
Issue: SPR-16045
2017-10-05 14:25:18 -04:00
Rossen Stoyanchev
d04d4bfb4d
Better "no content" support and polish in WebTestClient
...
The WebTestClient now takes advantage of the support for decoding
response to Void.class in WebClient so that applications can use
expectBody(Void.class) to the same effect as using
response.bodyToMono(Void.class) as documneted on WebClient#exchange.
The top-level, no-arg returnResult method (added very recently) has been
retracted, since the use of returnResult at that level, i.e. without
consuming the response content, should be used mainly for streaming.
It shouldn't be used for "no content" scenarios.
Documentation and Javadoc have been udpated accordingly.
2017-10-04 15:05:25 -04:00
Rossen Stoyanchev
decb6329db
DefaultWebTestClient internal refactoring
...
Use the ClientResponse methods bodyToMono and bodyToFlux rather than
passing in a BodyExtractor so that WebTestclient now also benefits from
the recently improved handling of Void.class.
2017-10-04 15:05:25 -04:00
Juergen Hoeller
66a6fdacca
Deprecate HibernateJpaSessionFactoryBean (against Hibernate 5.2)
...
Issue: SPR-16016
2017-10-04 12:29:16 +02:00
Juergen Hoeller
03b68286a2
Tokenizer uses single process step and length-based exhaustion check
...
Issue: SPR-16032
2017-10-04 12:23:16 +02:00
Rossen Stoyanchev
b2017bb1ec
3rd party web frameworks is back in the web section
2017-10-03 18:06:13 -04:00
Rossen Stoyanchev
45c207aece
What's new and migrating are prominently featured
...
Before this commit those were burried in the Appendix where few would
guess to look. Previously that information was at the top, so it makes
sense to point to the Github wiki from the index HTML page.
Also a general update of the index page. Since we have recently revised
the overview, we can simply point to it and keep it shorter.
The section listing now includes more details per section.
2017-10-03 17:59:07 -04:00
Rossen Stoyanchev
6597551858
WebClient content included in WebFlux section only
...
Before this commit WebClient documentation was also included from the
Integration section where the RestTemplate is documented. That is
convenient but results in duplicate content under different URLs.
This commit removes the include from the Integration section and leaves
2017-10-03 17:59:07 -04:00
Juergen Hoeller
3eebdb389b
Upgrade to JUnit 5.0.1 and Tomcat 8.5.23
2017-10-03 20:20:35 +02:00
Rossen Stoyanchev
fbf2e1e355
Documentation for WebTestClient
...
Issue: SPR-16009
2017-10-03 10:00:48 -04:00
Sebastien Deleuze
2ecd5a4f02
Update Kotlin issues list in the refdoc
2017-10-03 15:49:37 +02:00
Stephane Nicoll
34a7991e18
Merge pull request #1547 from tomfitzhenry:patch-1
...
* pr/1547:
Fix typo in exception message: quite -> quiet
2017-10-03 08:25:01 +02:00
Tom Fitzhenry
1fe3e0cd06
Fix typo in exception message: quite -> quiet
...
Closes gh-1547
2017-10-03 08:24:34 +02:00
Juergen Hoeller
c9d3c2690d
Properly resolve null candidates for collection injection
...
Issue: SPR-16033
2017-10-02 12:27:11 +02:00
Stephane Nicoll
30d1b53aa5
Merge pull request #1545 from MottoX:fix-typo
...
* pr/1545:
Fix typo
2017-10-01 09:23:23 +02:00
Robin Wang
d9c0151d41
Fix typo
...
Closes gh-1545
2017-10-01 09:23:07 +02:00
Sebastien Deleuze
cf86f9b3dd
Polish Kotlin reference documentation
2017-09-30 19:59:34 +02:00
Sam Brannen
657dc961f4
Polishing
2017-09-30 15:25:51 +02:00
Rossen Stoyanchev
7a8c8c062e
Add reactive mocks to testing section
2017-09-29 20:21:01 -04:00
Rossen Stoyanchev
48c41049b1
Correct package for MockServerWebExchange
...
Discovered late, but not too late. MockServerWebExchange is now in the
proper package matching to the location of ServerWebExchange.
2017-09-29 17:03:23 -04:00
Rossen Stoyanchev
223e27d53d
Package private request and response implementations
...
Concrete server and client, reactive request and response
implementations should not have to be accessed outside their package.
They could be seen as private to their HttpHandler adapters and
ClientHttpConnector's respectively.
The one exception, WebSocket upgrades in spring-webflux, is an internal
framework use case, accommodated via downcast + accessors in the
abstract base classes.
2017-09-29 13:04:03 -04:00
Juergen Hoeller
95fdfac128
Upgrade to Gradle 4.2 (and Netty 4.1.16)
...
Issue: SPR-15985
2017-09-29 17:57:11 +02:00
Stephane Nicoll
cee9d1c08f
Fix formatting
...
Closes gh-1483
2017-09-29 14:41:57 +02:00
Stephane Nicoll
1f0f292bab
Merge pull request #1535 from nkjackzhang:patch-3
...
* pr/1535:
Fix typos in spring-mvc.xsd
2017-09-29 14:36:59 +02:00
nkjackzhang
b11d1f5f9b
Fix typos in spring-mvc.xsd
...
Closes gh-1535
2017-09-29 14:36:26 +02:00
Stephane Nicoll
f2d040c41c
Fix link to "Message Converters" section
...
Issue: SPR-16024
2017-09-29 14:31:50 +02:00
Sebastien Deleuze
12e1ad9163
Upgrade to Kotlin 1.1.51
2017-09-29 12:30:20 +02:00
Arjen Poutsma
69945f4185
WebClient throws ClassCastException for bodyToMono(ParameterizedTypeReference)
...
Prior to this commit, the `WebClient` always throws a `ClassCastException`
when an error occurs in `bodyToMono(ParameterizedTypeReference)``, and
not the expected exception, as set up by `onStatus`
Issue: SPR-16025
2017-09-29 10:15:40 +02:00
Rossen Stoyanchev
d332e06f6c
Update reference after removal of ClientResponse.close()
2017-09-28 16:11:48 -04:00
David Harrigan
b7708d989b
Improve Kotlin documentation readability
2017-09-28 22:02:25 +02:00
Rossen Stoyanchev
2c2bbb45b9
Fix typo
2017-09-28 14:53:43 -04:00
Nikola Kolosnjaji
7c5dd03c9d
Correct ResourceTransformer name
2017-09-28 19:55:07 +02:00
Sam Brannen
2408e2515a
Escape hashtag in Testing chapter to disable Asciidoc highlighting
2017-09-28 16:44:08 +02:00
Jussi Hallila
1440026fb4
Change bean registration to use initialize
...
This commit changes the reference documentation to conform
with the updated API defined in
https://github.com/spring-projects/spring-framework/commit/8b8a6766de01467c8b45b1b9664f0ab2d58f7c69
2017-09-28 15:02:25 +02:00
Spring Buildmaster
5c7bd0a9ea
Next Development Version
2017-09-28 11:28:33 +00:00
Juergen Hoeller
c078e2eb1d
Overview with explicit JDK 9 (Jigsaw) and Java EE 8 references
2017-09-28 11:47:50 +02:00
Juergen Hoeller
255ccf58e0
Remove snapshot repository from build setup
2017-09-28 11:45:33 +02:00
Rossen Stoyanchev
5733065ba4
Rename webflux-client.adoc to webflux-webclient.adoc
2017-09-28 01:16:51 -04:00
Rossen Stoyanchev
67910ee48c
WebFlux and Integration share webflux-client.adoc
...
Extract WebClient content into a separate file that is now included
both in the WebFlux and in the Integration sections.
This allows having RestTemplate and WebClient documented in one place
under Integration while also keeping the same included in the WebFlux
section too.
2017-09-27 23:34:45 -04:00
Rossen Stoyanchev
71ccf3c9e3
Polish
2017-09-27 22:48:26 -04:00
Rossen Stoyanchev
13c959296a
Polish
2017-09-27 22:04:07 -04:00
Rossen Stoyanchev
869b818e96
WebFlux support for LocaleContext related arguments
...
Issue: SPR-15998
2017-09-27 22:03:42 -04:00
Rossen Stoyanchev
0f1bd49f6d
HandlerMappingIntrospector is a bean
2017-09-27 21:28:49 -04:00
Brian Clozel
126ac849e5
Fix behavior of ClientResponse#bodyTo** with Void
...
Prior to this commit, asking for a `Void` type using any of the
`ClientResponse#bodyTo*` methods would immediately return an empty
`Publisher` without consuming the response body.
Not doing so can lead to HTTP connection pool inconsistencies and/or
memory leaks, since:
* a connection that still has a response body being written to it cannot
be properly recycled in the connection pool
* incoming `DataBuffer` might not be released
This commit detects when `Void` types are asked as body types and in
those cases does the following:
1. Subscribe to the response body `Publisher` to allow the connection to
be returned to the connection pool
2. `cancel()` the body `Publisher` if the response body is not empty; in
that case, we choose to close the connection vs. consume the whole
response body
Those changes imply that `ClientHttpResponse` and other related
contracts don't need a `close()` method anymore.
Issue: SPR-16018
2017-09-28 00:58:38 +02:00
Juergen Hoeller
ec345bf162
Revised handling of missing data class arguments
...
Includes unified detection of Kotlin's optional parameters in MethodParameter.isOptional(), reduces BeanUtils.findPrimaryConstructor to Kotlin semantics (for reuse in AutowiredAnnotationBeanPostProcessor), and finally introduces a common KotlinDetector delegate with an isKotlinType(Class) check.
Issue: SPR-15877
Issue: SPR-16020
2017-09-28 00:31:12 +02:00
Sam Brannen
d3129a8bd7
Convert selected examples to JUnit Jupiter in reference manual
...
Issue: SPR-14524
2017-09-27 23:27:44 +02:00
Sam Brannen
8c9d42f793
Document SpringExtension for JUnit Jupiter in reference manual
...
Issue: SPR-14524
2017-09-27 23:01:59 +02:00
Sebastien Deleuze
492c469d79
Polish Kotlin reference documentation
2017-09-27 22:54:18 +02:00
Sebastien Deleuze
142c16611d
Upgrade to Gradle asciidoctor plugin 1.5.6
2017-09-27 21:31:34 +02:00
Rossen Stoyanchev
6ee1af27c6
WebFlux supports HTTP HEAD
...
Issue: SPR-15994
2017-09-27 15:25:29 -04:00
Sam Brannen
d8d74faab8
Polishing
2017-09-27 21:04:58 +02:00
Sam Brannen
e995854f11
Cross reference SpEL and Environment from JUnit Jupiter documentation
...
Issue: SPR-14524
2017-09-27 20:05:50 +02:00
Juergen Hoeller
a1a7c62127
Consistent configurer access in WebMvcConfigurationSupport
...
Issue: SPR-16017
(cherry picked from commit 40ba95f )
2017-09-27 19:52:48 +02:00
Sebastien Deleuze
00c0d7847f
Add spring-petclinic-kotlin to Kotlin refdoc
2017-09-27 16:37:10 +02:00
Sam Brannen
550bed2905
Document JUnit Jupiter annotation support in the reference manual
...
Issue: SPR-14524
2017-09-27 16:25:30 +02:00
Sam Brannen
1a8122f97a
Update Testing chapter regarding Servlet 4.0 API for mocks
2017-09-27 16:25:30 +02:00
Sam Brannen
2b91d668df
Polish Javadoc for @DisabledIf
2017-09-27 16:25:30 +02:00
Juergen Hoeller
75bd516251
Refined TemporaryLobCreator null handling (from 4.3.x)
...
Issue: SPR-15656
2017-09-27 15:40:13 +02:00
Brian Clozel
10139d42fc
Revisit meaning of response.close() in HTTP client
...
Prior to this issue, SPR-15920 added this new `close()` method which was
supposed to be called to clean resources after response processing.
This commit changes the meaning of that method: calling `close()` will
close the underlying HTTP connection. This has to be called if the
response body is not consumed by the application, since at that point
the underlying connection might be in an inconsistent state if shared in
a connection pool.
Issue: SPR-15993
2017-09-27 14:03:55 +02:00
Sebastien Deleuze
fb09a75c82
Improve support of Kotlin beans w/ primary and default ctors
...
This commit add the default constructor if available as
fallback after to the primary constructor.
Issue: SPR-16012
2017-09-27 11:27:00 +02:00
Rossen Stoyanchev
ec5969c578
InMemoryWebSession cleans up expired sessions
...
Issue: SPR-15963
2017-09-27 01:43:11 -04:00
Rossen Stoyanchev
15cc44e6e8
Add WebSession.invalidate()
...
Issue: SPR-15960
2017-09-27 00:10:38 -04:00
Rossen Stoyanchev
6da3518a66
WebSessionStore updates lastAccessTime on retrieve
...
Now that WebSessionStore is in charge of expiration checks on retrieve
it makes sense to also update the lastAccessTime on retrieve at the
same time, saving the need to call it after a retrieve.
Issue: SPR-15963
2017-09-26 23:12:58 -04:00
Rossen Stoyanchev
cb2deccb2d
WebSessionStore performs expiration check on retrieve
...
Issue: SPR-15963
2017-09-26 23:12:12 -04:00
Sebastien Deleuze
fbb428f032
Polishing
...
Issue: SPR-16014
2017-09-27 01:35:25 +02:00
Juergen Hoeller
efce7902c4
Polishing
2017-09-27 01:34:11 +02:00
Juergen Hoeller
a4b2ae583e
Expose AspectJ 1.8.11 in POMs (and use it for all tests)
...
Issue: SPR-15974
2017-09-27 01:34:02 +02:00
Sebastien Deleuze
23497a7ece
Support autowiring by constructor in Kotlin bean DSL
...
Issue: SPR-16014
2017-09-27 01:25:22 +02:00
Rossen Stoyanchev
0e7e95cded
Polish
...
Issue: SPR-16009
2017-09-26 17:24:39 -04:00
Rossen Stoyanchev
9d5a25e737
Proper WebFlux reference and MVC reference updates
...
Pending -- WebSocket, WebTestClient, more details around annotation
processing, exception handling, and view resolution.
Issue: SPR-15149, SPR-16009
2017-09-26 15:35:17 -04:00
Rossen Stoyanchev
41b53de644
DispatcherHandler.getHandlerMappings() is also final
...
Issue: SPR-15934
2017-09-26 15:35:17 -04:00
Rossen Stoyanchev
eb6bd2d7b8
Remove args and return value lists from @RequestMapping
...
It is no longer adequate to list supported arguments and return values
-- between Web MVC and WebFlux, directly on the annotation.
Instead we have tables in the respective chapters in the reference with
cross references to each other.
Issue: SPR-15149
2017-09-26 15:29:58 -04:00
Sebastien Deleuze
14cba15296
Open router and bean Kotlin DSL to allow building custom ones
2017-09-26 16:31:16 +02:00
Sam Brannen
96bbd18e98
Delete unused import
2017-09-26 16:19:49 +02:00
Sebastien Deleuze
12ef367f89
Polish reference documentation
2017-09-26 14:49:39 +02:00
Eddú Meléndez
6f2d58fac6
Remove jackson-datatype-jdk7 auto registration
...
`jackson-datatype-jdk7` is not provided anymore. It's handlers are
incorporated in core databind.
2017-09-26 14:48:34 +02:00
Arjen Poutsma
f9e1913e0d
Added docs on customizing WebClient
...
Issue: SPR-15778
2017-09-26 14:06:53 +02:00
Juergen Hoeller
9d8e3d4185
Explicit check for duplicates in addClassPathManifestEntries
...
Issue: SPR-15989
2017-09-26 11:49:49 +02:00
Brian Clozel
95b83fe1ba
Add zero copy support in reactor-based WebClient
...
This commit makes Reactor Netty `WebClient` instances
support zero-copy requests by implementing `ZeroCopyHttpOutputMessage`.
The implementation leverages the optimized `sendFile` mechanism if
available.
2017-09-26 11:05:48 +02:00
Brian Clozel
80979e7592
Polish
2017-09-26 11:00:34 +02:00
Brian Clozel
3d37c889fa
Un-ignore RequestMapping test for handling "" paths
...
Issue: SPR-15653
2017-09-26 10:59:21 +02:00
Andy Clement
07b961caa6
Empty path should match the "/" PathPattern
...
This commit makes both slash "/" and empty "" request paths match the
"/" `PathPattern`.
Issue: SPR-15653
2017-09-26 10:59:13 +02:00
Sebastien Deleuze
b85764c7db
Add a section about immutable classes persistence in Kotlin refdoc
2017-09-26 00:04:12 +02:00
Sebastien Deleuze
74120ef00f
Add custom deserializers support to AbstractJackson2Decoder
...
Issue: SPR-15975
2017-09-25 23:21:50 +02:00
Juergen Hoeller
e927cae476
ObjectProvider offers ifAvailable/ifUnique variants with Consumer
...
Issue: SPR-16001
2017-09-25 22:45:15 +02:00
Juergen Hoeller
9ff4c0bff8
DispatcherServlet.getHandlerMappings() accessor declared as final
...
Issue: SPR-15934
2017-09-25 22:45:04 +02:00
Rossen Stoyanchev
bdde0f1ea0
WebFlux supports UriBuilder, UriComponentsBuilder args
...
Issue: SPR-15997
2017-09-25 16:41:30 -04:00
Rossen Stoyanchev
2da2c17fbb
WebFlux supporst HttpHeaders return values
...
Issue: SPR-16006
2017-09-25 16:09:28 -04:00
Sebastien Deleuze
3133f87c14
Upgrade to Reactor Bismuth-RELEASE !!!
...
This upgrade includes:
- reactor-core 3.1.0.RELEASE
- reactor-test 3.1.0.RELEASE
- reactor-netty 0.7.0.RELEASE
Issue: SPR-16007
2017-09-25 21:48:14 +02:00
Sebastien Deleuze
2d6364eb83
Remove "chin" in admonition blocks of reference documentation
...
Originally contributed by @olivergierke via
spring-projects/spring-framework#1520 . This commit is based on
the spring.css generated from the SASS original source, see
bclozel/asciidoctor-stylesheet-factory#1 .
2017-09-25 15:17:22 +02:00
Juergen Hoeller
ac45aa2022
Upgrade to AspectJ 1.9 beta 7 (with 1.8.10 exposed in POMs)
...
Issue: SPR-15974
2017-09-25 13:50:50 +02:00
Arjen Poutsma
1a3cc3df94
Moved fromServerRequest to ServerRequest itself
...
This commit moves WebFluxUriComponentsBuilder.fromServerRequest to the
ServerRequest interface itself.
Consequently, the WebFluxUriComponentsBuilder is removes itself, as it
contained no other methods.
Issue: SPR-15953
2017-09-25 11:29:07 +02:00
Sebastien Deleuze
0d8031d9b4
Remove remaining Kotlin compilation warning
2017-09-24 23:11:36 +02:00
Sebastien Deleuze
997748ee29
Upgrade to Kotlin 1.1.50
...
Potential regression detected for null-safety on user project side
https://youtrack.jetbrains.com/issue/KT-20411
2017-09-24 23:11:36 +02:00
Sebastien Deleuze
3996f33399
Support non-standard classes in Kotlin reflection discovery methods
...
Issue: SPR-15999
2017-09-24 23:10:40 +02:00
Juergen Hoeller
65f556c0e2
Downgrade xjc to 2.2.11 (while keeping JAXB at 2.3.0 general)
...
Issue: SPR-15996
2017-09-24 18:05:59 +02:00
Juergen Hoeller
e2882fe1db
Build against EE 8 API level wherever possible
...
Upgrade to JAXB 2.3, JAX-WS 2.3, Annotations 1.3.1, Interceptor 1.2.1.
Also includes Log4J 2.9.1 and Asciidoctor 1.5.6.
2017-09-24 17:18:21 +02:00
Sebastien Deleuze
1e87b6dd7d
Update null-safety refdoc with jsr305 JAR guidelines
2017-09-24 13:31:32 +02:00
Juergen Hoeller
9190b76ab9
Latest dependency updates (POI 3.17, Rome 1.8, EhCache 3.4, Caffeine 2.5.6, RxJava 2.1.4, Tomcat 8.5.21, JRuby 9.1.13, Rhino 1.7.7.2)
2017-09-23 11:28:19 +02:00
Rossen Stoyanchev
d742fc198a
Add consumeWith to FluxExchangeResult
...
Issue: SPR-15959
2017-09-22 21:04:02 -04:00
Rossen Stoyanchev
132022861e
Remove ResourceServlet deprecated in 4.3.x
...
Issue: SPR-15984
2017-09-22 20:14:06 -04:00
Stephane Maldini
9c216c2144
update to Bismuth-RC1
2017-09-22 15:58:22 -07:00
Stephane Maldini
21203921f0
sync with reactor-core snapshot
2017-09-22 13:56:39 -07:00
Stephane Maldini
90f4b13767
update to Bismuth-BUILD-SNAPSHOT
2017-09-22 13:50:44 -07:00
Rossen Stoyanchev
ed10cab9d3
Remove DispatcherHandler static factory methods
...
The typical way to load DispatcherHandler is to use
WebHttpHandlerBuilder#applicationContext which also detecs filters,
exception handlers, as well as other beans that are injected into every
ServerWebExchange -- custom session manager, localecontext resolver,
codecs for form data, multipart data, etc
WebHttpHandlerBuilder is the preferred and way so removing the ones on
DispatcherHandler. They could always be added back later.
2017-09-22 16:24:39 -04:00
Rossen Stoyanchev
c28a6357c5
DispatcherHandler alignment with DispatcherServlet
...
Issue: SPR-15934
2017-09-22 15:44:12 -04:00
Rossen Stoyanchev
816a58fcf9
RouterFunctionMapping provides getter for RouterFunction
...
Issue: SPR-15991
2017-09-22 15:15:41 -04:00
Rossen Stoyanchev
31619b3ffb
DispatcherHandler orders HandlerMappings correctly again
...
Issue: SPR-15991
2017-09-22 15:06:23 -04:00
Juergen Hoeller
7ae59d0c2a
Nullability refinements on private and static methods
...
Based on IntelliJ IDEA 2017.3 introspection results.
Issue: SPR-15756
2017-09-22 18:22:14 +02:00
Brian Clozel
60f47f4489
Fix memory leak in reactive multipart parser
2017-09-22 17:03:38 +02:00
Arjen Poutsma
4fbf86e5ce
Javadoc
2017-09-22 14:17:51 +02:00
Arjen Poutsma
2841ef5d05
Introduce RouterFunction visitor
...
This commit introduces a visitor for router functions
(RouterFunctions.Visitor), allowing to iterate over all the components
that make up a router function.
This commit also introduces a ToStringVisitor, which creates a nicely
formatted string for use with toString().
Issue: SPR-15711, SPR-15711
2017-09-22 14:03:09 +02:00
Sebastien Deleuze
7b6f1d1b58
Use compileOnly and testCompileOnly for JSR 305 JAR
...
This change avoids error messages in logs during test classes
compilation which are using @NonNull and @Nullable.
2017-09-22 13:44:42 +02:00
Sebastien Deleuze
d8e52c0413
Refine BeanUtils#findPrimaryConstructor behavior
...
Issue: SPR-15673
2017-09-22 13:40:37 +02:00
Jason Yu
78434c8e20
Release DataBuffers in FreeMarkerView
...
When template processing throws an exception, we must ensure that
`DataBuffers` are properly released to avoid memory leaks.
Issue: SPR-15966
2017-09-22 10:08:18 +02:00
Sebastien Deleuze
7c18e4b115
Polish null-safety documentation
...
Issue: SPR-15756
2017-09-22 09:45:58 +02:00
Sebastien Deleuze
6c4a103f70
Remove support for generics nullability for now
...
See https://github.com/Kotlin/KEEP/issues/79
2017-09-21 18:44:27 +02:00
Rossen Stoyanchev
819ca0dbd4
Expose getters for the configured HandlerMapping's
...
Issue: SPR-15934
2017-09-21 09:46:26 -04:00
Juergen Hoeller
c9afdce54b
Merge pull request #1532 from aahlenst/spr-15988
...
ProtobufHttpMessageConverter: Ensure that JSON is written to response body
2017-09-21 12:45:49 +02:00
Andreas Ahlenstorf
b30f6fd991
Ensure that JSON is written to response body
...
Issue: SPR-15988
2017-09-21 12:19:35 +02:00
Juergen Hoeller
15c82afc1c
Consistent conversion of Optional array/list arrangements
...
Issue: SPR-15918
Issue: SPR-15919
Issue: SPR-15676
2017-09-20 18:28:49 +02:00
Juergen Hoeller
ea01c4113a
Revisit MockPart constructors
...
Issue: SPR-15854
2017-09-20 10:55:06 +02:00
Juergen Hoeller
4cbef27f90
Consistent tolerance of unknown HTTP status codes behind RestTemplate
...
Issue: SPR-15978
2017-09-20 10:54:58 +02:00
Juergen Hoeller
215e5f5682
Defensively call getParameterType (which might fail for certain statements)
...
Issue: SPR-15977
2017-09-20 10:54:49 +02:00
Juergen Hoeller
ffe80ff002
Clarify @Bean return type recommendation in case of multiple interfaces
...
Issue: SPR-15973
2017-09-20 10:54:23 +02:00
Stephane Nicoll
7b48e60c81
Merge pull request #1531 from xavier630:patch-1
...
* pr/1531:
Fix Javadoc typo
2017-09-20 09:31:11 +02:00
Xavier Downs
dba1ef0b26
Fix Javadoc typo
...
Closes gh-1531
2017-09-20 09:30:37 +02:00
Juergen Hoeller
80134d2e0c
Automatic-Module-Name manifest entries for Jigsaw
...
Includes upgrade to Jetty 9.4.7 GA.
Issue: SPR-13716
2017-09-19 15:35:10 +02:00
Juergen Hoeller
185c2bf5b6
Upgrade to ASM 6.0
...
Issue: SPR-14514
2017-09-19 13:49:32 +02:00
Juergen Hoeller
ac9cfefaff
TaskExecutorRegistration does not apply its default settings to a user-provided executor
...
Also, ChannelRegistration.setInterceptors is deprecated now: in favor of a fluently named interceptors(...) method which is documented to add the given interceptors to the channel's current list.
Issue: SPR-15962
Issue: SPR-15976
2017-09-19 13:47:43 +02:00
Juergen Hoeller
5bdcb895c0
HttpEntityMethodProcessor lets entity headers override existing headers (again)
...
Issue: SPR-15952
2017-09-19 13:47:30 +02:00
Sebastien Deleuze
8caeb33974
Polish Kotlin reference documentation
2017-09-19 13:34:21 +02:00
Juergen Hoeller
3bd2154046
Polishing
2017-09-19 00:02:40 +02:00
Juergen Hoeller
0f42f38336
Drop Animal Sniffer setup (and upgrade to RxJava 1.3.2)
2017-09-19 00:02:19 +02:00
Juergen Hoeller
346d2edce1
Revised org.springframework.lang javadoc
...
Issue: SPR-15756
2017-09-18 23:59:11 +02:00
Juergen Hoeller
1f3967cb3c
spring-jcl provides NoOpLog and SimpleLog as well
...
Issue: SPR-15957
2017-09-18 23:57:44 +02:00
Sebastien Deleuze
825449a3d2
Introduce a link to go back to refdoc index
2017-09-18 15:23:26 +02:00
Stephane Nicoll
cad51d1251
Merge pull request #1530 from qwazer:rename_fix
...
* pr/1530:
Fix class name in javadoc
2017-09-18 14:28:58 +02:00
areshetnikov
0f0b8dc745
Fix class name in javadoc
...
Closes gh-1530
2017-09-18 14:28:37 +02:00
Stephane Nicoll
b275a06d16
Reuse JmsTemplate's MessageConverter in JmsMessagingTemplate
...
This commit makes sure that any custom MessageConverter set in a
JmsTemplate used by a JmsMessagingTemplate is reused as the payload
converter of the message.
Issue: SPR-15965
2017-09-18 14:27:47 +02:00
Stephane Nicoll
7aa956a920
Polish
2017-09-18 14:06:31 +02:00
Sebastien Deleuze
c5ba55ffc2
Polish null-safety documentation
...
Issue: SPR-15756
2017-09-15 18:06:58 +02:00
Arjen Poutsma
a7617a2641
Introduce WebFluxUriComponentsBuilder
...
This commit introduces the WebFluxUriComponentsBuilder, with a single
method that creates a UriComponentsBuilder for a ServerRequest. More
methods to be added by @rstoyanchev.
Issue: SPR-15953
2017-09-15 14:14:39 +02:00
Arjen Poutsma
2fb3eeba6f
Introduce ServerRequest.methodName()
...
This commit introduces a methodName() method to the ServerRequest,
returning the String name of the method. This method is useful for
non-standard HTTP methods.
2017-09-15 14:14:39 +02:00
Sebastien Deleuze
1bc93e3d0f
Revisit nullability annotations
...
This commit introduces the following changes.
1) It adds a new Spring @NonNull annotation which allows to apply
@NonNullApi semantic on a specific element, like @Nullable does.
Combined with @Nullable, it allows partial null-safety support when
package granularity is too broad.
2) @Nullable and @NonNull can apply to ElementType.TYPE_USE in order
to be used on generic type arguments (SPR-15942).
3) Annotations does not apply to ElementType.TYPE_PARAMETER anymore
since it is not supported yet (applicability for such use case is
controversial and need to be discussed).
4) @NonNullApi does not apply to ElementType.FIELD anymore since in a
lot of use cases (private, protected) it is not part for the public API
+ its usage should remain opt-in. A dedicated @NonNullFields annotation
has been added in order to set fields default to non-nullable.
5) Updated Javadoc and reference documentation.
Issue: SPR-15756
2017-09-15 13:26:41 +02:00
Violeta Georgieva
ec2218c967
AbstractListenerWriteFlushProcessor: Ensure the last flush will be performed
...
When writing Publisher<Publisher<T>>, a flush operation is performed onComplete
for every Publisher. If the flush operation is not able to be performed immediately
it will be retried before starting to process data provided by the next Publisher.
For the last Publisher the implementation needs to ensure that the flush will
be performed only then whole operation will complete.
Issue: SPR-15949
2017-09-15 08:53:00 +02:00
Arjen Poutsma
2510db0683
Javadoc
2017-09-14 17:23:25 +02:00
Arjen Poutsma
e70210a1da
Introduce ForwardedHeaderFilter for WebFlux
...
This commit introduces a ForwardedHeaderFilter for WebFlux, similar to
the existing Servlet version. As part of this the
DefaultServerHttpRequestBuilder had to be changed to no longer use
delegation, but instead use a deep copy at the point of mutate().
Otherwise, headers could not be removed.
Issue: SPR-15954
2017-09-14 16:27:12 +02:00
Juergen Hoeller
69af698ceb
Latest dependency updates (EclipseLink 2.7 final, Hibernate ORM 5.2.11, Selenium 3.5.3)
2017-09-14 15:16:53 +02:00
Brian Clozel
81125de697
Fix error responses handling in WebClient
...
This commit fixes a typo in the `DefaultWebClient` implementation.
Instead of forwarding resolved `WebClientException` instances as error
signals, the `bodyToMono(ParameterizedTypeReference)` variant would just
forward those exceptions as `onNext` signals.
Issue: SPR-15946
2017-09-14 14:15:05 +02:00
Brian Clozel
98b6491f0c
Send error signal also for empty server responses
...
Prior to that commit, the `ResponseSpec` `WebClient` would process error
responses (4xx, 5xx HTTP status) and transform those into error signals
with a `WebClientResponseException`. But this would only work if the
HTTP response would have a non-empty response body.
An empty error response would not send an error signal and only
translate in an `onComplete` signal.
This commit fixes this behavior and makes sure that this error signal is
sent in all cases.
Issue: SPR-15946
2017-09-13 10:56:57 +02:00
Brian Clozel
aa19912e00
Polish
2017-09-13 10:51:13 +02:00
Grant Hutchins
f4ef5cd451
Fix broken RequestMappingHandlerAdapter setter
...
RequestMappingHandlerAdapter.setReactiveRegistry() doesn't actually set the value appropriately.
FYI: I found this using lgtm.com
https://lgtm.com/projects/g/spring-projects/spring-framework/alerts/?mode=list
2017-09-12 15:04:33 -04:00
Rossen Stoyanchev
ac5694b150
Web documentation update
...
Issue: SPR-15149
2017-09-12 15:02:00 -04:00
David Harrigan
1871c9626d
Kotlin documentation readability improvements
...
Issue: SPR-15659
2017-09-12 16:36:06 +02:00
Arjen Poutsma
4a0784bea8
Test HTTPS in ReactorServerHttpRequest URI
...
This commit adds a test for ReactorServerHttpRequest.getUri() to check
whether it returns a HTTPS scheme when configured with SSL.
Issue: SPR-15931
2017-09-12 15:14:54 +02:00
Rossen Stoyanchev
e214d69350
Remove jetbrains annotations inserted by IDE
2017-09-11 09:31:43 -04:00
Juergen Hoeller
4371350b5d
Polishing
2017-09-10 21:56:31 +02:00
Juergen Hoeller
30d67f7c42
Tests for @Lazy Validator setup
...
Issue: SPR-15807
2017-09-10 21:56:23 +02:00
Juergen Hoeller
6dcf2e3c5b
Upgrade to RxJava 1.3.1
...
Issue: SPR-15497
2017-09-10 21:55:42 +02:00
Sam Brannen
0867045fc1
Upgrade to JUnit 5.0 GA!
...
Issue: SPR-15737
2017-09-10 21:20:38 +02:00
Rossen Stoyanchev
5c0ca98372
Update index.adoc
2017-09-09 18:21:57 -04:00
Rossen Stoyanchev
f76ac5bb32
WebFlux support for @SessionAttributes
...
Issue: SPR-15887
2017-09-09 17:40:59 -04:00
Rossen Stoyanchev
bc470fca30
Polish
2017-09-09 17:40:59 -04:00
Stephane Maldini
8f78c772b5
update to Bismuth-M4
2017-09-08 16:56:23 -07:00
Juergen Hoeller
04765b6202
Upgrade to OkHttp 3.9 and removal of superfluous spring-jcl reference
2017-09-08 16:56:40 +02:00
Juergen Hoeller
fd0132c7e6
Polishing
2017-09-08 16:56:22 +02:00
Juergen Hoeller
aa4ae7a750
Heart-beat log message potentially without session id
...
Issue: SPR-15937
2017-09-08 16:55:27 +02:00
Juergen Hoeller
496223a927
WebFlux supports field default/marker parameters for data classes as well
...
Issue: SPR-15871
2017-09-08 16:55:12 +02:00
Yi EungJun
cf106ec99e
Fix typo
2017-09-08 10:48:27 +02:00
Brian Clozel
1a883b863d
Remove temporary workaround for reactor-netty client
...
Now that https://github.com/reactor/reactor-netty/issues/138 is solved,
this commit removes the temporary workaround introduced in SPR-15784
but leaves the general mechanism for detecting empty responses.
2017-09-08 10:27:35 +02:00
Brian Clozel
69edd4ac50
Remove spring-build-src module from BOM
...
Issue: SPR-15932
2017-09-08 08:50:34 +02:00
Brian Clozel
c64083da8d
Upgrade to Jackson 2.9.1
2017-09-08 08:49:10 +02:00
Andy Clement
3956423afe
Polish
...
The high level matchStarting API was removed a few commits ago.
This change tidies up by removing the supporting infrastructure
for that from the PathElements.
2017-09-07 14:03:46 -07:00
Sebastien Deleuze
a8693bf947
Improve Kotlin ref doc
...
This commit add a section about annotations and provides
various update and enhancements to the Kotlin reference
documentation.
Issue: SPR-15659
2017-09-07 17:30:52 +02:00
Arjen Poutsma
ec6475a24c
Expose scheme in ReactorServerHttpRequest URI
...
This commit determines fixes ReactorServerHttpRequest.getUri() so that
it includes a URL scheme.
Issue: SPR-15931
2017-09-07 12:29:28 +02:00
Sam Brannen
15ab0ad6e2
Clean up warnings in Gradle build output
2017-09-07 12:25:10 +02:00
Sam Brannen
8acb8aef1f
Exclude commons-logging from spring-test dependencies
...
Prior to this commit, various dependencies in the spring-test module
pulled in commons-logging as a transitive dependency. Consequently,
the presence of commons-logging in the generated Eclipse classpath
overrode the intended use of the spring-jcl module causing JUL to be
used instead of log4j for tests executed within Eclipse, thereby
ignoring the configuration in src/test/resources/log4j2-test.xml.
This commit addresses this issue by excluding commons-logging in
spring-test.gradle for all Selenium dependencies.
Issue: SPR-15930
2017-09-07 12:16:53 +02:00
Rossen Stoyanchev
dff0e7923c
Merge pull request #1507 from rwinch/websessionmanager
2017-09-06 11:48:17 -04:00
Rossen Stoyanchev
2fc2dab230
Fold DefaultWebSession within InMemoryWebSessionStore
...
InMemoryWebSessionStore is very closely associated to DefaultWebSession
passing it to it several fields and functions. Now that the store also
creates the session, it makes sense to bring the latter in as an inner,
nested class.
Issue: SPR-15875, 15876
2017-09-06 11:47:43 -04:00
Rossen Stoyanchev
c7d54c8b52
Polish
2017-09-06 11:47:43 -04:00
Rob Winch
8ad14ae95c
DefaultWebSessionManager decoupled from DefaultWebSession
...
DefaultWebSessionManager no longer requires the WebSessionStore
to use DefaultWebSession.
Removed explicit start() in save(). This seemed unnecessary since at
that point isStarted is guaranteed to return true. The status can
be updated through the copy constructor.
DefaultWebSessionTests added.
Issue: SPR-15875
2017-09-06 11:47:43 -04:00
Rob Winch
86912475af
Refactor WebSessionStore
...
- Add WebSessionStore.createWebSession.
- Remove remove WebSessionStore.changeSessionId
- Add WebSessionStore updateLastAccessTime which allows updating the
WebSession lastAccessTime without exposing a method on WebSession in
an implementation independent way.
- Remove WebSessionStore.storeSession. This method is not necessary
since the WebSession that is returned allows saving the WebSession.
Additionally, it is error prone since the wrong type might be passed
into it.
Issue: SPR-15875, 15876
2017-09-06 11:47:43 -04:00
Rob Winch
b7280472d6
Improve WebSession related tests
...
Add missing DefaultWebSessionManagerTests .block(). Previously
session.save() was invoked, but we did not ensure it was completed.
This commit makes it block on session.save()
Fix existingSessionIsExpired. This test is actually broken and is
testing a new session is created because the session id returned
by the idResolver does not match the existing WebSession.
This commit ensures that the id of the WebSession found by idResolver
matches the existing WebSession.
DefaultWebSessionManagerTests use Mockito. To ensure we test with
independence from InMemoryWebSessionStore we use Mockito for the
DefaultWebessionManager collaborators.
Add test for response.setComplete(). We want to ensure that when the
response is completed, it saves the WebSession and writes it to the
response using idResolver
2017-09-06 11:47:43 -04:00
Rob Winch
167ddc7cfc
Polish HeaderWebSessionIdResolver
...
Use constant for default header name and make getHeaderName private.
Also switch HeaderWebSessionIdResolverTests to unit tests rather than
testing with DefaultWebSessionManager.
Issue: SPR-15917
2017-09-06 11:47:43 -04:00
Sam Brannen
dcdb0b416f
Rename SPRING_CLASS_RULE fields to springClassRule
2017-09-06 17:38:22 +02:00
Brian Clozel
16f3f8d28f
Add close() method on HTTP client response
...
Before this commit, there was no way to signal the HTTP client that we
were done consuming the response. Without that, the underlying client
library cannot know when it is safe to release the associated resources
(e.g. the HTTP connection).
This commit adds new `close()` methods on both `ClientHttpResponse`
and `ClientResponse`. This methods is non-blocking and its behavior
depends on the library, its configuration, HTTP version, etc.
At the `WebClient` level, `close()` is called automatically if we
consume the response body through the `ResponseSpec` or the
`ClientResponse` itself.
Note that it is *required* to call `close()` manually otherwise; not
doing so might create resource leaks or connection issues.
Issue: SPR-15920
2017-09-06 17:29:18 +02:00
Sam Brannen
ba6b617bd5
Demo: @Autowired rules not supported with Spring's JUnit rules
...
This commit introduces a test that demonstrates that custom JUnit 4
rules can be @Autowired into a test instance but that they will not be
applied by JUnit since JUnit only ever sees such fields as null and
therefore ignores them.
Issue: SPR-15927
2017-09-06 17:29:04 +02:00
Sebastien Deleuze
699dfc55a8
Improve Kotlin ref doc structure
...
Issue: SPR-15659
2017-09-06 17:13:17 +02:00
Sebastien Deleuze
5ae35f606c
Leverage kotlin-reflect to determine parameter names
...
This is especially useful to determine interface parameter names
without requiring Java 8 -parameters compiler flag.
Issue: SPR-15541
2017-09-06 15:56:45 +02:00
Arjen Poutsma
02a2c400c7
Move URL transform methods from ServerHttpResponse to ServerWebExchange
...
This commit moves `encodeUrl` and `registerUrlEncoder` from
ServerHttpResponse to ServerWebExchange.
It also renames `encodeUrl` to `transformUrl` and `registerUrlEncoder`
to `addUrlTransformer` to make it clearer that these methods do not
perform actual URL encodings (i.e. they do not replaceinvalid
characters).
The `add` prefix (instead of `register`) makes it clearer that each
function is added in addition to the previous one.
Issue: SPR-15924
2017-09-06 14:39:09 +02:00
Sebastien Deleuze
5d4ee09d53
Fix AbstractJackson2Encoder#canEncode
...
This commit ensures that the Jackson encoder is selected only
with supported mime types.
Issue: SPR-15910
2017-09-06 08:26:15 +02:00
Rossen Stoyanchev
320bfdf413
Polish
2017-09-05 17:47:02 -04:00
Greg Turnquist
c98e01ad1f
Create session-based WebSessionIdResolver
...
Introduces HeaderSessionIdResolver, which reads session ids from a session header and generates a session response header when new session are created.
Related issue: SPR-15917
2017-09-05 17:37:50 -04:00
Rossen Stoyanchev
03eb6f76db
Improve check for actual return value type
...
Issue: SPR-15910
2017-09-05 16:11:35 -04:00
Rossen Stoyanchev
39cefb5bd7
One more instance of modified method name in Mono
2017-09-05 13:59:45 -04:00
Rossen Stoyanchev
fc0841c60f
Adapt to method name change in Mono
2017-09-05 13:57:20 -04:00
Sam Brannen
0702898836
Clean up warnings in Gradle build output
2017-09-04 16:26:51 +02:00
Sebastien Deleuze
60f763a0dd
Polish Kotlin reference documentation
...
Issue: SPR-15659
2017-09-04 10:54:48 +02:00
Sebastien Deleuze
8b8a6766de
Change BeanDefinitionDsl to implement ApplicationContextInitializer
2017-09-04 10:46:20 +02:00
Sebastien Deleuze
2969af82d2
Fix Reactive Web link in the ref doc
2017-09-04 07:40:18 +02:00
Stephane Nicoll
71182ab54b
Provide hierarchy traversal support for getBeanNamesForAnnotation
...
Issue: SPR-15923
2017-09-03 08:19:34 +02:00
Juergen Hoeller
f0198f3756
Upgrade to Apache Johnzon 1.1.3
...
Issue: SPR-15590
2017-09-02 00:28:41 +02:00
Brian Clozel
bff54788e8
Enable HTTP compression Reactor ClientHttpConnector
...
`ReactorClientHttpConnector` provides an adapter layer to `WebClient`
for using Reactor-Netty's `HttpClient`.
This commit enables HTTP compression support by default for this client
Connector.
Another constructor is still available for providing a custom
`HttpOptions` configuration.
Issue: SPR-15908
2017-09-01 23:14:58 +02:00
Rossen Stoyanchev
edb70b4f55
Merge pull request #1504 from bbohl/stringindexoutofbounds_resttemplate_fix
2017-09-01 16:58:09 -04:00
Rossen Stoyanchev
3d61f7ba60
Polish
2017-09-01 16:57:35 -04:00
Brian Bohl
81dfadcb16
Fix StringIndexOutOfBoundsException in RestTemplate.doExecute IOException handler when query string is an empty string
2017-09-01 16:48:53 -04:00
Juergen Hoeller
26284cac4f
Hibernate Validator 5 compatible support for element constraints
...
Issue: SPR-15916
Issue: SPR-15839
2017-09-01 16:40:24 +02:00
Juergen Hoeller
b6cae219d8
Upgrade to Log4J 2.9 (and Undertow 1.4.20)
2017-09-01 14:08:19 +02:00
Juergen Hoeller
97ded1dcc7
Polishing
2017-09-01 14:05:35 +02:00
Juergen Hoeller
30bd5827b0
ConfigurationClassEnhancer leniently allows for null bean references
...
Issue: SPR-15829
2017-09-01 14:05:14 +02:00
Juergen Hoeller
204ddebd68
SimpleAsyncTaskExecutor properly respects NO_CONCURRENCY
...
Issue: SPR-15895
2017-09-01 13:44:49 +02:00
Stephane Nicoll
678a786076
Merge pull request #1512 from Buzzardo:CONTRIBUTING-DOCUMENTATION-edit
...
* pr/1512:
CONTRIBUTING-DOCUMENTATION.adoc edit
2017-09-01 09:28:28 +02:00
Jay Bryant
3736b049d0
CONTRIBUTING-DOCUMENTATION.adoc edit
...
I made it be more formal and be easier to read.
Closes gh-1512
2017-09-01 09:28:09 +02:00
Stephane Nicoll
3a006439ee
Merge pull request #1511 from arend-von-reinersdorff:patch-1
...
* pr/1511:
Minor fix in example code: No quotes for boolean
2017-09-01 09:27:05 +02:00
Arend v. Reinersdorff
ba50581961
Minor fix in example code: No quotes for boolean
...
Closes gh-1511
2017-09-01 09:26:47 +02:00
Arjen Poutsma
14af5d941a
Javadoc
...
Issue: SPR-15912
2017-08-31 13:55:19 +02:00
Sebastien Deleuze
2f812112c2
Update Kotlin Slack URL
...
Issue: SPR-15659
2017-08-31 10:23:25 +02:00
Sebastien Deleuze
466699ba63
Polishing
...
Issue: SPR-15659
2017-08-31 09:57:11 +02:00
Stephane Nicoll
a8f10280ff
Merge pull request #1509 from Buzzardo:master
...
* pr/1509:
Polish contribution
Polish
2017-08-30 18:14:08 +02:00
Stephane Nicoll
8bd45cdec4
Polish contribution
...
Closes gh-1509
2017-08-30 18:13:10 +02:00
Jay Bryant
ea0e22218f
Polish
...
See gh-1509
2017-08-30 18:12:50 +02:00
Sebastien Deleuze
44e8cdcd89
Polishing
...
Issue: SPR-15659
2017-08-30 17:28:36 +02:00
Sebastien Deleuze
884fc40c3c
Add "Injecting configuration properties" to Kotlin ref doc
...
Issue: SPR-15659
2017-08-30 16:36:55 +02:00
Sebastien Deleuze
75114bd835
Upgrade to Kotlin 1.1.4-3
2017-08-30 15:27:21 +02:00
Sebastien Deleuze
3c9bb645d5
Improve Kotlin reference documentation
...
Issue: SPR-15659
2017-08-30 11:56:20 +02:00
Sam Brannen
71bd10f150
Update notes in Eclipse import script
2017-08-29 17:22:05 +02:00
Sam Brannen
9dd3a1cae7
Polishing
2017-08-29 16:57:27 +02:00
Martin Macko
721af4f780
Fix wrong instructions for building documentation ( #1508 )
...
Issue: SPR-15906
2017-08-29 16:51:11 +02:00
Juergen Hoeller
2b44e6e21c
Strong references to mapped exception handler methods
...
Issue: SPR-15907
2017-08-29 15:07:23 +02:00
Juergen Hoeller
b122bc6dcc
Upgrade to Hibernate Validator 6.0.2
...
Includes latest dependency updates (Netty 4.1.15, Undertow 1.4.19)
Issue: SPR-15808
2017-08-29 15:04:17 +02:00
Sebastien Deleuze
bddd71e705
Polishing
...
Issue: SPR-15659
2017-08-29 10:45:11 +02:00
Sebastien Deleuze
4359008b2b
Polishing
...
Issue: SPR-15659
2017-08-29 01:49:37 +02:00
Sebastien Deleuze
c1559b3f0a
Fix link to Spring Framework KDoc
...
Issue: SPR-15659
2017-08-29 01:43:32 +02:00
Sebastien Deleuze
ed6a35b465
Add API and reference documentation for Kotlin support
...
Issue: SPR-15659
2017-08-29 01:07:27 +02:00
Sebastien Deleuze
d2c1b284f3
Polish Kotlin API contracts and documentation
...
Issue: SPR-15659
2017-08-29 00:56:39 +02:00
Sam Brannen
3f2e27f24f
Fix Javadoc formatting in AnnotationBeanConfigurerAspect
2017-08-28 15:45:09 +02:00
Sam Brannen
4e81ee5fdf
Verify support for H2 database aliases in SQL scripts
...
This commit introduces a test to demonstrate how to define an alias in
an SQL script executed against an embedded H2 database.
Issue: SPR-15896
2017-08-26 15:04:48 +01:00
Brian Clozel
582014e944
Support HTTP range requests in MVC Controllers
...
Prior to this commit, HTTP Range requests were only supported by the
ResourceHttpRequestHandler when serving static resources.
This commit improves the `HttpEntityMethodProcessor` and
the `RequestResponseBodyMethodProcessor`. They now extract
`ResourceRegion`s from the `Resource` instance returned by the
Controller and let the Resource-related message converters
handle the writing of the resource (including partial writes).
Controller methods can now handle Range requests for
return types that extend Resource or HttpEntity:
@RequestMapping("/example/video.mp4")
public Resource handler() { }
@RequestMapping("/example/video.mp4")
public HttpEntity<Resource> handler() { }
Issue: SPR-15789, SPR-13834
2017-08-24 20:50:37 +02:00
Sam Brannen
d20b3cf86d
Upgrade to TestNG 6.12
2017-08-24 15:27:46 +01:00
Sam Brannen
d070010650
Upgrade to JUnit Jupiter 5.0 RC3
...
Issue: SPR-15848
2017-08-23 20:53:46 +01:00
Sebastien Deleuze
ba02b5761e
Provide distinct Web and Reactive Web sections
...
This change allows much more usable TOC for the reactive
stack and will make WebFlux documentation easier to
contribute thanks to a clearer split between both stacks.
Issue: SPR-15149
2017-08-23 16:02:04 +02:00
Sebastien Deleuze
cdb6688815
Update WebFlux code examples
2017-08-23 13:59:46 +02:00
Sebastien Deleuze
d61db48d64
Improve WebFlux documentation sections
...
Issue: SPR-15149
2017-08-23 13:53:58 +02:00
Sam Brannen
9da3927235
Polishing
2017-08-22 22:23:44 +01:00
Sam Brannen
1cb96f47c8
Fix Eclipse support in Gradle build
...
The upgrade to Gradle 4.0 broke the custom Eclipse support in the
Spring Framework build.
This commit includes the following changes which re-enable support for
Eclipse in the build.
- Switched to ProjectDependency(String) constructor
- Updated regular expression that matches against project output
dependencies to include more than one subdirectory between "build"
and "main"|"test".
Issue: SPR-15862
2017-08-22 22:16:34 +01:00
Brian Clozel
397fd24849
Revert "Leverage Kotlin plugin dependency management"
...
This reverts commit 3e2f6c848a .
2017-08-22 21:29:39 +02:00
Brian Clozel
a1e898fd39
Share common compiler args between src and test
...
Issue: SPR-15885
2017-08-22 18:09:19 +02:00
Sebastien Deleuze
3e2f6c848a
Leverage Kotlin plugin dependency management
2017-08-22 17:35:57 +02:00
Sebastien Deleuze
ef68ccdbd8
Add support for Kotlin autowired ctors w/ optional params
...
This commit adds support for autowired constructor parameters
on Kotlin classes with optional parameters. If some constructor
parameters are not available, optional parameter default values
will be used instead. Both explicit @Autowired annotated constructor
and implicit single constructor automatically autowired are supported.
Issue: SPR-15847
2017-08-22 17:05:18 +02:00
Sebastien Deleuze
ab6430569d
Efficient Kotlin metadata detection
...
Follow-up of 3991ab4a23 .
Issue: SPR-15673
2017-08-22 16:22:25 +02:00
Brian Clozel
cea9d1db8e
Fix Spring Framework BOM
...
This commit reinstates the Spring Framework BOM, which was previously
empty because of a previous change in 41cbc4670f .
This change also removes the JSR305 dependency from the BOM, which does
not belong here since it is not an artifact produced by Spring.
Issue: SPR-15885
2017-08-22 16:04:23 +02:00
Brian Clozel
af7673dda7
Polish build
...
Issue: SPR-15885
2017-08-22 11:23:22 +02:00
Brian Clozel
f6023c2202
Remove Sonar / Jacoco build configuration
...
Issue: SPR-15885
2017-08-22 11:10:53 +02:00
Stephane Nicoll
5a51351fa4
Relax test assertion when Jacoco is enabled
...
This commit changes the resolveMethod to take a method name as
instrumentation may add additional methods to the test object.
Issue: SPR-15888
2017-08-22 10:26:19 +02:00
Sebastien Deleuze
9abe77670c
Sync with reactor-core when() -> zip() change
2017-08-21 19:54:08 +02:00
Brian Clozel
9341955107
Do not render PDF reference doc for SNAPSHOT builds
...
This commit ensures that only the HTML version of the reference
documentation is rendered for SNAPSHOT builds. This speeds up
significatly the build.
Issue: SPR-15885
2017-08-21 14:42:21 +02:00
Brian Clozel
5460c0095b
Fix Gradle warnings about task output
...
As of Gradle 4.0, project SourceSets can have multiple output
directories (one per programming language).
This commit fixes warnings that are logged when a single output dir
is considered by tasks.
Issue: SPR-15885
2017-08-21 14:42:12 +02:00
Brian Clozel
cc3d7d2d48
Apply dependency management to selected modules
...
This commit applies the Dependency Management Plugin to modules that
require it; right now Spring Framework is importing BOMs for Netty and
Reactor dependencies only.
Instead of applying those BOMs to all modules, they're applied only
where they're needed.
Issue: SPR-15885
2017-08-21 14:42:03 +02:00
Brian Clozel
2eeb428e95
Move modules to independent build files
...
The main `build.gradle` file contains now only the common build
infrastructure; all module-specific build configurations have
been moved to their own build file.
Issue: SPR-15885
2017-08-21 14:41:55 +02:00
Brian Clozel
41cbc4670f
Refactor the spring-beans build
...
This commit merges back the "spring-beans-groovy" module into the main
"spring-beans" one. The build is configured so:
* Java and Groovy sources are jointly compiled
* Kotlin sources are compiled after
With this change, the `MergePlugin` is not used anymore in the project
build and therefore is removed.
The `DetectSplitPackagesPlugin` wasn't applied so it's been removed as
well.
Issue: SPR-15885
2017-08-21 14:41:46 +02:00
Brian Clozel
0c178ff762
Generate docs *after* running tests in Gradle build
...
This commit reorders docs generation (javadoc, asciidoctor) *after*
runing tests for `./gradlew build` commands.
Issue: SPR-15885
2017-08-21 14:41:38 +02:00
Brian Clozel
2e50ea7eb4
Move plugin declarations to plugin syntax
...
Note: this syntax automatically applies the plugin to the root project.
Adding `apply false` in the plugin declaration disables that.
Issue: SPR-15885
2017-08-21 14:41:28 +02:00
Brian Clozel
11418d8d28
Allow dedicated build files for subprojects
...
With this change, each subproject can configure its
build in a dedicated file like:
```
spring-core/spring-core.gradle
spring-web/spring-web.gradle
```
Issue: SPR-15885
2017-08-21 14:40:35 +02:00
Brian Clozel
4d306e2d85
Use Gradle build scans
...
This commit configures Gradle build scans for the Spring Framework
build. Scans aren't performed for every build but can be enabled
with the following:
```
./gradlew build --scan
```
Issue: SPR-15885
2017-08-21 14:29:49 +02:00
Stephane Nicoll
3d28e80e53
Fix code format
...
Closes gh-1501
2017-08-21 08:42:26 +02:00
Juergen Hoeller
b61c055e43
Polishing
2017-08-21 01:37:33 +02:00
Juergen Hoeller
fac1f236c3
Upgrade to Servlet API 4.0 for MVC and merge EhCache 3 tests into spring-context-support
...
Includes general streamlining of dependency declarations with reduced version variables, direct use of EclipseLink 2.7 and its implicit JPA 2.2 dependency in spring-orm, mixed use of Hibernate 5.2.10 and 5.1.10 for integration tests, as well as an upgrade to Jetty 9.4.7 RC0 and a downgrade to Groovy 2.4.12 (since Groovy 2.5 won't be final in time for Spring Framework 5.0).
Issue: SPR-15879
Issue: SPR-15880
2017-08-21 01:34:11 +02:00
Juergen Hoeller
3991ab4a23
Efficient Kotlin metadata detection
...
Issue: SPR-15673
2017-08-21 01:33:20 +02:00
Stephane Nicoll
f6e7fef236
Polish
2017-08-19 10:50:41 +02:00
Rossen Stoyanchev
dabb02d830
Update docs on DispatcherServlet config and processing
...
Issue: SPR-15149
2017-08-18 19:07:28 +02:00
Rossen Stoyanchev
940a344a73
Polish
2017-08-18 19:07:28 +02:00
Juergen Hoeller
9aa369f402
Data class construction supports field default/marker parameters
...
Issue: SPR-15871
2017-08-18 17:59:06 +02:00
Rossen Stoyanchev
18f42f9667
Fix typo
...
Issue: SPR-15872
2017-08-18 09:18:03 +02:00
Juergen Hoeller
47a7475898
Resolve remaining nullability warnings
...
Issue: SPR-15869
2017-08-18 00:15:46 +02:00
Juergen Hoeller
ac5e2599f7
Consistent overriding for all variants of init/destroy method inheritance
...
Issue: SPR-15532
2017-08-18 00:13:49 +02:00
Juergen Hoeller
b94302b5bd
Enforce non-null value from getBean and at injection points
...
Bean-derived null values may still get passed into bean properties and injection points but only if those are declared as non-required. Note that getBean will never return null; a manual bean.equals(null) / "null".equals(bean.toString()) check identifies expected null values now. This will only ever happen with custom FactoryBeans or factory methods returning null - and since all common cases are handled by autowiring or bean property values in bean definitions, there should be no need to ever manually check for such a null value received from getBean.
Issue: SPR-15829
2017-08-18 00:11:35 +02:00
Rossen Stoyanchev
10dcaa9bf6
Update introduction to Spring Web MVC
...
Issue: SPR-15149
2017-08-17 21:59:19 +02:00
Rossen Stoyanchev
11ac87099a
Prepare Web section for Servlet vs Reactive content
...
Refer to both Servlet and reactive stacks in web.adoc
Move web-integration.adoc to the very end
Link in web-flux-functional.adoc
Insert "Spring Web MVC" or "Servlet" prefix in chapter titles
Issue: SPR-15149
2017-08-17 21:59:13 +02:00
Rossen Stoyanchev
f1b017af04
Insert line breaks
2017-08-17 21:58:41 +02:00
Sebastien Deleuze
73cf07e9a4
Fix overridden methods nullability
...
Issue: SPR-15869
2017-08-17 15:02:59 +02:00
Juergen Hoeller
6b6c1d3e53
Build and test against JPA 2.2 and EclipseLink 2.7 (while retaining compatibility with JPA 2.1)
...
Includes latest dependency updates (Tomcat 8.5.20, Protobuf 3.4, RxJava 2.1.3, Caffeine 2.5.5)
Issue: SPR-15870
2017-08-17 12:31:35 +02:00
Juergen Hoeller
ec1eafc46f
@Lazy falls back to empty map/list/set for non-required collection dependency
...
Issue: SPR-15858
2017-08-17 12:28:55 +02:00
Juergen Hoeller
61cdc842e0
BindingResult support for constructor argument mismatch on immutable data object
...
Issue: SPR-15542
2017-08-17 11:02:40 +02:00
Juergen Hoeller
b8f5e97ae5
Properly retrieve and expose HttpServletResponse for async requests
...
Issue: SPR-15867
2017-08-17 08:52:05 +02:00
Rossen Stoyanchev
bb327b90a6
Merge pull request #1499 from rlindooren/SPR-15866-use-provided-mime-types
2017-08-16 15:45:59 +02:00
Rossen Stoyanchev
e433d8b66a
Polish
2017-08-16 15:45:14 +02:00
rlindooren
5b29555d88
Jackson encoder and decoder should use provided mime types
...
Instead of always using the default JSON mime types
2017-08-16 15:25:18 +02:00
Rossen Stoyanchev
645e3492db
Use URLDecoder for query params in WebFlux
...
Issue: SPR-15860
2017-08-16 13:34:31 +02:00
Rossen Stoyanchev
8b7a670821
Cancel WebAsyncManager thread on request timeout
...
Issue: SPR-15852
2017-08-16 09:26:21 +02:00
Rossen Stoyanchev
9c3bd8ce85
Separate forwarded~ and redirectedUrlTemplate methods
...
This commit restores and existing redirectedUrl and forwardedUrl
methods (simple String comparison) and creates separate
redirectedUrlTemplate and forwardedUrlTemplate methods that expand
and also encode before comparing.
Issue: SPR-15834
2017-08-15 15:25:39 +02:00
Rossen Stoyanchev
8bdaba913c
Merge pull request #1486 from drumonii/MockRestRequestMatchers-requestTo-UriVars
2017-08-15 15:11:02 +02:00
Rossen Stoyanchev
ea2864c73e
Polish
2017-08-15 15:08:23 +02:00
Drummond Dawson
809189be1a
URI variables with MockRestRequestMatchers requestToUriTemplate
...
Issue: SPR-15819
2017-08-15 14:55:56 +02:00
Rossen Stoyanchev
181f002ddf
Use exact type name in doc sample
...
Issue: SPR-15863
2017-08-15 14:44:22 +02:00
Sebastien Deleuze
3f4ec37262
Upgrade to Kotlin 1.1.4
...
Issue: SPR-15814
2017-08-15 10:12:34 +02:00
Rossen Stoyanchev
280c64ba35
Polish
2017-08-14 18:55:39 +03:00
Rossen Stoyanchev
8c4b1ab781
Functional PathPattern comparator
2017-08-14 16:33:39 +03:00
Sebastien Deleuze
ef175d7ca6
Fix BeanUtils#instantiateClass w/ Kotlin + noarg constructor
...
Issue: SPR-15851
2017-08-14 15:14:02 +02:00
Sebastien Deleuze
f57e5584af
Add a reference to KT-18833 in JDK 9 ignored tests
2017-08-14 11:47:08 +02:00
Sebastien Deleuze
0bdd246763
Upgrade to Kotlin 1.1.4-eap-77
...
This commit also fixes compilation with JDK9 since
KT-18832 has been fixed.
Issue: SPR-15814
2017-08-14 11:26:38 +02:00
Rossen Stoyanchev
631b546d1c
Proper null handling in PathPattern comparator
2017-08-14 11:45:27 +03:00
Juergen Hoeller
adeb521ce4
Polishing
2017-08-08 17:27:28 +02:00
Juergen Hoeller
09f5c71374
Consistent nullability for BeanDefinitionBuilder setters
...
Issue: SPR-15841
2017-08-08 17:26:45 +02:00
Juergen Hoeller
de09f8ca1f
Support for Bean Validation 2.0 container elements (with BV 2.0 test setup)
...
Includes latest dependency updates (Hibernate Validator 6.0.1, Caffeine 2.5.4, Netty 4.1.14, Tomcat 8.5.19, Johnzon 1.1.2, JsonPath 2.4, Jython 2.7.1)
Issue: SPR-15839
Issue: SPR-15808
2017-08-08 17:26:30 +02:00
Juergen Hoeller
48f95e9b96
Upgrade to Gradle 4.1
...
Issue: SPR-15667
2017-08-08 17:26:21 +02:00
Stephane Maldini
2677bab560
Use Bismut-BUILD-SNAPSHOT
...
Sync 3.1.0.BUILD-SNAPSHOT changes to Operators.checkRequest (removed)
2017-08-03 14:30:08 -07:00
Sam Brannen
c4f7ff04dc
Polish JavaDoc for the SpringExtension
2017-08-03 23:26:38 +03:00
Sam Brannen
da8d50f91f
Revise SpringExtension based on recent changes in JUnit Jupiter
...
This commit revises the implementation of the SpringExtension to use
the getRequired*() methods in the ExtensionContext which are now built
into JUnit Jupiter thanks to inspiration from the initial "convenience"
methods implemented here.
2017-08-03 23:19:57 +03:00
Juergen Hoeller
fabc9c28d7
Align new FileSystemUtils NIO implementation with original behavior
...
Issue: SPR-15845
Issue: SPR-15846
2017-08-03 14:21:00 +02:00
Rossen Stoyanchev
08dfce2cb5
Dedicated specificity comparator in PathPattern
...
The PathPattern compareTo method is now consistent with equals when
two patterns are of the same specificity but otherwise different.
Separately PathPattern now exposes a Comparator by specificity that
offers the current functionality of compareTo. This can be used for
actual sorting where we only care about specificity.
2017-08-02 18:11:36 +02:00
Rossen Stoyanchev
62fa20fd6f
PathPattern#matchAndExtract minor refactoring
...
Consistent behavior with matches(PathContainer), the two had slightly
different logic for handling of empty paths.
Make matchAndExtract independantly usable without the need to call
matches(PathContainer) first. Essentially no longer raising ISE if the
pattern doesn't match but simply returning null.
2017-08-02 16:31:06 +02:00
Rossen Stoyanchev
dccedd5ad5
Minor refactoring in PathPattern
...
Rename getPathRemaining to matchStartOfPath since the method does
match and to be more clear about what the method and the return value
intuitively follows.
Remove matchStart which matches the start of the pattern (rather than
the start of the path). It is a use case that does not come up in
request mapping.
2017-08-02 15:05:28 +02:00
Rossen Stoyanchev
c060f4f615
Polish PathPattern and parser
...
Updates to Javadoc
Consistent and separator type neutral naming for trailing slash
PathPattern extracts options from the parser instance
2017-08-02 14:21:16 +02:00
Arjen Poutsma
5394cc0c63
WebClientException should allow access to status code of the response
...
This commit changes the WebClient so that it now throws a
`WebClientResponseException` for `ResponseSpec.bodyTo`. This newly
introduces exception contains the status code, headers, and body of the
response message.
As a consequence of the above, we had to change `onStatus` so that the
`exceptionFunction` now returns a `Mono<Throwable>` rather than a
`Throwable`, which it was before. The Mono allows for asynchronous
operations, such as reading the contents of the body.
Issue: SPR-15824
2017-08-02 10:20:58 +02:00
Rossen Stoyanchev
b6d1fd9d22
Minor refactoring in PathPatternParser
...
Remove the separator constructor argument (but preserve internal
functionality) now that PathPatternParser is more explicitly purposed
for URL paths and in any case the use of an alternate separator would
also requires a similar input option on the PathContainer parsing side.
2017-08-01 22:52:18 +02:00
Rossen Stoyanchev
1794f1cea4
Polish path pattern parsing javadoc
...
Emphasize specific purpose for URL path matching.
2017-08-01 22:31:21 +02:00
Rossen Stoyanchev
b1440b6816
Remove ParsingPathMatcher
...
Now that we also have RequestPath and PathContainer with the latter as
the required input, the ParsingPathMatcher adapter can be removed.
2017-08-01 13:35:21 +02:00
Rossen Stoyanchev
4fc0ce1206
Properly detect null value params in params conditions
...
Issue: SPR-15831
2017-08-01 13:01:09 +02:00
Juergen Hoeller
ca0983cd85
Polishing
2017-08-01 12:08:57 +02:00
Juergen Hoeller
697d14a028
Unit tests for transaction annotations on parent interfaces
...
Issue: SPR-15833
2017-08-01 12:08:21 +02:00
Juergen Hoeller
dd2bbcb3ec
Leniently handle lambda-defined listeners with ErrorHandler as well
...
Issue: SPR-15838
2017-08-01 12:06:41 +02:00
Juergen Hoeller
1fbd047003
checkConfigurationClassCandidate explicitly skips factory method definitions
...
Issue: SPR-14603
2017-08-01 12:05:26 +02:00
Rossen Stoyanchev
f813a63fd8
PathContainer parses URL paths only
...
Collapse non-URL vs URL based path parsing into one essentially
supporting URL paths only.
2017-07-31 22:10:08 +02:00
Rossen Stoyanchev
af83d2332a
Fix regression in HttpPutFormContentFilter
...
Re-arrange the checks so that if there is no form parameter, then
immediately and unconditionally delegate to super.getParameterValues().
Or reversely if there is no super.getParameterValues() then return the
form parameter.
So the only remaining case is when combining values present in both.
In that case we'll take both only if a queryString exists.
One extra fix is to not even wrap the request if we did not parse any
form parameters at all which can happen with HttpHiddenMethodFilter.
Issue: SPR-15828, 15835
2017-07-31 17:30:22 +02:00
Juergen Hoeller
ce0bce28da
Upgrade to JUnit 5.0 RC2
...
Issue: SPR-15737
2017-07-31 11:11:38 +02:00
Stephane Nicoll
1a9cfefcbb
Fix test failure
...
Issue: SPR-15548
Closes gh-1488
2017-07-31 10:45:18 +02:00
Stephane Nicoll
48f18e9a47
Merge pull request #1488 from eddumelendez:jackson_2.9.0
...
* pr/1488:
Upgrade to Jackson 2.9.0
2017-07-31 09:37:56 +02:00
Eddú Meléndez
b2345d67db
Upgrade to Jackson 2.9.0
...
Issue: SPR-15548
Closes gh-1488
2017-07-31 09:37:29 +02:00
Rossen Stoyanchev
e45733e790
Update overview.adoc
2017-07-28 17:20:19 +02:00
Rossen Stoyanchev
d37498c354
Update overview.adoc
2017-07-28 16:37:49 +02:00
Rossen Stoyanchev
a48a47bbd0
Merge pull request #1487 from Buzzardo/master
...
New overview
2017-07-28 16:18:34 +02:00
Jay Bryant
4872084079
New overview
...
We have written a replacement for the current overview, as the beginning of a larger documentation effort.
2017-07-28 08:38:38 -05:00
Arjen Poutsma
0b3ea405ab
Remove BodyInserters.fromServerSentEvent variants
...
Removed superfluous `fromServerSentEvent` variants from `BodyInserters`,
as their functionality can also be obtained by passing a stream of
strings or POJOs (to be encoded as JSON) to
`fromPublisher(Publisher, Class)}`, and specifying a `text/event-stream`
Content-Type.
Issue: SPR-15826
2017-07-28 12:37:19 +02:00
Rossen Stoyanchev
dbe25cf717
Add RequestPath tests for modifying the contextPath
2017-07-28 12:26:34 +02:00
Rossen Stoyanchev
6855a85c41
Move RequestPath to parent server package
2017-07-28 12:26:34 +02:00
Sam Brannen
4630e62c20
Fix formatting
2017-07-28 12:25:05 +02:00
Sam Brannen
859da2f074
Clean up warnings in spring-test
2017-07-28 12:24:53 +02:00
Sebastien Deleuze
6583f9f754
Use ParameterizedTypeReference instead of Class in Kotlin extensions
...
This commit also removes WebFlux non-extension functions in favor of
regular Kotlin extensions leveraging ParameterizedTypeReference parameter.
Issue: SPR-15818
2017-07-28 00:22:00 +02:00
Arjen Poutsma
1d86c9c3d1
Use Credentials object instead of 2 attributes for Basic Authentication
...
This commit changes the usage of two separate attributes (username and
password) into one: a single `Credentials` object.
Additionally, the attributes key under which the credentials are stored
is changed to be specific to Basic Authentication, in order to allow for
other sorts of authentication later.
Issue: SPR-15764
2017-07-27 16:09:09 +02:00
Juergen Hoeller
26de6268aa
Polishing
2017-07-27 16:06:56 +02:00
Juergen Hoeller
fac83b2e7c
Consistent logging in Environment and PropertySource implementations
...
Issue: SPR-15825
2017-07-27 16:02:18 +02:00
Sebastien Deleuze
3cef5a1294
Add RouterFunctions#toWebHandler(RouterFunction<?>)
2017-07-27 15:25:35 +02:00
Arjen Poutsma
eb435f5947
Add ParameterizedTypeReference method variants to ServerRequest/ServerResponse
...
This commit changes adds overloaded `ParameterizedTypeReference `
variants to body-related methods in `ServerRequest` and
`ServerResponse`.
It also adds a single PTR variant to ClientRequest, which was missing
before.
Issue: SPR-15817
2017-07-27 13:38:35 +02:00
Juergen Hoeller
c5fc400534
(AnnotationAware)OrderComparator supports null values again
...
Issue: SPR-15823
2017-07-27 11:39:05 +02:00
Juergen Hoeller
25e6a2da64
StompSubProtocolHandler consistently accesses current user
...
Issue: SPR-15822
2017-07-27 11:32:32 +02:00
Arjen Poutsma
f3975776d4
Use list of HttpMessage[Reader|Writer]s instead of CodecConfigurer
...
This commit changes all consumers of CodecConfigurer to consume a `List`
of HttpMessageReaders or HttpMessageWriters instead of consuming the
Server- or ClientCodecConfigurer directly.
Issue: SPR-15816
2017-07-26 17:48:36 +02:00
Sebastien Deleuze
1e07468d20
Prevent warning about final private methods in CglibAopProxy
...
Issue: SPR-15820
2017-07-26 15:57:57 +02:00
Arjen Poutsma
d5da823482
Fix race condition for AsynchronousFileChannel
...
This commit fixes an issue in the DataBufferUtils.write variant that
takes a AsynchronousFileChannel.
Issue: SPR-15798
2017-07-26 14:10:48 +02:00
Juergen Hoeller
d904e9ed50
Latest dependency updates (RxJava 2.1.2, Rome 1.7.4, JRuby 9.1.12)
2017-07-25 14:12:57 +02:00
Juergen Hoeller
af93503a09
TemplateAwareExpressionParser treats null as non-template ParserContext
...
Issue: SPR-15810
2017-07-25 14:12:41 +02:00
Rossen Stoyanchev
45e714ec13
Add test case for SPR-15719
2017-07-25 12:29:44 +02:00
Rossen Stoyanchev
d20e5fcc59
Polish
2017-07-25 12:29:44 +02:00
Sebastien Deleuze
29c112c010
Avoid requiring it parameter in Kotlin bean DSL
...
By using function literals with receiver, we can avoid requiring
lambda parameters for a shorter and nicer syntax. Based on a
proposal from Joseph Taylor.
Issue: SPR-15815
2017-07-25 11:21:08 +02:00
Rossen Stoyanchev
d7a7b08b08
Find the last plus for suffix MediaType
...
Issue: SPR-15795
2017-07-25 10:45:59 +02:00
Rossen Stoyanchev
7e232f989b
Improve check for "Broken pipe" error message
...
Issue: SPR-15802
2017-07-25 10:30:11 +02:00
Sebastien Deleuze
ed6fe2b723
Upgrade to Kotlin 1.1.4-eap-33
...
Issue: SPR-15814
2017-07-24 17:29:02 +02:00
Rossen Stoyanchev
14ccb38523
Handle nested w/o top-level array in Jackson2JsonTokenizer
...
Issue: SPR-15803
2017-07-21 13:43:38 +02:00
Rossen Stoyanchev
bd0de7086e
Jackson2JsonTokenizer unwraps top level array only
...
When the input stream is a JSON array the tokenizer skips over the
start and end array tokens in order to decode into an array of
top-level objects. However in this mode it also skips over nested
start and end array tokens which prevents proper parsing of JSR-310
dates (represented with an array syntax) as well as any fields that
are collections.
Issue: SPR-15803
2017-07-21 12:41:20 +02:00
Rossen Stoyanchev
c3e3df57f8
Polish
2017-07-21 12:08:06 +02:00
Rossen Stoyanchev
3009e29489
Remove contentDispositionFormData with charset method
...
The method was orginally added under SPR-14547 but the example in it
was probably intended for use with Content-Disposition server response
header (file dowonload) and not for a Content-Disposition header
within the body of a multipart request.
In a Spring application a multipart request is typically serialized
by the FormHttpMessageConverter and hence the Content-Disposition is
not explicitly set by the application.
Issue: SPR-15205
2017-07-20 17:49:59 +02:00
Sebastien Deleuze
d8a80fc0db
Rename RouterFunction Kotlin DSL files
2017-07-20 16:05:00 +02:00
Sebastien Deleuze
0720f9e978
Fix an eventual IndexOutOfBoundsException in RequestPredicates
2017-07-20 16:05:00 +02:00
Brian Clozel
f1abcba4eb
Support ipV6 Host addresses in HttpHeaders
...
This commit parses the "Host" HTTP request header as an
`InetSocketAddress`, while supporting IPv6 addresses like `[::1]`.
This host string contains `:` chars even though it has no port
information.
Issue: SPR-15799
2017-07-20 15:21:46 +02:00
Rossen Stoyanchev
bb684ce60b
Improve decoding support for multipart filename
...
StandardMultipartHttpServletRequest now properly decodes RFC-5987
encoded filenames (i.e. filename*) by delegating to ContentDisposition
and also support RFC-2047 syntax through javax.mail MimeUtility.
Issue: SPR-15205
2017-07-20 14:26:20 +02:00
Sebastien Deleuze
2437500cfe
Ignore DataBufferUtilsTests#writeAsynchronousFileChannel
...
Issue: SPR-15798
2017-07-20 13:51:13 +02:00
Juergen Hoeller
e4651d6b50
XmlEventDecoder uses common defensive XMLInputFactory (now in StaxUtils)
...
Issue: SPR-15797
2017-07-20 13:17:27 +02:00
Juergen Hoeller
40df7b6eca
Polishing
...
Issue: SPR-15673
2017-07-20 13:16:50 +02:00
Sebastien Deleuze
fa4d139684
Support instantiating Kotlin classes with optional parameters
...
This commit updates BeanUtils class in order to add Kotlin optional
parameters with default values support to the immutable data classes
support introduced by SPR-15199.
Issue: SPR-15673
2017-07-20 10:44:06 +02:00
Brian Clozel
5cac619e23
Fix host+port resolution in ReactorServerHttpRequest
...
Prior to this commit, the host+port information of the incoming request
where taken from the remoteAddress, which is actually the socket address
of the HTTP client (i.e. not the server).
This commit resolves this information from the "Host" HTTP request
header, if available, or the actual local address of the channel if no
header is available.
Issue: SPR-15084
2017-07-20 01:45:13 +02:00
Juergen Hoeller
6d6d772f31
Polishing
2017-07-20 00:14:56 +02:00
Rossen Stoyanchev
378c72e9b6
Polish + minor refactoring of ResourceUrlProvider
2017-07-19 23:04:39 +02:00
Juergen Hoeller
118d1470fd
Ignore (Auto)Closeable for interface-based proxy decisions
...
Issue: SPR-15779
2017-07-19 22:40:45 +02:00
Juergen Hoeller
13080f04f4
UriUtils.extractFileExtension properly handles all fragments
...
Issue: SPR-15786
2017-07-19 22:40:24 +02:00
Juergen Hoeller
ac1d3b22c9
Polishing
2017-07-19 22:22:27 +02:00
Juergen Hoeller
46eba3dbfa
Nullability fine-tuning around declaration inconsistencies
...
Issue: SPR-15720
Issue: SPR-15792
2017-07-19 22:22:20 +02:00
Rossen Stoyanchev
68e6b148cb
Refactor relative redirect filter support
...
Issue: SPR-15717
2017-07-19 18:46:16 +02:00
Rob Winch
fadf04e4b4
Add RelativeRedirectFilter
2017-07-19 17:15:33 +02:00
Rob Winch
5f868b493a
Add ForwardedHeaderFilter requestOnly
...
Add an option for ForwardedHeaderFilter to only process the
HttpServletRequest. This means that HttpServletResponse.sendRedirect will
only work when the application is conifgured to use relative redirects
using Servlet Container specific setup.
Issue: SPR-15717
2017-07-19 17:15:33 +02:00
Rossen Stoyanchev
147368eccc
Proactively reject URLs without target address
...
Issue: SPR-15782
2017-07-19 12:37:32 +02:00
Rossen Stoyanchev
cbe5a67687
Polish
2017-07-19 12:37:32 +02:00
Juergen Hoeller
9fc4fb10b0
Nullability fine-tuning around bean properties
...
Issue: SPR-15720
Issue: SPR-15792
2017-07-19 11:43:58 +02:00
Stephane Nicoll
06fc092be2
Polish
2017-07-19 10:11:06 +02:00
Stephane Nicoll
19c88f2cfa
Polish components indexer doc
...
Issue: SPR-15793
2017-07-19 10:05:09 +02:00
Sebastien Deleuze
fb4ddb0746
Make getters and setters null-safety consistent
...
This commit ensure that null-safety is consistent between
getters and setters in order to be able to provide beans
with properties with a common type when type safety is
taken in account like with Kotlin.
It also add a few missing property level @Nullable
annotations.
Issue: SPR-15792
2017-07-19 09:07:56 +02:00
Sebastien Deleuze
ff85726fa9
Fix warnings in Kotlin tests
2017-07-19 08:12:48 +02:00
Sebastien Deleuze
e2fd04dff3
Add a [] Kotlin extension for PropertyResolver#getRequiredProperty
2017-07-19 08:12:32 +02:00
Sebastien Deleuze
f72e0daa54
Add an env accessor to BeanDefinitionContext
...
Issue: SPR-15755
2017-07-19 07:57:19 +02:00
Juergen Hoeller
c292a89b24
Http(Async)Client not actually nullable, plus MethodInterceptor nullability
...
Issue: SPR-15720
2017-07-19 00:15:37 +02:00
Sam Brannen
1e66191cbd
Upgrade to JUnit Jupiter 5.0 M6
...
Issue: SPR-15791
2017-07-18 22:21:34 +02:00
Rossen Stoyanchev
43f2de4671
Defensive checks in WebClient and Reactor connector
...
Since there is no reason for an exchange to ever complete without a
ClientResponse I've added a switchIfEmpty check at the WebClient level.
Also, temporarily a second check closer to the problem in the
ReactorClientHttpConnector suggesting a workaround and providing a
reference to the Reactor Netty issue #138 .
Issue: SPR-15784
2017-07-18 18:13:47 +02:00
Rossen Stoyanchev
56903581d9
ResponseEntity declared as Object in WebFlux controller
...
Issue: SPR-15785
2017-07-18 17:09:24 +02:00
Rossen Stoyanchev
57221ab15c
ContentVersionStrategy has non-blocking contract
...
Issue: SPR-15773
2017-07-18 15:57:49 +02:00
Rossen Stoyanchev
efb5ba5a95
Refactor VersionStrategy in WebFlux
...
Collapse the base interface VersionPathStrategy into its extension
VersionStrategy and then turn the prefix nad fliename based
implementations into abstract base classes (vs delegate strategies).
It is simpler to have one VersionStrategy hierarchy vs that plus a
separate VersionPathStrategy as a delegate. In practice each
VersionStrategy is suited to be prefix or filename based. Also none
of our code cares about the distinction between those two interfaces.
2017-07-18 15:57:49 +02:00
Juergen Hoeller
704d4c34be
Upgrade to Reactor Bismuth M3 (and JavaMail 1.6 final)
...
Issue: SPR-15787
2017-07-18 13:14:07 +02:00
Brian Clozel
a06da0019f
Remove PathPatternParser from PatternsRequestCondition
...
Since `PathPattern.combine` now returns another `PathPattern` instance
(it was previously returning a String instance), we can now safely
remove the parser instance included in `PatternsRequestCondition`.
Issue: SPR-15663
2017-07-18 11:40:30 +02:00
Rossen Stoyanchev
7a0e5a378a
Update for reactor-core change
2017-07-18 04:09:25 +02:00
Rossen Stoyanchev
b0422d02dc
Resource transformers use AsynchronousFileChannel
...
Issue: SPR-15773
2017-07-18 03:58:21 +02:00
Juergen Hoeller
bca5a36216
Explicit error message for bean name clash with containing configuration class
...
Issue: SPR-15775
2017-07-18 00:54:49 +02:00
Juergen Hoeller
12114a9d4c
Consistent use of NIO.2 for file read/write interactions
...
Issue: SPR-15748
2017-07-18 00:54:41 +02:00
Rossen Stoyanchev
d56fedc226
Methods for reading a Resource in DataBufferUtils
...
Currently ResourceEncoder and ResourceRegionEncoder use DataBufferUtils
to read resource with an AsynchronousFileChannel if it is a file or
otherwise fallback on getting the channel from the resource.
The same is now required in other places where a Resource needs to be
read and is also generally useful.
Issue: SPR-15773
2017-07-17 12:25:25 +02:00
Rossen Stoyanchev
ee91e52c3a
Polish
2017-07-17 11:39:32 +02:00
Rossen Stoyanchev
e2ee23bfc5
WebSession supports changeSessionId
...
Issue: SPR-15571
2017-07-17 11:09:38 +02:00
Rossen Stoyanchev
70252a7335
Add tests for SPR-15777
2017-07-17 08:35:58 +02:00
Rossen Stoyanchev
b0fc83ee05
Polish CssLinkResourceTransformer
2017-07-17 08:16:25 +02:00
Rossen Stoyanchev
d3749bc1ec
Add timeout to DataBufferUtilsTests to avoid hanging
2017-07-14 23:07:48 +02:00
Rossen Stoyanchev
47b63150d1
Refactor DefaultWebSession
...
Use copy constructor to refresh a session with lastAccessTime and a
save function referencing the current exchange. As a result both fields
are now final and ConfigurableWebSession is no longer needed.
2017-07-14 22:55:56 +02:00
Rossen Stoyanchev
bf712957f6
Polish WebSession support code
2017-07-14 22:55:56 +02:00
Arjen Poutsma
c802827f0f
Change write methods to return Flux<DataBuffer>
...
This commit changes the write methods to return `Flux<DataBuffer>`
instead of `Mono<Void>`, giving access to the original buffers,
so that they can decided whether the buffers need to be closed or not.
Issue: SPR-15726
2017-07-14 18:55:25 +02:00
Juergen Hoeller
efc5b47b9a
Polishing
2017-07-14 17:37:06 +02:00
Arjen Poutsma
83051b06b8
Add write methods to DataBufferUtils
...
This commit adds an overloaded write method to `DataBufferUtils`. There
are three parameter variants: `OutputStream`, `WritableByteChannel`, and
`AsynchronousFileChannel`.
Issue: SPR-15726
2017-07-14 17:13:59 +02:00
Rossen Stoyanchev
e37af83459
Improve docs on on use of urlDecode=false
...
Issue: SPR-15643
2017-07-14 16:52:02 +02:00
Juergen Hoeller
1ad6180019
Expression javadoc alignment
2017-07-14 16:46:22 +02:00
Rossen Stoyanchev
f5c54f90b3
Add shortcut to mutate + apply to WebTestClient
...
Issue: SPR-15770
2017-07-14 16:24:15 +02:00
Juergen Hoeller
bcf9f21ecc
PropertyOrFieldReference checks cached PropertyAccessor against current EvaluationContext
...
Issue: SPR-15769
2017-07-14 15:18:05 +02:00
Juergen Hoeller
57f961e36b
No nullability declarations in AOP Alliance sources
...
Issue: SPR-15720
2017-07-14 15:10:20 +02:00
Rossen Stoyanchev
9d04c0424d
Allow empty body with no content type in BodyExtractors
...
Issue: SPR-15758
2017-07-14 14:38:42 +02:00
Rossen Stoyanchev
d2c6ea5b1b
Polish
2017-07-14 13:23:11 +02:00
Arjen Poutsma
805b7159b0
Add ParameterizedTypeReference variants to bodyTo[Mono|Flux], toEntity[List]
...
This commit introduces overloaded variants of `bodytoMono`,
`bodyToFlux`, `toEntity`, and `toEntityList` that take a
`ParameterizedTypeReference`. It also adds similar methods to
`WebClient.ResponseSpec`.
Issue: SPR-15725
2017-07-14 13:09:44 +02:00
Rossen Stoyanchev
095cc2283e
Replace constant from QueueSupplier with local one
2017-07-13 22:07:19 +02:00
Juergen Hoeller
301e2ea493
Nullability fine-tuning and related polishing
...
Issue: SPR-15720
2017-07-13 21:20:42 +02:00
Sebastien Deleuze
f46520e6e8
Add Jackson Smile support to WebFlux
...
This binary format more efficient than JSON should be useful for server
to server communication, for example in micro-services use cases.
Issue: SPR-15424
2017-07-13 17:57:07 +02:00
Juergen Hoeller
50493a0f5f
Missing abstract declaration on ReflectionTestUtils
...
Issue: SPR-15757
2017-07-13 13:19:52 +02:00
Juergen Hoeller
fd2b4f2427
DefaultListableBeanFactory falls back to empty DLBF instance on deserialization
...
Issue: SPR-15766
(cherry picked from commit c9ffa64 )
2017-07-13 13:19:45 +02:00
Juergen Hoeller
6d7612e052
AbstractTraceInterceptor provides logExceptionStackTrace flag and writeToLog delegates
...
Issue: SPR-15763
(cherry picked from commit aa0d7a6 )
2017-07-13 13:19:40 +02:00
Rossen Stoyanchev
ed5cc27f7b
Support empty body without content type in WebFlux
...
Issue: SPR-15758
2017-07-13 11:11:34 +02:00
Rossen Stoyanchev
d9eafce266
Polish
2017-07-13 06:10:29 +02:00
Juergen Hoeller
25f3aef1ab
Latest dependency updates (Caffeine 2.5.3, Netty 4.1.13, XPP3 1.1.6)
2017-07-12 19:13:21 +02:00
Juergen Hoeller
19a8efc717
Revised assertions and $[invocationTime] support for exceptionMessage
...
Issue: SPR-15763
2017-07-12 19:13:12 +02:00
Juergen Hoeller
5f767a86f5
Always invoke Jackson serialization with AtomicReference cause
...
Issue: SPR-15760
2017-07-12 19:13:03 +02:00
Rossen Stoyanchev
8359201a0d
Improve write completion handling in ChannelSendOperator
...
Avoid re-using the WriteBarrier as the Subscription to both the
completionSubscriber and the writeSubscriber.
Instead DownstreamBridge is now called WriteCompletionBarrier and is
both a Subscriber and Subscription, i.e. handles all signals to and
from the completion Subscriber.
This frees the request method implementation in WriteBarrier to assume
it can only be called by the writeSubscriber and hence it's safe to
pass on request signals to the write source outside the synchronized
block.
2017-07-12 18:49:28 +02:00
Arjen Poutsma
6329ccb327
Read-Only HttpHeaders only created when necessary
...
This commit introduces a boolean `readOnly` flag in `HttpHeaders`,
which is used to check if creating a new `HttpHeaders` instance is
necessary in `readOnlyHttpHeaders`.
2017-07-12 18:13:24 +02:00
Stephane Nicoll
1764f905d8
Merge pull request #1469 from IAMTJW:master
...
* pr/1469:
Polish contribution
Use dedicated addAdvisors
2017-07-12 17:25:02 +02:00
Stephane Nicoll
6e5e5913d7
Polish contribution
...
Closes gh-1469
2017-07-12 17:24:17 +02:00
tianjunwei
03b409f891
Use dedicated addAdvisors
...
See gh-1469
2017-07-12 17:22:26 +02:00
Stephane Nicoll
e90583fb58
Merge pull request #1465 from hackerwins:fix-typo
...
* pr/1465:
Fix typo
2017-07-12 17:15:35 +02:00
Alan Hong
fc7e7a3304
Fix typo
...
closes gh-1465
2017-07-12 17:12:34 +02:00
Sebastien Deleuze
1f011467b8
Introduce Kotlin functional bean definition DSL
...
As a follow-up of the ApplicationContext Kotlin extensions, close to
the Kotlin functional WebFlux DSL and partially inspired of the
Groovy/Scala bean configuration DSL, this commit introduces a
lightweight Kotlin DSL for functional bean declaration.
It allows declaring beans as following:
beans {
bean<Foo>()
profile("bar") {
bean<Bar>("bar", scope = Scope.PROTOTYPE)
}
environment({ it.activeProfiles.contains("baz") }) {
bean { Baz(it.ref()) }
bean { Baz(it.ref("bar")) }
}
}
Advantages compared to Regular ApplicationContext API are:
- No exposure of low-level ApplicationContext API
- Focused DSL easier to read, but also easier to write with a fewer
entries in the auto-complete
- Declarative syntax instead of functions with verbs like registerBeans
while still allowing programmatic registration of beans if needed
- Such DSL is idiomatic in Kotlin
- No need to have an ApplicationContext instance to write how you
register your beans since beans { } DSL is conceptually a
Consumer<GenericApplicationContext>
This DSL effectively replaces ApplicationContext Kotlin extensions as
the recommended way to register beans in a functional way with Kotlin.
Issue: SPR-15755
2017-07-12 16:38:41 +02:00
Arjen Poutsma
f4180eb359
Removed faulty test
2017-07-12 15:02:50 +02:00
Arjen Poutsma
d6c102d1b8
Add apply method to WebClient.Builder
...
This commit introduces an apply method to `WebClient.Builder`, allowing
users to make multiple changes to the builder in one consumer.
Issue: SPR-15743
2017-07-12 14:53:06 +02:00
Rossen Stoyanchev
9ac71afbda
Fix one failing test and @Ignore another
...
The failures look like older failures possibly exposed by recent
changes in Reactor.
The one in ViewResolutionResultHandler is very old test error.
The one in Jackson2JsonDecoderTests is more recent but went unreported.
2017-07-12 13:16:51 +02:00
Rossen Stoyanchev
89a5c857ac
Fix recently intorduced bug in ChannelSendOperator
...
WriteBarrier acts as Subscription to both completionSubscriber and
writeSubscriber so the request method needs to be careful not to
pass on the request outside of readyToWrite or writeSubscriber checks.
2017-07-12 12:40:51 +02:00
Rossen Stoyanchev
fbcd554f42
Fix method order in ChannelSendOperator
...
1. Group by contract
2. Follow lifecycle -- Subscriber 1st, Subscription 2nd, Publisher last
3. Order of declaration in implemented contracts
2017-07-12 12:29:38 +02:00
Rossen Stoyanchev
42188020b4
Polish ChannelSendOperator
2017-07-12 12:21:04 +02:00
Stephane Maldini
b3a05ebac9
Inline super SubscriberAdapter with ChannelSendOperator
...
Add support for CoreSubscriber context passing
2017-07-11 13:12:07 -07:00
Rossen Stoyanchev
134ceac58e
Set all strategies in CNM factory bean
...
ContentNegotiationManagerFactoryBean now provides an option to
explicitly set the strategies to use vs customizing a fixed
list of default strategies.
Issue: SPR-11114
2017-07-11 21:00:57 +02:00
Rossen Stoyanchev
befacf4a35
ParameterContentNegotiationStrategy uses MediaTypeFactory
...
Issue: SPR-15649
2017-07-11 17:54:16 +02:00
Arjen Poutsma
c9a3b863c4
Move toEntity(List) from WebClient.ResponseSpec to ClientResponse
...
This commit moves `toEntity(Class<T>)` and `toEntityList(Class<T>)`
from WebClient.ResponseSpec to ClientResponse. The main reason for doing
so is that the newly introduced `onStatus` method (see
2f9bd6e075 ) does not apply to these two
methods, and the result would be confusing. Also, `ClientResponse` and
`ResponseEntity` represent the same data: status code, headers, and a
body.
Issue: SPR-15724
2017-07-11 17:40:16 +02:00
Arjen Poutsma
51e02c2911
Add status-based error filter
...
This commit introduces an ExchangeFilterFunction that throws an
exception given a HTTP status predicate.
Issue: SPR-15724
2017-07-11 16:36:47 +02:00
Arjen Poutsma
2f9bd6e075
Add local error handling in WebClient.retrieve
...
This commit introduces a way to customize the WebClientExceptions, as
thrown by WebClient.ResponseSpec.bodyTo[Mono|Flux]. The first
customization will override the defaults, additional customizations are
simply tried in order.
Issue: SPR-15724
2017-07-11 16:36:40 +02:00
Arjen Poutsma
2ea693bd83
Add ClientRequest.attribute(String)
...
This commit adds the attribute(String) convenience method to the
ClientRequest class. It also adapts the Basic Authentication filter to
use it.
2017-07-11 15:41:33 +02:00
Arjen Poutsma
e11bb17aa6
Change ServerRequest.attribute(String) to return Object
...
This commit changes `ServerRequest.attribute(String)`` to return
`Optional<Object>` instead of `Optional<T>`, where `T` was infered
from a type parameter.
2017-07-11 15:41:33 +02:00
Rossen Stoyanchev
dfcc9af938
Lazy registration in ReactiveAdapterRegistry
...
Issue: SPR-15747
2017-07-11 13:04:43 +02:00
Rossen Stoyanchev
1d5bd8ef35
Polish
2017-07-11 12:01:44 +02:00
Rossen Stoyanchev
eb84547894
Fix MockMvc + HttpPutFormContentFilter issue
...
Issue: SPR-15753
2017-07-11 11:43:48 +02:00
Rossen Stoyanchev
f6e9c47432
Merge PathContainer refactoring changes
2017-07-11 10:58:45 +02:00
Rossen Stoyanchev
c93792b8c9
Allow custom separator in PathContainer
2017-07-11 10:56:19 +02:00
Rossen Stoyanchev
0e370e0703
Separate out URL path parsing in PathContainer
...
PathContainer now has separate parsePath and parseUrlPath methods each
creating PathSegment and UrlPathSegment respectively.
2017-07-11 10:56:19 +02:00
Rossen Stoyanchev
1d201a55db
Refine PathContainer.Segment value representation
...
Segment.value() now returns the actual original path segment value
including path parameters while semicolonContent() is removed.
valueDecoded() is renamed to valueToMatch() to reflect it is the value
for pattern matching which is not only decoded but also has path
parameters removed.
2017-07-11 10:54:42 +02:00
Rossen Stoyanchev
2f17c5f3b6
From static to instance-based PathContainer#subPath
2017-07-11 06:05:36 +02:00
Rossen Stoyanchev
9f7d57f933
Encapsulate choice of URI encoding within RequestPath
...
Currently the URI path is always treated as UTF-8 so we can eliminate
the encoding parameter from RequestPath#parse.
2017-07-11 06:05:36 +02:00
Juergen Hoeller
122ee3096c
Efficient log checks in STOMP encoder/decoder
2017-07-10 20:44:51 +02:00
Juergen Hoeller
dd43b6aabe
ReflectionTestUtils does not require spring-aop on the classpath
...
Issue: SPR-15757
2017-07-10 20:43:34 +02:00
Juergen Hoeller
3714e7b044
Deprecate FileSystemUtils
...
Issue: SPR-15748
2017-07-10 14:25:13 +02:00
Juergen Hoeller
9b5132ce53
LinkedCaseInsensitiveMap exposes its locale for key conversion
...
Issue: SPR-15752
2017-07-10 14:24:28 +02:00
Rossen Stoyanchev
fac35ebec2
Remove PathPatternRegistry
2017-07-10 11:37:18 +02:00
Juergen Hoeller
e7b77cb2b6
Drop legacy DisposableBean declaration on AbstractApplicationContext
...
Issue: SPR-15154
2017-07-07 20:50:35 +02:00
Juergen Hoeller
6d55b3a592
Perform onException delegation outside of connection monitor
...
Issue: SPR-15738
2017-07-07 20:44:09 +02:00
Rossen Stoyanchev
7d747f9645
Deprecate AsyncRestTemplate methods in MockRestServiceServer
2017-07-07 19:20:36 +02:00
Rossen Stoyanchev
9640cedeae
Removing remaining use of PathPattern with String path
2017-07-07 19:20:36 +02:00
Juergen Hoeller
00f4c36d7a
Nullability fine-tuning (RequestContext, LocaleResolver)
...
Includes page-level JSTL time zone support for JSP tags.
Issue: SPR-15720
Issue: SPR-15746
2017-07-07 18:46:19 +02:00
Sam Brannen
4a3ca17d3f
Fix imports
2017-07-07 17:23:43 +02:00
Arjen Poutsma
5f2d2b21d9
Avoid required uri when using WebTestClient w/ base url
...
This commit makes the `uri` step of the WebTestClient optional, so that
users who have specified a base URL during WebClient config do not need
to provide an empty one (i.e. `url("")`).
Issue: SPR-15695
2017-07-07 17:07:15 +02:00
Arjen Poutsma
3232cb6260
Avoid required uri when using WebClient w/ base url
...
This commit makes the `uri` step of the WebClient optional, so that
users who have specified a base URL during WebClient config do not need
to provide an empty one (i.e. `url("")`).
The basic idea of this fix is that the HTTP method methods in WebClient
(`get`, `post`, etc.) should be able to "bypass" the uri stage, and skip
straight to defining headers, or even doing an exchange or retrieve
(i.e. call methods on `RequestHeaderSpec` or `RequestBodySpec`).
I have accomplished this by adding two new composed interfaces:
`RequestHeadersUriSpec` and `RequestBodyUriSpec`.
`RequestHeadersUriSpec` extends from the existing `UriSpec` and
`RequestHeaderSpec`, while `RequestBodyUriSpec` extends from `UriSpec`
and `RequestBodySpec`. These types are returned from the HTTP methods
(`get`, `post` etc). The `uri` methods on these types return a plain
`RequestHeaderSpec` and `RequestBodySpec` (i.e. types without the `uri`
methods), so that you can call `uri` once only.
Issue: SPR-15695
2017-07-07 17:07:15 +02:00
Sam Brannen
1c07369406
Verify interoperability w/ JUnit Jupiter's @ParameterizedTest in TCF
...
This commit introduces integration tests which verify that the
SpringExtension can be used in conjunction with JUnit Jupiter's
@ParameterizedTest support.
2017-07-07 16:52:37 +02:00
Sam Brannen
2b03507894
Polishing wording regarding JUnit Platform and JUnit Jupiter
2017-07-07 16:52:37 +02:00
Sam Brannen
ad5f85f8d3
Clean up deprecation warnings in spring-test
2017-07-07 15:41:02 +02:00
Arjen Poutsma
e458862849
Reflect recent Reactor changes
2017-07-07 15:24:15 +02:00
Rossen Stoyanchev
e0de7754cc
Polish
2017-07-07 09:44:02 +02:00
Renato Soppelsa
3dd6069578
Add UTF8 problem+json media type constant
...
Issue: SPR-15742
2017-07-07 09:42:50 +02:00
Rossen Stoyanchev
aad4916cac
WiretapConnector removes exchanges
...
Issue: SPR-15744
2017-07-06 23:01:01 +02:00
Rossen Stoyanchev
4e95378fc6
Remove unused imports
2017-07-06 15:28:32 +02:00
Rossen Stoyanchev
5f9f323b12
Add logging to randomly failing websocket test
2017-07-06 15:07:41 +02:00
Rossen Stoyanchev
acd6b9df06
Fix failing test
...
Explicitly pass the client-side JSR-356 WebSocketContainer to the
TomcatWebSocketClient to prevent the ContainerProvider from finding
the one from undertow-websockets-jsr through the ServiceLoader API.
2017-07-06 14:32:46 +02:00
Arjen Poutsma
b0ab84657b
Disable "failOnServerError" in ReactorClientHttpRequest
...
This commit disables the "failOnServerError" feature on the
`HttpClientRequest`, as wrapped by ReactorClientHttpRequest. 5xx errors
are supposed to be dealt with in the WebClient, not in the lower-level
components.
Issue: SPR-15739
2017-07-06 13:37:21 +02:00
Arjen Poutsma
0065bc5ee5
Support null query param values in ServerRequest.queryParam(String)
...
Issue: SPR-15740
2017-07-06 12:10:55 +02:00
Arjen Poutsma
625855c00f
Add comment indicating path segment combining in UriComponents.normalize
...
Issue: SPR-15734
2017-07-06 11:45:13 +02:00
Juergen Hoeller
398322139a
StringUtils.uncapitalize is not actually nullable
...
Issue: SPR-15540
2017-07-05 17:56:37 +02:00
Juergen Hoeller
59c26f65ba
AbstractValueAdaptingCache subclasses may reuse NullValue.INSTANCE
...
Issue: SPR-15693
2017-07-05 17:55:11 +02:00
Arjen Poutsma
74b4c02881
Add ClientRequest attributes
...
This commit introduces client-side request attributes, similar to those
found on the server-side. The attributes can be used, for instance, for
passing on request-specific information to a globally registered
ExchangeFilterFunction.
The client request builder, as well as WebClient.RequestHeadersSpec and
WebTestClient.RequestHeaderSpec, add methods for adding a single
attribute, as well as manipulating the entire attributes map.
The client request itself adds a accessor for the (immutable) attributes
map.
This commit also introduces a new variant of the basic authentication
filter in ExchangeFilterFunctions. This variant takes the username and
password from well-known attributes.
Issue: SPR-15691
2017-07-05 14:52:38 +02:00
Juergen Hoeller
eb928ce456
Reliably detect event listener conditions on proxied beans
...
Issue: SPR-15678
2017-07-05 13:41:56 +02:00
Juergen Hoeller
a6d616d844
Exception handler methods may receive original as well as cause
...
Issue: SPR-15701
2017-07-05 13:39:30 +02:00
Juergen Hoeller
45d376b6af
Polishing
2017-07-05 10:55:30 +02:00
Juergen Hoeller
1306bb9982
Declare spring-context as optional in web, webflux, messaging, jms
...
Issue: SPR-15733
2017-07-05 10:55:16 +02:00
Juergen Hoeller
e35b63f813
Latest dependency updates (Kotlin 1.1.3-2, Undertow 1.4.18, JsonPath 2.3)
2017-07-05 00:19:38 +02:00
Juergen Hoeller
6c0ae1ec9b
Clarified role of postProcessAfterInstantiation
...
Issue: SPR-15732
2017-07-05 00:01:38 +02:00
Sam Brannen
75a71accea
Upgrade to JUnit Jupiter 5.0 M5
...
Issue: SPR-15728
2017-07-04 22:21:13 +02:00
Brian Clozel
9c93521512
Leverage PathPatternParser in CORS configuration source
...
Previously `UrlBasedCorsConfigurationSource` was relying on
`PathMatcher` implementations for matching incoming request lookup paths
with the configured path patterns for CORS configuration.
This commit replaces the use of `PathMatcher` with a `PathPatternParser`
that parses the string patterns into `PathPattenr` instances and allows
for faster matching against lookup paths.
Issue: SPR-15688
2017-07-04 16:01:18 +02:00
Violeta Georgieva
fd1859c34c
Adapt to the changes in Reactor Netty ClientOptions
...
ClientOptions/HttpClientOptions are now created via Builder
2017-07-04 15:26:29 +02:00
Rossen Stoyanchev
f7478446b7
Improve Object return type support in WebFlux
...
Issue: SPR-15731
2017-07-04 08:19:50 -04:00
Brian Clozel
f63b0d720e
Update WebFlux reference documentation
...
Note that WebFlux and WebFlux.fn can be both used at the same time
thanks to the handler mapping registration in `@EnableWebFlux`.
Fixing typos in the reference documentation for outdated Reactor
operators.
2017-07-04 13:47:05 +02:00
Brian Clozel
baaa84e90f
Include port info in HTTP headers for Netty client
...
This commit adds the port information in the "Host" HTTP request header
for the Netty-based HTTP client.
Issue: SPR-15706
2017-07-04 12:13:06 +02:00
Sebastien Deleuze
7a171c6ae9
Fix Kotlin return types to match @Nullable annotations
2017-07-04 11:27:54 +02:00
Arjen Poutsma
de9196bbdc
Change from flatMap to map
...
Changed main tokenbuffer decoding loop from using flatMap to using map.
2017-07-04 10:51:43 +02:00
Brian Clozel
839b6c18d4
Optimize Flux pipeline in ClientHttpRequest
2017-07-04 10:11:56 +02:00
Arjen Poutsma
f8589d9eca
Return MultiValueMap from ServerRequest.queryParams instead of List
...
This commit changes ServerRequest.queryParams from returning a
List<String> given a String name, to returning a
MultiValueMap<String, String>, which gives more flexibility.
2017-07-03 16:23:33 +02:00
Arjen Poutsma
2ccbc55ffd
Use PathContainer in web.reactive.function.server
...
This commit uses the newly introduced `PathContainer` and `RequestPath`
support in the functional web framework. It exposes the path container
as property in `ServerRequest`, and uses that in the path-based
`RequestPredicates`.
2017-07-03 13:36:30 +02:00
Sebastien Deleuze
727ca4514a
Stream custom types in Jackson2JsonEncoder
...
Issue: SPR-15727
2017-07-03 10:25:59 +02:00
Sebastien Deleuze
9901c38f9d
Improve logging of DefaultCorsProcessor for rejected headers
...
Issue: SPR-15708
2017-07-03 09:47:43 +02:00
Sebastien Deleuze
1fa8410995
Leverage RFC_1123_DATE_TIME formatter in tests
...
Issue: SPR-15661
2017-07-02 22:33:43 +02:00
Sam Brannen
f790337880
Clean up warnings in spring-test
2017-07-02 21:28:39 +02:00
Rossen Stoyanchev
9528c3532d
Fix typo
2017-07-01 21:07:08 -04:00
Rossen Stoyanchev
15cf9c1d78
Switch to ContainerPath variants in HandlerMapping's
2017-07-01 20:05:17 -04:00
Rossen Stoyanchev
145eab9c2f
Remove PathMatchResultComparator
...
Follow-up change to the previous commit.
2017-07-01 17:27:54 -04:00
Rossen Stoyanchev
a5e54788cc
Remove PathPatternComparator
...
Direct comparison of a pattern (as a String) to the path does not make
much sense now that we deal with URL encoding through PathContainer
which exposes (safely) decoded path segments.
Removing the PathPatternComparator also means we can keep patterns
pre-sorted instead of sorting them all the time. That probably offsets
any benefits from comparing to the lookup path for direct matches and
patterns are still sorted according to specificity.
2017-06-30 18:19:35 -04:00
Rossen Stoyanchev
850083ca6c
Polish
2017-06-30 18:19:35 -04:00
Rossen Stoyanchev
8581afa621
WebFlux compiles after PathPattern/Container changes
2017-06-30 18:19:35 -04:00
Andy Clement
26448a0ebc
Rework matching to use PathContainer
2017-06-30 18:19:35 -04:00
Rossen Stoyanchev
fc3fcf05fd
Refactor PathSegmentContainer -> PathContainer
...
The new PathContainer represent the path as a series of elements
including separators. This naturally represents leading/trailing
slashes and empty path segments which in turn makes it easier to match
in PathPattern as well as to reconstruct the path.
2017-06-30 18:19:35 -04:00
Juergen Hoeller
6534359473
FactoryBean object cache cleared on shutdown
...
Issue: SPR-15722
2017-06-30 20:57:15 +02:00
Juergen Hoeller
9afce23845
WebSocketSession.getUri() may return null
...
Issue: SPR-15721
2017-06-30 20:56:21 +02:00
Arjen Poutsma
930f0f1760
Add ServerRequest.cookies()
...
This commit introduces a cookies() method on ServerRequest, returning a
MultiValueMap<String, HttpCookie>.
Issue: SPR-15715
2017-06-30 16:31:37 +02:00
Arjen Poutsma
621df7c978
Add ByteBuf leak detection @Rule
...
This commit introduces a JUnit rule that detects ByteBuf leaks in
subclasses of AbstractDataBufferAllocatingTestCase.
2017-06-30 10:52:00 +02:00
Juergen Hoeller
b33d8c6ade
Merge pull request #1467 from violetagg/deferred-result-handle-error
...
Polish - the flag continueProcessing is not needed
2017-06-30 10:33:39 +02:00
Violeta Georgieva
5f020d1ee7
Polish - the flag continueProcessing is not needed
2017-06-30 09:59:32 +03:00
Juergen Hoeller
5f4d1a4628
CronSequenceGenerator.isValidExpression actually validates cron fields
...
Issue: SPR-15604
2017-06-30 01:54:32 +02:00
Juergen Hoeller
cc74a2891a
@Nullable all the way: null-safety at field level
...
This commits extends nullability declarations to the field level, formalizing the interaction between methods and their underlying fields and therefore avoiding any nullability mismatch.
Issue: SPR-15720
2017-06-30 01:54:16 +02:00
Juergen Hoeller
c4694c3f5c
WebAsyncManager defensively ignores attribute type mismatch
...
Issue: SPR-15709
2017-06-30 01:53:30 +02:00
Juergen Hoeller
af69c5b6a9
Upgrade to AspectJ 1.9 beta 6
...
Issue: SPR-15686
2017-06-30 01:53:22 +02:00
Rossen Stoyanchev
8f4eb23540
Remove use of Optional in SyncHandlerMethodArgumentResolver
...
... and a couple more protected methods in WebFlux
Issue: SPR-15718
2017-06-29 17:19:48 -04:00
Rossen Stoyanchev
7de6cfa1df
Refactor WebSession#getAttribute options
...
Issue: SPR-15718
2017-06-29 15:23:36 -04:00
Rossen Stoyanchev
9253facf02
Refactor ServerWebExchange#getAttribute options
...
Issue: SPR-15718
2017-06-29 14:55:30 -04:00
Stephane Maldini
cd643704ad
Update to reactor core 3.1.0.B-S with context update for monoSendOperator
...
Explicit typing for older jvm compilation in BodyExtractor
2017-06-29 10:47:28 -07:00
Rossen Stoyanchev
67330dfc23
Expose mapped handler as an exchange attribute
...
Issue: SPR-15564
2017-06-29 13:18:39 -04:00
Arjen Poutsma
58a5e7f17b
Proper closing of resources
...
This commit introduces a `doFinally` block that properly signals the
end of input for the non-blocking XML and JSON parsers.
2017-06-29 16:48:53 +02:00
Arjen Poutsma
9d7b8503d0
Delay DataBuffer release until stream is closed
...
This commit changes the release of data buffers from a finally block
into a `doFinally()` lambda on the returned `Flux<XMLEvent>` stream.
Issue: SPR-15707
2017-06-29 16:19:03 +02:00
Stephane Nicoll
b1f06fddd2
Polish
...
Issue: SPR-14528
2017-06-29 10:26:50 +02:00
Arjen Poutsma
33f99910dd
Change spaces to tabs in build.gradle
2017-06-28 16:41:26 +02:00
Arjen Poutsma
31e0e53750
Leverage Jackson non-blocking parser
...
This commit introduces the Jackson2Tokenizer as a replacement for the
JsonObjectDecoder. The latter was dropped because of its complexity, and
hard dependency on Netty's ByteBuf.
The new Jackson2Tokenizer leverages the new non-blocking JSON parser,
using it to parse the incoming data buffers into TokenBuffers, each
token buffer representing one JSON object. As with JsonObjectDecoder,
it also supports streaming individual JSON array elements.
Issue: SPR-14528
2017-06-28 16:19:01 +02:00
Arjen Poutsma
b778f94a07
Made ObjectMapper field private with protected accessor
2017-06-28 16:19:01 +02:00
Rossen Stoyanchev
667437e300
Polish
2017-06-27 18:48:45 -04:00
Sebastien Deleuze
d728d597f2
Add missing license headers in Kotlin files
2017-06-27 14:39:26 +02:00
Juergen Hoeller
87430f3cd3
ListenableFuture provides CompletableFuture adaptation via completable()
...
Issue: SPR-15696
2017-06-27 00:43:37 +02:00
Juergen Hoeller
98642c7e29
Consistent ScriptTemplateView locale resolution via request
...
Issue: SPR-15064
2017-06-26 23:28:49 +02:00
Juergen Hoeller
41eaf03bc8
Compatibility with covariant return type on JDK 9's ByteBuffer
...
Issue: SPR-15686
2017-06-26 23:22:28 +02:00
Rossen Stoyanchev
cea1a0f1ca
Polish
2017-06-26 15:51:17 -04:00
Violeta Georgieva
9cb74b1399
Enable suspend/resume on reactive TomcatWebSocketSession
2017-06-26 15:39:02 -04:00
Rossen Stoyanchev
5b8f7f503f
Deprecate adapter classes for async interceptors
2017-06-26 15:34:51 -04:00
Rossen Stoyanchev
eb0479dee8
Polish
2017-06-26 14:50:11 -04:00
Violeta Georgieva
e0678ba583
Add onError callback to DeferredResult
...
Issue: SPR-15614
2017-06-26 14:12:56 -04:00
Juergen Hoeller
140542e8b1
Polishing
2017-06-26 18:59:17 +02:00
Juergen Hoeller
098ff6f0f8
Compatibility with JDK 9 release candidate build (175)
...
Includes upgrade to Objenesis 2.6, Gradle 3.5.1, RxJava 2.1.1, JSON Binding API 1.0 final.
Issue: SPR-15686
Issue: SPR-15600
2017-06-26 18:58:59 +02:00
Juergen Hoeller
155a1c6c71
AsyncHandlerInterceptor.afterConcurrentHandlingStarted declared as default method
...
Issue: SPR-15702
2017-06-26 18:58:39 +02:00
Sebastien Deleuze
ba3a12e4cc
Use fixed GMT time-zone for WebSession Clock
...
Issue: SPR-15675
2017-06-26 18:01:21 +02:00
Rossen Stoyanchev
043c0eff4f
Same session after mutate for WebTestClient mock server
...
Issue: SPR-15674
2017-06-23 19:19:14 -04:00
Sebastien Deleuze
d57cd37266
Upgrade to Kotlin 1.1.3
...
This commit also enables Kotlin build with JDK 9 since this new
version supports it.
2017-06-24 01:13:22 +02:00
Rossen Stoyanchev
97390fd939
Polish
2017-06-23 17:05:57 -04:00
Rossen Stoyanchev
12850c5fc4
Fix test failure by using the new cloneBuilder method
...
The cloneBuilder helps to avoid the issue in the comment of the ticket.
Rather than creating the WebClient to then obtain a fresh builder which
causes connector instantiation, we now use the cloneBuilder
Issue: SPR-15674
2017-06-23 16:22:10 -04:00
Brian Clozel
8ac29c8ce7
Add cloneBuilder method on WebClient.Builder
...
This commit adds a new `cloneBuilder()` method on `WebClient.Builder`;
we can now reuse the customizations of an existing builder without
sharing its state across several `WebClient` building code paths.
Issue: SPR-15690
2017-06-23 16:16:23 -04:00
Rossen Stoyanchev
8fc3b3bc37
Add WebTestClientConfigurer
...
Issue: SPR-15674
2017-06-23 14:45:46 -04:00
Rossen Stoyanchev
4db0ce12e1
Add MockServerConfigurer to WebTestClient
...
Issue: SPR-15674
2017-06-23 10:46:59 -04:00
Rossen Stoyanchev
c37c59f578
Consumer methods for WebHttpHandlerBuilder
...
Replace the more limited List-based methods to add filtes and exception
handlers with Consumer<List<?>> variants.
2017-06-23 07:12:10 -04:00
Rossen Stoyanchev
782c595cf7
Polish
2017-06-22 18:33:27 -04:00
Eko Kurniawan Khannedy
ac68cc35c2
Ordered WebMvcConfigurer interceptor registrations
...
Issue: SPR-15620
2017-06-22 18:33:27 -04:00
Sebastien Deleuze
5c1d8c7c59
Leverage ZonedDateTime in HttpHeaders
...
This commit introduces 2 new public methods in HttpHeaders in order
to leverage Java 8 ZonedDateTime in addition to the existing long
(with GMT time zone implied) variants:
- ZonedDateTime getFirstZonedDateTime(String headerName)
- void setZonedDateTime(String headerName, ZonedDateTime date)
This commit also leverages Java 8 thread-safe DateTimeFormatter for
HttpHeader implementation instead of SimpleDateFormat. As a consequence
of the usage of DateTimeFormatter.RFC_1123_DATE_TIME, HTTP date header
serialization could change slightly for single digit days from for
example "Thu, 01 Jan 1970 00:00:00 GMT" to
"Thu, 1 Jan 1970 00:00:00 GMT".
Issue: SPR-15661
2017-06-23 00:15:51 +02:00
Arjen Poutsma
4f39edc905
Fix initialization issue with headers in DefaultWebClient
...
This commit fixes a lazy initialization issue in
`headers(Consumer<HttpHeaders>)`.
Issue: SPR-15657
2017-06-21 15:48:48 +02:00
Arjen Poutsma
0a4d3c14db
Jackson2JsonDecoder should support empty JSON array
...
Before this commit, the Jackson2JsonDecoder was not able to decode an
empty JSON array (`[]`). After this commit, it is.
Issue: SPR-15685
2017-06-21 11:14:34 +02:00
Sebastien Deleuze
1e04cdfa7e
Add CorsWebFilter
...
This new WebFilter implementation is designed to allow initial
CORS support when using WebFlux functional API. More high-level
API may be introduced later.
Issue: SPR-15567
2017-06-21 10:50:09 +02:00
Sebastien Deleuze
59e90943e4
Rename CorsProcessor#processRequest to process
2017-06-21 10:50:09 +02:00
Rob Winch
f092ae567b
Conditionally apply Kotlin if not using JDK 9
...
Kotlin does not yet work with JDK 9, so we need to disable the Kotlin
plugin if we are using JDK 9.
2017-06-20 14:35:55 -05:00
Juergen Hoeller
03133630cb
Missing @Nullable annotations in WebFlux, in particular around locale resolution
...
Issue: SPR-15036
Issue: SPR-15540
2017-06-20 18:08:42 +02:00
Arjen Poutsma
a95cf07317
Add WebTestClient.mutate()
...
This commit introduces a WebTestClient.mutate() method,
returning a WebTestClient.Builder.
Issue: SPR-15657
2017-06-20 17:11:52 +02:00
Juergen Hoeller
535103cd52
Fine-tune HTTP/RMI Invoker exception handling
...
Issue: SPR-15684
2017-06-20 16:50:35 +02:00
Juergen Hoeller
c244f33f84
Polishing
2017-06-20 16:50:02 +02:00
Arjen Poutsma
3b1d46b3ba
Polishing
2017-06-20 16:34:09 +02:00
Arjen Poutsma
50fc8f4e32
Support Void response body type in WebClient
...
This commit adds support for Void response body types in the WebClient,
both when using `exchange` with a response.bodyToMono(Void.class), as
well as using `retrieve` with `toEntity(Void.class)`.
Issue: SPR-15679
2017-06-20 16:30:37 +02:00
Arjen Poutsma
4a0597d612
Replace WebClient.filter with Builder.filter
...
This commit replaces the WebClient.filter method with
WebClient.Builder.filter. The reason for this change is that filters
added via WebClient.filter would be applied in the opposite order of
their declaration, due to the compositional nature of the method,
combined with the immutable nature of the WebClient.
WebClient.Builder.filter does keep the order of the filters, as
registered.
Furthermore, this commit introduces a WebClient.mutate() method,
returning a WebClient.Builder. This method allow to add/remove filters
and other defaults from a given WebClient.
Issue: SPR-15657
Add WebClient.Builder.addFilter
Add Consumer-based headers and cookies methods to builders.
Add WebClient.mutate
2017-06-20 14:25:52 +02:00
Brian Clozel
52148a10b7
Consistently use CodecConfigurer for configuration
...
This commit changes the `ExchangeStrategies` and `HandlerStrategies`
interfaces to consistently use the `CodecConfigurer` (and
sub-interfaces) for configuring codecs on the server and on the client.
Issue: SPR-15682
2017-06-19 18:42:37 +02:00
Juergen Hoeller
018cc45483
Upgrade to Groovy 2.5 beta 1
...
Includes latest dependency updates (Commons FileUpload 1.3.3, OkHttp 3.8.1, XStream 1.4.10)
Issue: SPR-15407
2017-06-19 12:28:09 +02:00
Stephane Nicoll
0e87a346ac
Merge pull request #1461 from freeman0432:master
...
* pr/1461:
Fix a missing line of xml fragment
2017-06-17 10:33:28 +02:00
freeman0432
b14df2b6ea
Fix a missing line of xml fragment
...
Closes gh-1461
2017-06-17 10:33:08 +02:00
Sebastien Deleuze
a2e555d749
Upgrade to Jackson 2.9.0.pr4
...
Issue: SPR-15548
2017-06-17 09:37:28 +02:00
Sebastien Deleuze
38db64e0d8
Warn when Jackson + Kotlin are used without jackson-module-kotlin
...
Issue: SPR-15658
2017-06-17 00:07:59 +02:00
Juergen Hoeller
efb735aa99
SimpleRequestExpectationManager properly handles sequential requests with different count
...
Issue: SPR-15672
2017-06-16 13:32:43 +02:00
Sebastien Deleuze
d5f9ad03a7
Support ScriptEngine#eval(String, Bindings) in ScriptTemplateView
...
Supporting ScriptEngine#eval(String, Bindings) when no render function
is specified allows to support use cases where script templates are
simply evaluating a script expression with an even more simplified
configuration.
This improvement also makes it possible to use script engines that
do not implement Invocable.
Issue: SPR-15115
2017-06-16 10:38:59 +02:00
Juergen Hoeller
7e251274ee
Consistent nullability of headers Map and MessagePostProcessor
...
Issue: SPR-15670
2017-06-15 22:45:06 +02:00
Rossen Stoyanchev
4a21fb27fc
Fix root path test and add more test cases
2017-06-15 16:14:12 -04:00
Rossen Stoyanchev
67e482aaf8
Fix ROOT_PATH constant to match recent changes
...
"/" should be 0 segments, isAbsolute=true, hasTrailingSlash=false
2017-06-15 15:40:32 -04:00
Rossen Stoyanchev
ef3e309c12
Adjust timeout in Spring MVC for reactive streaming
...
Issue: SPR-15669
2017-06-15 13:11:59 -04:00
Rossen Stoyanchev
53e8ebe6a6
Fix failing test (after previous commit)
2017-06-15 11:07:39 -04:00
Rossen Stoyanchev
97917aa57d
Add PathSegmentContainer subPath extracting method
2017-06-14 17:44:56 -04:00
Rossen Stoyanchev
1018bf771b
Separate DefaultRequestPath/DefaultPathSegmentContainer
2017-06-14 17:44:56 -04:00
Rossen Stoyanchev
97a97f9bba
RequestPath improvements
...
Static parse methods on PathSegmentContainer and PathSegment plus:
isEmpty() on PathSegmentContainer and PathSegment
isAbsolute() and hasTrailingSlash() on PathSegmentContainer
char[] alternative for valueDecoded() on PathSegment
2017-06-14 17:44:56 -04:00
Juergen Hoeller
7b5f96c804
HttpComponentsAsyncClientHttpRequestFactory supports plain HttpAsyncClient as well
...
Issue: SPR-15664
2017-06-14 17:10:44 +02:00
Juergen Hoeller
137fc48cc2
Polishing
2017-06-13 20:59:26 +02:00
Sebastien Deleuze
04d5a2951c
Remove KClass based Kotlin extensions
...
Issue: SPR-15660
2017-06-13 18:43:59 +02:00
Rob Winch
223315f96b
Update to SonarQube 2.5
2017-06-13 09:30:50 -05:00
Stephane Nicoll
5e4e3fbe8b
Merge pull request #1459 from diguage:lambda-map
...
* pr/1459:
Polish "Refactor iterator of Map with Java8's Map.forEach"
Refactor iterator of Map with Java8's Map.forEach
2017-06-13 16:06:47 +02:00
Stephane Nicoll
1ab678a2a3
Polish "Refactor iterator of Map with Java8's Map.forEach"
...
Closes gh-1459
2017-06-13 16:06:20 +02:00
diguage
1ef5f61ab2
Refactor iterator of Map with Java8's Map.forEach
...
See gh-1459
2017-06-13 16:06:20 +02:00
Arjen Poutsma
7018804e84
ServerRequest.path() should return raw path
...
After this commit, ServerRequest.path() returns the raw, unencoded path,
as that is expected by the PathPatternParser.
2017-06-13 15:23:46 +02:00
Sebastien Deleuze
97909f2258
Support date properties in Content-Disposition HTTP header
...
Issue: SPR-15555
2017-06-13 15:17:48 +02:00
Sebastien Deleuze
e0e6736bc5
Introduce LocaleContextResolver in WebFlux
...
This commit introduces LocaleContextResolver interface, which is used
at ServerWebExchange level to resolve Locale, TimeZone and other i18n
related informations.
It follows Spring MVC locale resolution patterns with a few differences:
- Only LocaleContextResolver is supported since LocaleResolver is less
flexible
- Support is implemented in the org.springframework.web.server.i18n
package of spring-web module rather than in spring-webflux in order
to be able to leverage it at ServerWebExchange level
2 implementations are provided:
- FixedLocaleContextResolver
- AcceptHeaderLocaleContextResolver
It can be configured with both functional or annotation-based APIs.
Issue: SPR-15036
2017-06-13 15:10:18 +02:00
Juergen Hoeller
72a8868f84
FreeMarker macros based on HTML output format (requires FreeMarker 2.3.24+)
...
Issue: SPR-14740
2017-06-13 14:21:09 +02:00
Juergen Hoeller
a0cea9a86f
Polishing
2017-06-13 14:20:33 +02:00
Sebastien Deleuze
aa28b6cb54
Upgrade to Kotlin 1.1.2-5
...
Changelog: https://github.com/JetBrains/kotlin/releases/tag/v1.1.2-5
2017-06-13 12:22:52 +02:00
Juergen Hoeller
779deb0fa7
Cleanup of duplicate semicolons
...
Issue: SPR-15654
2017-06-13 11:38:05 +02:00
Juergen Hoeller
7dd8dc62a5
Fixes for ignored tests after last week's nullability commit
...
Issue: SPR-15540
2017-06-13 11:37:58 +02:00
Stephane Nicoll
58242f2249
Polish
2017-06-13 10:13:14 +02:00
Stephane Nicoll
40df48fd95
Merge pull request #1454 from diguage:lambda
...
* pr/1454:
Polish "Replace relevant code with lambda"
Replace relevant code with lambda
2017-06-13 10:09:57 +02:00
Stephane Nicoll
fc64b8040f
Polish "Replace relevant code with lambda"
...
Closes gh-1454
2017-06-13 09:42:20 +02:00
diguage
4b1478d830
Replace relevant code with lambda
...
See gh-1454
2017-06-13 08:55:38 +02:00
Juergen Hoeller
738160538e
TargetSource.getTarget() is nullable again (for compatibility with MethodInvocation.getThis)
...
Issue: SPR-15651
2017-06-13 03:11:36 +02:00
Juergen Hoeller
47ec966757
TargetSource.getTarget() is nullable again (for compatibility with MethodInvocation.getThis)
...
Issue: SPR-15651
2017-06-12 22:54:18 +02:00
Brian Clozel
233c15b80e
Add PathPatternRegistry for handler mapping matching
...
Previously `HandlerMapping` implementation were heavily relying on
`String` path patterns, `PathMatcher` implementations and dedicated maps
for matching incoming request URL to an actual request handler.
This commit adds the `PathPatternRegistry` that holds `PathPattern`
instances and the associated request handler — matching results are then
shared as `PathMatchResult` instances. `AbstractUrlHandlerMapping` will
use this registry directly, but other components dealing with request
matching (like `PatternsRequestCondition`) will directly use ordered
`PathPattern` collections since ordering is important there.
This opens the door for faster request matching and simplifies the
design of this part.
Issue: SPR-15608
2017-06-12 18:53:05 +02:00
Brian Clozel
1f0d107d37
Enable trailing slash matching by default
...
This commit enables trailing slash matching in `PathPatternParser` by
default - this mirrors the default configuration in `PathMatcher`
implementations in MVC.
2017-06-12 16:17:18 +02:00
Juergen Hoeller
3ae84d6dd8
Consistent support for Charset/StandardCharsets in UriUtils etc
...
Issue: SPR-15613
2017-06-12 15:51:45 +02:00
Juergen Hoeller
14161d1dbf
Protected applyLifecycleMethods in UrlBasedViewResolver
...
Issue: SPR-15219
2017-06-12 15:48:59 +02:00
Juergen Hoeller
6320976669
Latest dependency updates (H2 1.4.196, Apache JSTL 1.2.5, HtmlUnit 2.27)
2017-06-12 15:27:57 +02:00
Stephane Nicoll
aca5eb7393
Merge pull request #1449 from diguage:dev
...
* pr/1449:
Polish "Use Map#forEach instead of Map#entrySet#forEach"
Use Map#forEach instead of Map#entrySet#forEach
2017-06-12 14:37:52 +02:00
Stephane Nicoll
451b419624
Polish "Use Map#forEach instead of Map#entrySet#forEach"
...
Closes gh-1449
2017-06-12 14:37:33 +02:00
diguage
2efa06237a
Use Map#forEach instead of Map#entrySet#forEach
...
See gh-1449
2017-06-12 14:37:33 +02:00
Arjen Poutsma
424bc75fb1
Remove headers(HttpHeaders)
...
This commit removes the headers(HttpHeaders) method on ClientRequest and
ServerResponse, in favor of headers(Consumer<HttpHeaders>), which is
more flexible.
2017-06-12 14:14:40 +02:00
Arjen Poutsma
9bf82dc18f
Add addAll(MultiValueMap)
...
This commit introduces a new method for MultiValueMap: addAll, which
adds all values of a given map (cf putAll, which replaces existing
values).
2017-06-12 14:12:12 +02:00
Arjen Poutsma
7085a30382
Improve capacity calculcation in DefaultDataBuffer
...
This commit improves the capacity calculation for the DefaultDataBuffer,
so that the capacity typically doubles instead of improving by the
minimal required amount.
Issue: SPR-15647
2017-06-12 11:04:19 +02:00
Sebastien Deleuze
3373a3f7ef
Add Kotlin extensions for WebTestClient API
...
Issue: SPR-15622
2017-06-12 10:42:56 +02:00
Stephane Nicoll
a665da415a
Merge pull request #1450 from diguage:diamond
...
* pr/1450:
Use the diamond syntax
2017-06-12 09:19:22 +02:00
diguage
c1d44d9a34
Use the diamond syntax
...
Closes gh-1450
2017-06-12 09:19:06 +02:00
Stephane Nicoll
ca1e682dc4
Merge pull request #1451 from diguage:lambda-map
...
* pr/1451:
Polish "Refact iterator of Map with Java 8 forEach"
Refact iterator of Map with Java 8 forEach
2017-06-12 08:58:33 +02:00
Stephane Nicoll
27aabb15f9
Polish "Refact iterator of Map with Java 8 forEach"
...
Closes gh-1451
2017-06-12 08:53:56 +02:00
diguage
dab7a7f0ee
Refact iterator of Map with Java 8 forEach
...
See gh-1451
2017-06-12 08:11:32 +02:00
Stephane Nicoll
5df053c44b
Merge pull request #1455 from diguage:editor-config
...
* pr/1455:
Add EditorConfig
2017-06-12 08:08:14 +02:00
diguage
d33764353e
Add EditorConfig
...
Closes gh-1455
2017-06-12 08:07:54 +02:00
Rossen Stoyanchev
38a12ed4ba
Expose RequestPath in ServerHttpRequest
...
The new structured getPath() method replaces the existing
getContextPath() + getPathWithinApplication().
Issue: SPR-15648
2017-06-11 21:59:24 -04:00
Rossen Stoyanchev
2d17411ec4
Add RequestPath to http/server/reactive
...
Issue: SPR-15648
2017-06-11 21:59:24 -04:00
Juergen Hoeller
e2e0410570
Method-level javadoc on XmlReaderContext etc
2017-06-11 12:03:05 +02:00
Juergen Hoeller
f43ea96dd9
Upgrade to Apache Johnzon 1.1.1
...
Issue: SPR-15590
2017-06-11 12:02:57 +02:00
Rossen Stoyanchev
01a92517bd
Refactor RequestedContentTypeResolverBuilder
...
The revised builder emphasizes creating a list of resolvers either
built-in or custom with each top-level builder method resulting in
adding a resolver.
By default only the Header resolver is configured.
The path extension resolver is removed altogether to discourage its use
but is trivial to create manually with the helpf of
UriUtils#extractFileExtension + MediaTypeFactory.
Issue: SPR-15639
2017-06-09 16:15:38 -04:00
Rossen Stoyanchev
b0e8e7f536
Refactor MappingContentTypeResolver implementations
...
After the removal of suffix pattern matches, there is no longer a need
to expose the list of registered file extensions.
Also polish, refactor, and simplify the abstract base class
AbstractMappingContentTypeResolver and its sub-classes.
Issue: SPR-15639
2017-06-09 16:15:38 -04:00
Rossen Stoyanchev
cb604738cf
ResourceWebHandler uses MediaTypeFactory directly
...
There is no need for ResourceWebHandler to go through the
PathExtensionContentTypeResolver when MediaTypeFactory makes it easy to
perform such lookups for a given Resource.
This does not support any extensions explicitly registered through a
WebFluxConfigurer but it would be easy enough to pass those into
ResourceWebHandler as a simple Map<String, MediaType>, should the need
arise.
Issue: SPR-15639
2017-06-09 16:15:38 -04:00
Rossen Stoyanchev
b65bfdb979
Remove HttpRequestPathHelper
...
The use of the undecoded URL path by default and the removal of suffix
pattern matching effectively means HttpRequestPathHelper is no longer
needed.
Issue: SPR-15640, SPR-15639
2017-06-09 16:15:38 -04:00
Rossen Stoyanchev
95196e1aee
Use undecoded pathWithinApplication in WebFlux
...
Introduce pathWithinApplication() in ServerHttpRequest and use it for
request mapping purposes instead of LookupPath.
In turn this means that for request mapping purposes:
1) the path is not decoded
2) suffix pattern matching is not supported
Issue: SPR-15640
2017-06-09 16:15:38 -04:00
Andy Clement
ff2af660cf
PathPatternParser encodes patterns as it parses them
...
Before this commit there was no special handling for URL encoding
of the path pattern string coming into the path pattern parser. No
assumptions were made about it being in an encoded form or not.
With this change it is assumed incoming path patterns are not
encoded and as part of parsing the parser builds PathPattern
objects that include encoded elements. For example parsing "/f o"
will create a path pattern of the form "/f%20o". In this form
it can then be used to match against encoded paths.
Handling encoded characters is not trivial and has resulted in
some loss in matching speed but care has been taken to
avoid unnecessary creation of additional heap objects. When
matching variables the variable values are return in a
decoded form. It is hoped the speed can be recovered, at least
for the common case of non-encoded incoming paths.
Issue: SPR-15640
2017-06-09 13:08:07 -07:00
Juergen Hoeller
c0550f7eb6
Documented AbstractBeanFactory nullability warning
...
Issue: SPR-15540
2017-06-09 20:46:15 +02:00
Juergen Hoeller
a1ce3244b0
Latest dependency updates (EclipseLink 2.6.5 RC2, JSON-B 1.0 RC2, Gson 2.8.1, Jetty 9.4.6, Netty 4.1.12)
2017-06-09 20:43:15 +02:00
Rob Winch
b1345014b9
Update to Reactor Bismuth-M2
...
Issue: SPR-15646
2017-06-09 09:49:31 -05:00
Arjen Poutsma
5e954dcba0
Use ParameterizedTypeReference in public-facing WebFlux APIs
...
This commit changes the use of `ResolvableType` to
`ParameterizedTypeReference` in all public-facing WebFlux APIs. This
change removes the necessity for providing the parameterized type
information twice: once for creating the `ResolvableType`, and once for
specifying a `BodyExtractor`.
Issue: SPR-15636
2017-06-09 13:29:15 +02:00
Sebastien Deleuze
b6c09fa76a
Disambiguate BodyExtractors/Inserters Kotlin function names
2017-06-09 01:51:28 +03:00
Sebastien Deleuze
86580b2358
Polishing
2017-06-09 01:49:56 +03:00
Sebastien Deleuze
736bf1c502
Fix Kotlin dependencies
...
Avoid importing Kotlin 1.0.x from Mockito Kotlin and only depends on
kotlin-stdlib instead of kotlin-stdlib-jre8 since we don't use
additional jre7 or jre8 API.
2017-06-09 01:24:47 +03:00
Sebastien Deleuze
8579ae66fc
Add comprehensive tests of Kotlin extensions
...
This commit also removes extensions hidden by Java API (varargs).
2017-06-09 01:01:16 +03:00
Juergen Hoeller
fd53d2a51a
Consistent use of @Nullable in spring-test
...
This commit also removes nullability from two common spots: ResolvableType.getType() and TargetSource.getTarget(), both of which are never effectively null with any regular implementation. For such scenarios, a non-null empty type/target is the cleaner contract.
Issue: SPR-15540
2017-06-08 22:52:59 +02:00
Juergen Hoeller
ee5fa2633a
Protect against null return value from DataSource.getConnection()
...
Issue: SPR-15641
2017-06-08 22:51:41 +02:00
Arjen Poutsma
bf66f45283
Support overriding, removing headers in ClientRequest
...
This commit adds two Consumer based methods to ClientRequest that allow
for direct manipulation of the underlying headers or cookies map. As
such, these methods can be used to override or remove existing entries.
Issue: SPR-15635
2017-06-08 14:00:39 +02:00
Juergen Hoeller
e6f1950952
Missing @Nullable annotations for findAnnotation/getValue/getDefaultValue
...
Note that synthesizeAnnotation has an assertion now, keeping its non-null policy.
Issue: SPR-15642
2017-06-08 10:35:54 +02:00
Phillip Webb
72cd24446d
Make resolvePropertyName available to subclasses
...
Change `SystemEnvironmentPropertySource.resolvePropertyName` to a
protected final method so that subclasses may call it.
Issue: SPR-15617
2017-06-07 17:03:31 -07:00
Phillip Webb
c675424189
Restore AnnotationUtils null argument support
...
Update AnnotationUtils to restore support for `null` arguments in
certain methods. Some existing upstream projects were relying on this
behavior.
Issue: SPR-15642
2017-06-07 16:59:24 -07:00
Juergen Hoeller
7eaedf2916
Debug-level log entry for any Jackson exception during canConvert
...
Issue: SPR-15582
2017-06-07 18:33:19 +02:00
Juergen Hoeller
55b0fe1027
Unwrap SpringValidatorAdapter (e.g. CustomValidatorBean) to native Validator
...
Issue: SPR-15629
(cherry picked from commit 8330134 )
2017-06-07 18:33:13 +02:00
Arjen Poutsma
510436bae9
Copy header values instead of header lists in DefaultClientRequestBuilder
...
This commit changes the `headers(HttpHeaders)` method in
DefaultClientRequestBuilder so that it copies the individual header
values instead of using the `List<String>` value directly. The reason
for this change is that the list of values can be immutable, and adding
additional values after that could result in
UnsupportedOperationExceptions.
2017-06-07 17:55:51 +02:00
Juergen Hoeller
a0bce618c2
Latest dependency updates (Undertow 1.4.16, Caffeine 2.5.2, JavaMail 1.6 RC2)
2017-06-07 14:19:58 +02:00
Juergen Hoeller
f813712f5b
Consistent use of @Nullable across the codebase (even for internals)
...
Beyond just formally declaring the current behavior, this revision actually enforces non-null behavior in selected signatures now, not tolerating null values anymore when not explicitly documented. It also changes some utility methods with historic null-in/null-out tolerance towards enforced non-null return values, making them a proper citizen in non-null assignments.
Some issues are left as to-do: in particular a thorough revision of spring-test, and a few tests with unclear failures (ignored as "TODO: NULLABLE") to be sorted out in a follow-up commit.
Issue: SPR-15540
2017-06-07 14:19:15 +02:00
Stephane Nicoll
ffc3f6d87d
Merge pull request #1445 from diguage:dev
...
* pr/1445:
Polish "Refactor duplicated code"
Refactor duplicated code
2017-06-04 13:06:26 +02:00
Stephane Nicoll
6e3a9cbbb4
Polish "Refactor duplicated code"
...
Closes gh-1445
2017-06-04 13:06:09 +02:00
diguage
5288641c50
Refactor duplicated code
...
See gh-1445
2017-06-04 13:01:03 +02:00
Stéphane Nicoll
a1a6157fb1
Merge pull request #1444 from diguage/dev
...
Fix reference
2017-06-03 15:20:28 +02:00
diguage
eae63786c2
Fixed reference
2017-06-03 15:19:36 +08:00
Andy Clement
77576ed6fe
Fix PathPattern comparator result for wildcard suffix usage
...
Without this change the comparator thinks "/{foo}"
is more specific than "/{foo}.*". The minimal fix here
to address it is to copy what the AntPathMatcher
comparator does which is to consider '.*' as *not*
a usage of a wildcard. See PatternInfo#initCounters()
for the AntPathMatcher handling of this.
This change ensures the PathPattern comparator now produces
the expected result but suffix usage in general needs more
thought at some point.
Issue: SPR-15597
2017-06-02 15:40:16 -07:00
Rossen Stoyanchev
4244df740b
Consolidate matrix vars parsing in HttpRequestPathHelper
...
Restore matrix variable parsing code not resorting to the use of
WebUtils which brings Servlet API dependencies with it.
Instead the parsing logic is now exposed through HttpRequestPathHelper
which already contained the decoding logic and also the knowledge of
whether to decode the parsed variables or not.
Issue: SPR-15397
2017-06-02 15:52:44 -04:00
Rossen Stoyanchev
d2685dfe67
Add static factory/accessor methods to LookupPath
...
Issue: SPR-15397
2017-06-02 15:15:42 -04:00
Rossen Stoyanchev
a7020e419a
Polish use of LookupPath
2017-06-02 14:46:34 -04:00
Sebastien Deleuze
90df7dd279
Add missing @Nullable annotation
...
Issue: SPR-15540
2017-06-02 14:16:19 +02:00
Brian Clozel
74fb2645fd
Fix LookupPath parsing
...
Issue: SPR-15397
2017-06-02 09:26:35 +02:00
Rossen Stoyanchev
4d52590964
Improve docs on forwarded headers
...
Issue: SPR-15612
2017-06-01 22:36:12 -04:00
Rossen Stoyanchev
895fa2ea7b
Add removeOnly mode to ForwardedHeaderFilter
...
Issue: SPR-15610
2017-06-01 15:39:19 -04:00
Brian Clozel
cf1bc81199
Introduce LookupPath in WebFlux request routing
...
This commit adds the `LookupPath` class that contains the full
request path relative to the web context; the application can
get from it various information, including the file extension
and path parameters (if any).
Since that operation is done multiple times for each request, this
object is stored as an attribute at the `ServerWebExchange` level.
Issue: SPR-15397
2017-06-01 18:31:04 +02:00
Brian Clozel
0557404715
Throw exception for illegal PathMatch configurations
...
With the new `ParsingPathMatcher` implementation, new patterns are now
allowed, such as `"/foo/{*bar}". The `"{*bar}"` segment will capture
everything until the end of the given path. Adding other elements after
that segment is illegal and will throw exceptions.
One can configure on a `PathMatchConfigurer` various options like
`useTrailingSlashMatch` and `useSuffixPatternMatch`; those options, when
enabled, will try to append suffixes like `".*"` and `"/"` to existing
path patterns. In case of a "capture the rest" pattern segment, those
options won't be honored.
This is why this commit ensures that an exception is thrown at the start
of the application if an illegal configuration is applied to the
`PathMatchConfigurer`.
Issue: SPR-15303, SPR-15558
2017-06-01 18:30:18 +02:00
Arjen Poutsma
8ea54270e1
Allow for null query parameter values in ServerRequest
...
With this commit, ServerRequest allows for `null` values in query
parameters, treating them as empty values instead.
Issue: SPR-15609
2017-06-01 18:00:54 +02:00
Rossen Stoyanchev
b93579a43e
Polish
2017-06-01 09:28:55 -04:00
Violeta Georgieva
e8d2c6c74b
AbstractListenerWriteProcessor/AbstractListenerWriteFlushProcessor error handling
...
When an exception happens while writing/flushing, the exception handling
for Servlet 3.1 based implementation will happen when
WriteListener#onError and AsyncListener#onError events are received
2017-06-01 09:19:45 -04:00
Violeta Georgieva
23a052c160
Clear the buffer provided by Undertow before reading the request
...
When reading more that once for a given request, the position/limit of
the buffer provided by Undertow should be reset in order to use the
full capacity of the buffer.
2017-06-01 15:14:25 +03:00
Arjen Poutsma
8504084553
Add package-info.java to mock.web.reactive.function.server
2017-06-01 12:37:42 +02:00
Arjen Poutsma
7894efdd1e
Allow for null values in ExtractingResponseErrorHandler.hasError
...
This commit fixes the implementation of
ExtractingResponseErrorHandler.hasError to allow for null values,
indicating an override of the behavior inherited from
DefaultResponseErrorHandler.
Issue: SPR-15544
2017-06-01 11:44:08 +02:00
Rossen Stoyanchev
d3e3365990
Merge pull request #1439 from dreis2211/SPR-15602
2017-05-31 22:46:09 -04:00
Rossen Stoyanchev
4a3f6e4546
Polish
2017-05-31 22:43:25 -04:00
Christoph Dreis
0ef1623643
Optimize DefaultUserDestinationResolver.resolveDestination()
...
Issue: SPR-15602
2017-05-31 22:37:42 -04:00
Kazuki Shimizu
1412c2c577
Fix sample code in WebFlux chapter
2017-05-31 22:05:38 -04:00
QBNemo
94618c4f37
Polish doc on RequestMappingHandlerMapping#isHandler
2017-05-31 21:25:44 -04:00
Rossen Stoyanchev
e81651b657
Ignore empty Accept-Language header value
...
Issue: SPR-15603
2017-05-31 21:10:08 -04:00
Sebastien Deleuze
b494c53b40
Avoid defining nullability for non-relevant API
...
Defining nullability of some API like EnvironmentCapable
or ConditionContext causes issues in Spring Boot because
in the context where they are used, it is known for sure
they will return non-null values even if their API can in
other context return null values.
It is better in this case for both Java and Kotlin to
not define at all the nullabity of such API.
In practice, this is achieved by removing the package level
@NonNullApi annotation and adding it only on the
relevant classes.
Issue: SPR-15540
2017-05-31 22:51:33 +02:00
Sebastien Deleuze
1f28825f9d
Add more @Nullable parameters based on null usage
...
Issue: SPR-15540
2017-05-31 21:42:23 +02:00
Gary Russell
f9b319d3ba
Revert Incorrect MessagingTemplate Change
...
The change to "optimize" the template by not rebuilding the reply
message when the original header channels was null was incorrect.
We need to null out those headers if they were originally null.
Issue: SPR-15991
2017-05-31 15:12:46 -04:00
Sebastien Deleuze
c3e6afb879
Improve null-safety to fix some Spring Boot warnings
...
Issue: SPR-15540
2017-05-31 17:14:49 +02:00
Sebastien Deleuze
b47d713e14
Add missing @Nullable annotations on parameters
...
Issue: SPR-15540
2017-05-31 16:56:08 +02:00
Sebastien Deleuze
ad2c0f8410
Improve @Nullable annotation
...
This commit makes Spring @Nullable annotation leveraging
JSR 305 @TypeQualifierNickname + @Nonnull(when= When.MAYBE)
instead of directly using @javax.annotation.Nullable which
seems not designed to be used as a meta-annotation.
It also removes @TypeQualifierDefault since the purpose of
this annotation when applied at method level is to only
change return value nullability, not parameters one.
Issue: SPR-15540
2017-05-31 16:56:08 +02:00
Rossen Stoyanchev
abcc4ac979
Fix composability issue in ExchangeMutatorWebFilter
...
This commit replaces the UnaryOperatory<ServerWebExchange> inputs with
Function<ServerWebExchange, ServerWebExchange> instead. Unfortunately
the composability methods inherited from Function don't work in terms
of generics for composing multiple UnaryOperator's.
Issue: SPR-15599
2017-05-31 09:30:04 -04:00
Gary Russell
e06c4d5116
Timeout Overrides in Messaging Templates
...
Provide a mechanism to override the configured send and receive
timeouts in the GenericMessagingTemplate.
- overload `doReceive()` to take a receive timeout argument
- for `sendAndReceive()` methods examine message headers for these
timeout values
- remove headers to avoid propagation
- avoid the unconditional rebuild of the reply message if the
original headers weren't present
- also remove headers from simple `send()` operations
- change javadocs for the setters to indicate they are now defaults
- add properties to allow the user to override the header names used
- change `TemporaryReplyChannel` to use `send` arg and change to static
- add package-protected ctor to avoid the compiler creating a
synthetic constructor for access
Issue: SPR-15591
2017-05-30 17:03:46 -04:00
Rossen Stoyanchev
5dcfd84d3b
MockServerHttpRequest and Response set cookie headers
...
Issue: SPR-15522
2017-05-30 11:00:15 -04:00
Rossen Stoyanchev
67bcef22e4
Polish MockServerHttpRequest|Response
2017-05-30 11:00:15 -04:00
Arjen Poutsma
4b0dedc45e
Add ExtractingResponseErrorHandler
...
This commit introduces ExtractingResponseErrorHandler: an alternative
ResponseErrorHandler that uses `HttpMessageConverter`s to convert HTTP
error responses to `RestClientException`.
Issue: SPR-15544
2017-05-30 13:17:25 +02:00
Stephane Nicoll
beb7ed9715
Polish
...
Issue: SPR-15592
2017-05-29 17:04:10 +02:00
Arjen Poutsma
42d1ba080d
Copy MockServerRequest to spring-test
...
This commit copies the MockServerRequest to the spring-test module, in
the mock.web.reactive.function.server package.
Issue: SPR-15530
2017-05-29 10:16:55 +02:00
Sam Brannen
76b28a0cec
Fix grammatical errors in Testing chapter
2017-05-28 14:28:57 +02:00
Rossen Stoyanchev
1383ad5f91
Reasonable defaults for MultipartHttpMessageWriter
...
MultipartHttpMessageWriter is now configured to handle JSON and XML
out of the box.
2017-05-27 20:41:07 -04:00
Rossen Stoyanchev
03b344b579
Refactor DefaultCodecs implementation
...
Simplify the internals of the DefaultCodecs implementation favoring
explicit fields per override vs a generic list of readers and writers
for overrides.
2017-05-27 20:41:07 -04:00
Rossen Stoyanchev
1328c8f46e
Simplify CodecConfigurer related type names
...
Essentially drop "Configurer" suffix from nested interfaces.
2017-05-27 20:41:07 -04:00
Stéphane Nicoll
7efa0db1d1
Merge pull request #1436 from wilkinsona/patch-2
...
Correct the javadoc for ExchangeResult.getUrl()
2017-05-27 09:01:54 +02:00
Sebastien Deleuze
87598f48e4
Introduce null-safety of Spring Framework API
...
This commit introduces 2 new @Nullable and @NonNullApi
annotations that leverage JSR 305 (dormant but available via
Findbugs jsr305 dependency and already used by libraries
like OkHttp) meta-annotations to specify explicitly
null-safety of Spring Framework parameters and return values.
In order to avoid adding too much annotations, the
default is set at package level with @NonNullApi and
@Nullable annotations are added when needed at parameter or
return value level. These annotations are intended to be used
on Spring Framework itself but also by other Spring projects.
@Nullable annotations have been introduced based on Javadoc
and search of patterns like "return null;". It is expected that
nullability of Spring Framework API will be polished with
complementary commits.
In practice, this will make the whole Spring Framework API
null-safe for Kotlin projects (when KT-10942 will be fixed)
since Kotlin will be able to leverage these annotations to
know if a parameter or a return value is nullable or not. But
this is also useful for Java developers as well since IntelliJ
IDEA, for example, also understands these annotations to
generate warnings when unsafe nullable usages are detected.
Issue: SPR-15540
2017-05-27 08:57:01 +02:00
Rossen Stoyanchev
2d37c966b2
Support for decoding @RequestPart content
...
Issue: SPR-15515
2017-05-26 18:03:01 -04:00
Andy Wilkinson
bc2e1b375e
Correct the javadoc for ExchangeResult.getUrl()
2017-05-26 20:58:53 +01:00
Rossen Stoyanchev
be0b671191
Upgrade nio-multipart-parser to 1.1.0
...
Issue: SPR-15515
2017-05-26 09:19:10 -04:00
Juergen Hoeller
e7b41bc30a
Use Apache Johnzon 1.1 for JSON-B integration tests
...
Issue: SPR-15590
2017-05-25 23:37:14 +02:00
Juergen Hoeller
3cc94ae8b5
Consistently accept "taskExecutor" bean of type Executor (as stated in @EnableAsync's javadoc)
...
Issue: SPR-15566
2017-05-25 23:37:02 +02:00
Rossen Stoyanchev
0287a74d69
ExchangeResult exposes URI template used if any
...
Issue: SPR-15589
2017-05-25 17:07:50 -04:00
Rossen Stoyanchev
fd51893a44
Refactor exchange mutator
...
As a follow-up to the recent commit 246e72 some slight modifications
to MockServerExchangeMutator (renamed to ExchnageMutatorWebFilter).
Aside from the name change, the main difference is that "per request"
exchange processors are now simply applied via WebTestClient#filter(..).
Issue: SPR-15570
2017-05-25 11:41:28 -04:00
Juergen Hoeller
6fcf3a104f
SharedEntityManagerCreator detects JPA 2.2's getResultStream method as query-terminating
...
This commit also changes "hibval5Version" to the more general "hibvalVersion" build variable, and includes dependency updates to Caffeine 2.5.1 and JRuby 9.1.9.
Issue: SPR-13482
2017-05-25 13:16:51 +02:00
Rossen Stoyanchev
346d5d2fab
Refactor WebTestClient consumeWith methods
...
Issue: SPR-15587
2017-05-24 20:24:54 -04:00
Rossen Stoyanchev
718162b8c4
Fix issue with "redirect:" when a media type is present
...
Issue: SPR-15291
2017-05-24 16:31:05 -04:00
Andy Clement
109746a03b
Adjust source in test class to work around eclipse compiler bug
...
Issue: SPR-15586
2017-05-24 13:24:24 -07:00
Rossen Stoyanchev
805fcc6a05
ResponseErrorHandler provides access to URI and method
...
Issue: SPR-15511
2017-05-24 15:34:40 -04:00
Rossen Stoyanchev
9b53b86d24
Check Reactor presence after Undertow for WebSocket
...
Issue: SPR-15539
2017-05-24 15:05:59 -04:00
Rossen Stoyanchev
df8412bded
ExceptoinWebSocketHandlerDecorator uses ERROR level
...
Issue: SPR-15537
2017-05-24 15:00:12 -04:00
Rossen Stoyanchev
204a9cf056
Public constant for webtestclient-request-id header
...
Issue: SPR-15575
2017-05-24 14:26:52 -04:00
Rossen Stoyanchev
4d4c3d5c0b
Replace bindToHttpHandler with bindToWebHandler
...
This commit replaces the option to bind the WebTestClient to an
HttpHandler to bind to a WebHandler instead.
This allows testing below the WebFlux level such as WebFilter,
WebHandler, or WebSession scenarios, but still a level above
HttpHandler so that WebTestClient is in charge of creating the
ServerWebExchange and expose consistently the
WebTestClient#MockServerSpec setup across all "mock" server bindToXxx
options.
Issue: SPR-15570
2017-05-24 14:03:57 -04:00
Rossen Stoyanchev
246e72ff2f
Refactor WebTestClient exchange mutator support
...
This commit factors ServerWebExchange mutator support out of
WebTestClient in favor of an independent public class called
MockServerExchangeMutator which implements WebFilter and can be
applied to the WebTestClient as any other WebFilter.
The MockServerExchangeMutator also exposes a method to apply
a client-side filter for "per request" mutators. See the Javadoc
of the MockServerExchangeMutator.
Issue: SPR-15570
2017-05-24 14:03:57 -04:00
Arjen Poutsma
a5b94f3a77
Use HttpRequest.getMethodValue
...
This commit uses the newly introduced HttpRequest.getMethodValue in
the webflux module.
Issue: SPR-15545
2017-05-24 17:19:43 +02:00
Arjen Poutsma
630fc194f0
Add HttpRequest.getMethodValue
...
This commit introduces a new method in HttpRequest:
`String getMethodValue`, which returns the HTTP method as a String.
Furthermore, HttpRequest.getMethod() has been given a default
implementation using this String value in combination with
`HttpMethod.resolve`.
Issue: SPR-15545
2017-05-24 16:36:58 +02:00
Arjen Poutsma
31d1e26c95
Use List<T> instead of Supplier<Stream<T>>
...
This commit changes all methods that return `Supplier<Stream<T>` to
return `List<T>` instead. This includes the HandlerStrategies, but also
BodyInserter.Context, BodyExtractor.Context, and ServerResponse.Context.
The reason for this change is that most of the strategies have some sort
of order, where more specific message readers - for instance - come
before generic ones. Such an ordering can only be enforced through a
List.
Issue: SPR-15578
2017-05-24 13:48:03 +02:00
Arjen Poutsma
01e3561db9
Support RouterFunction in @EnableWebFlux
...
This commit removes the RouterFunctions.toHandlerMapping method, in
favor of native support for RouterFunctions in @EnableWebFlux
configuration classes.
In order to accomplish this, the HandlerStrategies components has been
repurposed to only be used for the "bare-bones" HttpHandler, while the
(newly introduced) RouterFunctionMapping uses the strategies as exposed
through WebFluxConfigurationSupport.
Furthermore, this commit also introduces support for testing
RouterFunctions without resorting to an application context.
Issue: SPR-15536
2017-05-24 11:42:15 +02:00
skarafaz
3d290165fb
Find exact matches in WebJarsResourceResolver
...
Prior to this commit, resolving resources from webjars using the
`WebJarAssetLocator.getFullPath` could lead to multiple candidates,
since this method is trying to find *any* resource matching that path
under the given webjar location.
This commit replaces that call with
`WebJarAssetLocator.getFullPathExact`, which avoids those multiple
matches and only resolves resources if the given path is exact.
Issue: SPR-15526
(cherry picked from commit e2aa117ff9 )
2017-05-24 10:46:35 +02:00
Rossen Stoyanchev
3f32f72bfc
Polish
...
SPR-15576
2017-05-23 21:57:34 -04:00
Juergen Hoeller
0183576215
Polishing
2017-05-23 22:05:22 +02:00
Juergen Hoeller
db69a082d9
Avoid java.util.Optional signatures for simple field access
...
Issue: SPR-15576
2017-05-23 22:05:15 +02:00
Juergen Hoeller
ce5e2b94c4
ProtobufJsonFormatHttpMessageConverter for configurable JSON processing
...
Issue: SPR-15550
2017-05-23 21:59:23 +02:00
Juergen Hoeller
113f0fb13f
Javadoc suggests Jackson 2.9
...
Issue: SPR-14925
2017-05-23 21:59:16 +02:00
Rossen Stoyanchev
b6e252495a
Protect against NPE in DefaultSubscriptionRegistry
...
Follow-up fix on the recent commit:
https://github.com/spring-projects/spring-framework/commit/44c31a
Issue: SPR-15543
2017-05-22 16:08:34 -04:00
Stephane Nicoll
b64de87a6b
Merge pull request #1411 from andreykaipov:patch-2
...
* pr/1411:
Minor typo fix: form -> from
2017-05-20 14:50:18 +02:00
Andrey Kaipov
9c226aa742
Minor typo fix: form -> from
...
Closes gh-1411
2017-05-20 14:49:54 +02:00
Rossen Stoyanchev
11075f12bc
Fix URI parsing in Reactor Netty request
...
Issue: SPR-15560
2017-05-19 21:47:27 -04:00
Juergen Hoeller
c59e192b0f
Upgrade to Kotlin 1.1.2-4 (and Undertow 1.4.15)
2017-05-19 23:23:11 +02:00
Rossen Stoyanchev
34f1712d59
Merge pull request #1422 from svorcmar/SPR-15505
2017-05-19 17:00:16 -04:00
Rossen Stoyanchev
48a5938cd4
Polish
2017-05-19 16:59:36 -04:00
Martin Švorc
bf83e4e861
Use original query string of forwarded request
...
Prior to this commit, the AbstractFlashMapManager has used the
originating URI but the query string of the forwarded request. That
resulted to FlashMap not being matched even when both originating
URI and query string matched the FlashMap attributes. The originating
query string is now used to match the forwarded request.
Issue: SPR-15505
2017-05-19 16:49:29 -04:00
Bao Tran
44c31a6aad
Fix duplicate STOMP subscription id issue
...
Issue: SPR-15543
2017-05-19 15:20:14 -04:00
Juergen Hoeller
cb3d1befcd
LocalValidatorFactoryBean properly supports unwrap at ValidatorFactory level
...
Also documents limitation for Bean Validation 2.0's getClockProvider() method.
Issue: SPR-15561
Issue: SPR-13482
2017-05-18 21:00:56 +02:00
Juergen Hoeller
67881a5726
Polish PathPattern parser (including package change to web.util.pattern)
...
Issue: SPR-15531
2017-05-17 17:40:25 +02:00
Juergen Hoeller
eaac348c05
Close InputStreams in writeResourceRegionCollection (analogous to writeResourceRegion)
...
Issue: SPR-15559
2017-05-17 14:34:50 +02:00
Juergen Hoeller
7b3f5fd855
ResourceUtils.extractArchiveURL properly deals with top-level war URLs
...
Issue: SPR-15556
2017-05-17 14:22:43 +02:00
Juergen Hoeller
e835f4d025
Revised png and jpeg mappings
...
Issue: SPR-15546
Issue: SPR-15557
2017-05-17 14:21:44 +02:00
Arjen Poutsma
ba39697f2e
Expose Principal in ServerRequest
...
This commit exposes the Principal in ServerRequest.
Issue: SPR-15552
2017-05-16 14:50:57 +02:00
Juergen Hoeller
94efbe2687
Latest dependency updates (OkHttp 3.8, Protobuf 3.3.1, Rome 1.7.3, Tomcat 8.5.15)
2017-05-16 11:39:21 +02:00
Juergen Hoeller
9e3f4ccce9
Merge pull request #1394 from alexander-riss/keySet
...
Fix inefficient use of keySet operators in messaging classes
Issue: SPR-15553
2017-05-16 11:22:22 +02:00
Alexander Riss
e49a5d8424
fix inefficient use of keySet operators in messaging classes
...
issue: SPR-15553
2017-05-16 10:41:22 +02:00
Rossen Stoyanchev
5ac7955de9
More qualified "request-id" header in WebTestClient
...
Issue: SPR-15501
2017-05-15 15:52:50 -04:00
Violeta Georgieva
7f616c216b
Specify the HandlerMapping#order in the websocket example
...
The order value has to be specified for the HandlerMapping
so that it will be ordered before the one that serves the static resource.
2017-05-12 20:45:27 +03:00
Juergen Hoeller
f985f71daf
Polishing
2017-05-12 12:50:17 +02:00
Juergen Hoeller
650a682659
Upgrade to Netty 4.1.11
2017-05-12 12:50:10 +02:00
Arjen Poutsma
f4cf55cb2b
Add support for WebFilter and WebExceptionHandler
...
This commit adds support for configuring `WebFilter` and
`WebExceptionHandler` instances in HandlerStrategies. It also drops the
"native" support for `ResponseStatusException`s, in favor of the
`ResponseStatusExceptionHandler`, which is registered by default.
Issue: SPR-15518
2017-05-11 11:45:00 +02:00
Arjen Poutsma
ad9cf99420
ResourceHandlerFunction returns EntityResponse
...
The ResourceHandlerFunction now returns an `EntityResponse<Resource>`
(instead of a `ServerResponse`), so that filters can inspect/change the
returned Resource.
2017-05-11 11:45:00 +02:00
Arjen Poutsma
8db4b2f7ed
Remove synchronized block around PathPatternParser
...
Removed the synchronized block around PathPatternParser, since it is
now thread-safe.
2017-05-11 09:55:20 +02:00
Sebastien Deleuze
285fa1cc2c
Fix typos in Kotlin extensions documentation
2017-05-10 17:22:27 +02:00
Arjen Poutsma
f0f3df5cc0
Use PathPattern in PathResourceLookupFunction
2017-05-10 10:12:55 +02:00
Arjen Poutsma
64c0ec3d5e
Add test for combining @Controller with RouterFunctions
...
This commit adds a test for combining RouterFunctions with a
@Controller.
Issue: SPR-15521
2017-05-09 16:38:30 +02:00
Juergen Hoeller
9273197f11
Latest dependency updates (Common Annotations 1.3, Caffeine 2.5, Selenium 3.4, JSONassert 1.5)
2017-05-09 13:48:05 +02:00
Arjen Poutsma
b649041976
Add ServerHttpResponse.addCookie method
...
This commit adds a `addCookie(ResponseCookie)` method to the reactive
`ServerHttpResponse` interface.
Issue: SPR-15523
2017-05-09 10:18:39 +02:00
Rossen Stoyanchev
add1305252
Re-add vararg options in WebHttpHandlerBuilder
...
WebHttpHandlerBuilder is low level not expected to appear frequently
but they might be repeated more in tests (e.g. of WebFilter's).
Issuse: SPR-15499
2017-05-08 15:50:27 -04:00
Rossen Stoyanchev
459457e1aa
WebFilterChain delegation nested in Mono.defer()
...
Issue: SPR-15520
2017-05-08 15:36:31 -04:00
Rossen Stoyanchev
47d6e4a332
Immutable DefaultWebFilterChain
...
Issue: SPR-15517
2017-05-08 15:04:38 -04:00