Spring Buildmaster
dad0b1e98c
Release version 5.1.7.RELEASE
2019-05-09 14:55:48 +00:00
Sebastien Deleuze
c8d49ed284
Fix EncoderHttpMessageWriter.isStreamingMediaType()
...
Closes gh-22936
2019-05-09 14:57:15 +02:00
Denis Zavedeev
484ec64305
Minor integration doc refinements
2019-05-09 14:27:22 +02:00
Sam Brannen
59fdce1116
Fix bug in EncoderHttpMessageWriter.isStreamingMediaType()
2019-05-09 13:24:27 +02:00
Rossen Stoyanchev
c717d245bd
Upgrade to Californium-SR8
2019-05-08 21:04:45 -04:00
Juergen Hoeller
190b751147
Support any HttpEntity implementing ResolvableTypeProvider
...
Closes gh-22931
2019-05-09 02:09:31 +02:00
Juergen Hoeller
c4a95c99e5
Upgrade to Reactor Californium SR7
2019-05-08 18:19:19 +02:00
Rossen Stoyanchev
6e0dfd6999
Check if Accept-Charset is present before adding it
...
Closes gh-22506
2019-05-08 09:40:32 -04:00
Arjen Poutsma
cdd346222c
Add reference counting for UndertowDataBuffer
...
This commit adds proper reference counting to the UndertowDataBuffer.
2019-05-08 11:58:48 +02:00
Juergen Hoeller
ecc165a94f
Consistent spelling on index page
2019-05-07 13:46:27 +02:00
Juergen Hoeller
46e5dd6420
Consistent handling of empty List entries in LinkedMultiValueMap
...
Closes gh-22912
2019-05-07 13:08:42 +02:00
Sam Brannen
4aaec942c4
Introduce HTTPS mappings in spring.schemas files
...
Closes gh-22903
2019-05-07 12:56:42 +02:00
Juergen Hoeller
053b95ceeb
Refer to non-deprecated Jackson 2.5+ addMixIn method in javadoc
2019-05-07 02:06:40 +02:00
Juergen Hoeller
d16beb0e55
Polishing
...
See gh-22900
2019-05-07 01:40:53 +02:00
Juergen Hoeller
c841b62bb0
Consistent parameter retrieval across InvocableHandlerMethod variants
...
See gh-22900
2019-05-07 01:20:05 +02:00
Juergen Hoeller
3f85a7db1b
Consistent exception naming across InvocableHandlerMethod variants
...
See gh-22900
2019-05-07 00:48:27 +02:00
Juergen Hoeller
379d81da74
Consistent thread-safe handling of manualSingletonNames Set
...
Closes gh-22896
2019-05-07 00:47:59 +02:00
Sebastien Deleuze
4b31feb243
Clarify Jackson2ObjectMapper.modules(ToInstall) semantics
...
Closes gh-22747
2019-05-06 22:09:56 +02:00
Juergen Hoeller
293188c797
Consistent non-use of firstIndex 0 in PatternMatchUtils
...
Closes gh-22837
2019-05-04 12:01:54 +02:00
Juergen Hoeller
9674ce4906
Avoid HashSet/StringBuilder allocation for non-placeholder values
...
Closes gh-22870
2019-05-04 12:00:22 +02:00
Juergen Hoeller
ea4a174583
Polishing
2019-05-03 18:10:41 +02:00
Juergen Hoeller
3d6476da46
Polishing
2019-05-03 17:29:22 +02:00
Juergen Hoeller
a7949ac84a
Consistent use of StringUtils.hasLength(String) vs isEmpty(Object)
2019-05-03 17:29:14 +02:00
Juergen Hoeller
84266d71e9
Polishing
2019-05-03 14:08:20 +02:00
Juergen Hoeller
4e10735e8f
MockHttpServletRequest restores default locale for empty accept header
...
Closes gh-22877
2019-05-03 14:08:12 +02:00
Juergen Hoeller
7aa61d9ee0
Upgrade to Jetty 9.4.18 and Netty 4.1.36
2019-05-03 00:12:03 +02:00
Juergen Hoeller
5b1b1bae37
Consistent use of try-with-resources for local resource closing
2019-05-03 00:11:47 +02:00
Juergen Hoeller
31c3b8a291
Avoid unguarded String concatenation for debug/trace logging
...
Closes gh-22874
2019-05-03 00:10:56 +02:00
Juergen Hoeller
f359c117d3
Polishing
2019-05-02 17:28:32 +02:00
Juergen Hoeller
8158b6fd86
Update postProcessBeforeInstantiation comment on factory methods
...
Closes gh-22867
2019-05-02 17:28:11 +02:00
Juergen Hoeller
18f6739be4
Allow null operands in compiled SpEL numeric operator expressions
...
Closes gh-22358
2019-05-02 17:27:49 +02:00
Rossen Stoyanchev
b398216191
Fail proactively if lookupPath not in requestUri
...
Closes gh-22851
2019-05-01 03:57:44 -04:00
Rossen Stoyanchev
b5327ef60f
Fix regression in ProducesRequestCondition
...
Closes gh-22853
2019-05-01 02:59:19 -04:00
Juergen Hoeller
a8f845c944
Upgrade to Checkstyle 8.20 and CGLIB 3.2.11
...
Includes dependency management plugin 1.0.7.
2019-04-30 18:44:08 +02:00
Juergen Hoeller
90d4e9090c
Polishing
2019-04-30 18:43:16 +02:00
Juergen Hoeller
e0423fbdc2
Revise inline comment for logException call
...
Closes gh-22794
2019-04-30 18:42:53 +02:00
Juergen Hoeller
359c4f091e
Add rejectInvalidCookies flag to CookieLocaleResolver
...
Closes gh-22861
2019-04-30 18:39:58 +02:00
Juergen Hoeller
1f473261a8
Polishing
2019-04-26 22:56:23 +02:00
Juergen Hoeller
e5e2d2d661
Polishing (includes minor performance refinements from master)
2019-04-26 16:51:18 +02:00
Juergen Hoeller
bdd9a557a5
Streamline ReactiveAdapterRegistry.getAdapter usage
...
Closes gh-22842
2019-04-26 16:49:16 +02:00
Juergen Hoeller
42fda0ba15
Upgrade to Tomcat 9.0.19, Jetty 9.4.17, Netty 4.1.35, OkHttp 3.14.1
...
Includes upgrade to Hibernate ORM 5.3.10 (for branch 5.1.x)
2019-04-25 14:32:37 +02:00
Juergen Hoeller
168a5159b8
Log ClassCastException from lambda-defined listener at trace level
...
Closes gh-22834
2019-04-25 14:31:57 +02:00
Juergen Hoeller
0cfab87b1f
Revise isEligibleValue javadoc towards BeanUtils.isSimpleValueType
...
See gh-22816
2019-04-25 14:31:09 +02:00
Rossen Stoyanchev
42fc4a35d5
Ensure flush after StreamingResponseBody
...
Closes gh-22813
2019-04-18 22:49:23 -04:00
Rossen Stoyanchev
1a97a26eb7
Disable response caching when controller resolves ETag
...
See gh-22797
2019-04-18 11:50:43 -04:00
Rossen Stoyanchev
13c746ae9d
Follow-up fix for #5b711a
...
Not only do we need to preserve Mono in writeWith in the base class
but also in ReactorServerHttpResponse where buffers are mapped.
See gh-22800
2019-04-17 13:18:01 -04:00
Sam Brannen
52b6f9b56d
Align Javadoc for Base64Utils.encodeToString() with implementation
...
Closes gh-22812
2019-04-17 12:33:22 -04:00
Stephane Nicoll
fa848805fb
Merge pull request #22809 from johnlinp
...
* pr/22809:
Polish "Remove PROPAGATION_ prefix in Javadoc"
Remove PROPAGATION_ prefix in Javadoc
2019-04-17 11:49:30 +02:00
Stephane Nicoll
b7415ec92c
Polish "Remove PROPAGATION_ prefix in Javadoc"
...
Closes gh-22809
2019-04-17 11:49:04 +02:00
John Lin
c0252f8758
Remove PROPAGATION_ prefix in Javadoc
...
See gh-22809
2019-04-17 11:48:54 +02:00
Rossen Stoyanchev
5b711a964b
Pass Mono to Reactor Netty when feasible
...
Closes gh-22800
2019-04-16 20:52:19 -04:00
Rossen Stoyanchev
15b2fb1210
Polish
...
Replacing a couple of calls to Mono.fromCallable with Mono.just which
seems to work with doOnDiscard except when nested inside Flux.defer.
2019-04-16 20:52:19 -04:00
Rossen Stoyanchev
375090bb7c
LeakAwareDataBuffer related fixes
...
Following on 3ebbfa2191 where the local
refCount was removed in favor of using the internal refCount of the
native data buffer, this commit ensures that LeakAwareDataBufferFactory
uses a PooledDataBufferFactory delegate by default.
There are also fixes for test issues with eager allocation uncovered by
these changes in StringDecoder and ResourceDecoder.
2019-04-16 20:52:19 -04:00
Rossen Stoyanchev
0109231d8e
Ensure Jackson generator flushed
...
Closes gh-22771
2019-04-15 08:40:19 -04:00
Juergen Hoeller
722cd179cf
Clean up property values registration in SimpleWebApplicationContext
...
Closes gh-22787
2019-04-12 11:10:11 +02:00
Juergen Hoeller
b07d46da99
MockCookie compares attributes in case-insensitive manner
...
Closes gh-22786
2019-04-12 11:10:02 +02:00
Juergen Hoeller
49557471a9
Upgrade to AspectJ 1.9.3, Mockito 2.27, OpenPDF 1.2.16, POI 4.1
2019-04-12 11:03:43 +02:00
Rossen Stoyanchev
bd2c213b47
Remove buffer release used as workaround
...
The extra buffer release was used as a workaround for a reactor core
issue and should have already been removed as part of
b3bc2d9253 .
2019-04-10 15:36:36 -04:00
Rossen Stoyanchev
3ebbfa2191
Fix refCount issue in LeakAwareDataBuffer
...
LeakAwareDataBuffer was keeping its own refCount rather than checking
through the delegate. This leads to false leak reports in a sequence
where an allocated buffer is retained and then sliced since it is not
aware of the changes to the refCount through the slice.
2019-04-10 15:33:19 -04:00
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
Rossen Stoyanchev
bd956ed75a
DataBuffer fixes in Protobuf codecs
...
Closes gh-22731
2019-04-09 17:00:26 -04:00
Juergen Hoeller
2835424f9d
Jackson2Tokenizer creates fully configured DeserializationContext
...
Closes gh-22510
2019-04-09 17:59:10 +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
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
a1668ad1c2
Fix Javadoc for PathPattern
2019-04-06 11:21:39 +02: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
Juergen Hoeller
da557e7415
Avoid expensive assertions in HttpRange
...
Closes gh-22742
2019-04-05 12:47:02 +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
Rossen Stoyanchev
325fb5d97e
Unwrap CompletionException in return value handler
...
See gh-22476
2019-04-03 19:37:13 -04:00
Rossen Stoyanchev
b3bc2d9253
Remove workaround for reactor-core issue
2019-04-03 16:27:02 -04:00
Juergen Hoeller
0cc6a9ef11
Avoid getDeclaredMethod check in ReflectionUtils.isObjectMethod
...
Closes gh-22730
2019-04-03 18:21:26 +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
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
Rossen Stoyanchev
4c08863776
Add test case for writeFunction error signal
...
See gh-22720
2019-04-02 11:00:58 -04:00
Violeta Georgieva
9bd0ec33f8
Release cached item in ChannelSendOperator when server error
...
Related to gh-22720
2019-04-02 16:42:52 +03: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
Stephane Nicoll
de2a01eee4
Polish
...
Closes gh-22717
2019-04-01 14:01:41 +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
Spring Buildmaster
d6088fa64e
Next Development Version
2019-03-31 08:42:44 +00: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
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
Rossen Stoyanchev
57d006b3ff
Fix checkstyle warning
2019-03-28 17:37:12 -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
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
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
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
f0ae8bc300
Support custom XmlFactory in Jackson2ObjectMapperBuilder
...
Closes gh-22428
2019-03-27 16:48:21 +01:00
Juergen Hoeller
ca24fd50b0
Rethrow original BeanCreationException if fallback producer fails
...
Closes gh-22689
2019-03-27 16:01:18 +01: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
9d6592d8f6
Upgrade to Hibernate Validator 6.0.16 and H2 1.4.199
2019-03-26 23:31:19 +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
699d75ec11
Polishing
2019-03-26 17:56:31 +01:00
Arjen Poutsma
c152d246a8
Copy cookies and hints to ServerResponse builders
...
Closes gh-22351
2019-03-26 16:19:13 +01:00
Arjen Poutsma
6324a1b3fa
Copy cookies and hints in built ServerResponse
...
Closes gh-22481
2019-03-26 15:49:12 +01:00
Sebastien Deleuze
0ca8428603
Fix lambda nullability in JdbcOperations extensions
...
Closes gh-22682
2019-03-26 14:29:41 +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
Sam Brannen
f66362a01c
Update license.txt file
...
Closes gh-22659
2019-03-25 18:09:28 +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
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
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
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
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
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
Rossen Stoyanchev
c7401dbe1f
Fix @since typo
2019-03-19 14:40:34 -04:00
Rossen Stoyanchev
f52c1fda3b
Polish
2019-03-19 14:18:33 -04: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
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
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
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
db56d348dc
Polishing
...
See gh-22577
2019-03-13 15:28:15 +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
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
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
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
Juergen Hoeller
fe0c2d6b6e
StringUtils.toStringArray/CollectionUtils.toIterator handle null input
...
Closes gh-22547
2019-03-08 22:40:18 +01:00
Juergen Hoeller
6c87ef09c1
Polishing
2019-03-07 17:55:32 +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
Juergen Hoeller
7cbb3b06a0
Consistent local vs external resolution of https schema references
...
Closes gh-22504
2019-03-06 13:50:40 +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
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
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
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
9c42fd7f17
JdbcTemplate preserves order of stored procedure output parameters
...
Closes gh-22491
2019-02-28 11:13:51 +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
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
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
Juergen Hoeller
8d9ef46d98
Upgrade to Checkstyle 8.18 and RxJava 2.2.7
2019-02-25 23:18:56 +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
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
f19d7c0375
Fix AbstractTraceInterceptor null-safety annotations
...
Closes gh-22435
2019-02-22 09:47:14 +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
Sam Brannen
7c65b57530
Polish Kotlin chapter
2019-02-17 17:22:04 +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
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
Juergen Hoeller
ac0e5d8ec6
DefaultConversionService properly converts Object[] to int[]
...
Closes gh-22410
2019-02-14 13:38:29 +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
d703ca95d7
Upgrade to Reactor Californium SR5
2019-02-12 21:29:25 +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
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
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
cdd0456aa4
Upgrade to Tomcat 9.0.16 and Log4J 2.11.2
2019-02-11 11:51:41 +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
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
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
2b974da395
Use snapshot instead of libs-snapshot repository
...
The latter has stale Reactor snapshots
2019-02-07 14:34:59 -05:00
Rossen Stoyanchev
e7c038f2d2
Switch to Reactor Californium snapshots
2019-02-07 11:59:54 -05: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
Brian Clozel
ef8652615c
Log exception at ERROR level in CompositeLog
...
Fixes gh-22364
2019-02-06 19:58:41 +01:00
Sebastien Deleuze
d1e5a3af9f
Fix truncated Value#value javadoc
...
Closes gh-22331
2019-02-06 19:28:31 +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
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
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
Rossen Stoyanchev
4560dc2818
Improve empty body check
...
Fixes gh-22265
2019-01-25 15:48:04 -05: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
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
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
Sam Brannen
edadb9efb6
Remove obsolete PetClinic Example section of Testing chapter
...
Issue: #22288
2019-01-23 16:40:21 +01: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
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
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
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
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
9837ec5904
Fix Javadoc typos
...
Closes #22261
2019-01-17 18:01:08 -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
189e1afc6e
Use try-with-resources in documentation samples
...
Fixes #22269
2019-01-17 12:53:59 -05:00
Rossen Stoyanchev
d1862a26dd
Typo in web documentation
...
Fixes #22270
2019-01-17 12:27:00 -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
Arjen Poutsma
86fb43900e
Deprecate JiBX marshaller
...
Resolves #22249
2019-01-14 11:50:21 +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
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
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