Commit Graph

12151 Commits

Author SHA1 Message Date
Brian Clozel
977840884b Allow custom instances of WebJarAssetLocator
This commit allows to configure a custom WebJarAssetLocator in
WebJarResourceResolvers.

Issue: SPR-14092
2016-04-28 19:02:04 +02:00
Brian Clozel
55dae618a6 Improve multi-valued HTTP headers support
Prior to this change, getting header values with `HttpHeaders` when
headers are multi-valued would cause issues.
For example, for a given HTTP message with headers:
    Cache-Control: public, s-maxage=50
    Cache-Control: max-age=42

Getting a `List` of all values would return <"public", "s-maxage=50">
and getting the header value would return "public, s-maxage=50".

This commit takes now into account multi-valued HTTP headers and adds
new getters/setters for "If-Match" and "If-Unmodified-Since" headers.

Note that for ETag-related headers such as "If-Match" and
"If-None-Match", a special parser has been implemented since ETag values
can contain separator characters.

Issue: SPR-14223, SPR-14228
2016-04-28 18:48:47 +02:00
Sebastien Deleuze
15138ed96f Revisit ScriptTemplateView resource loading
Resources are now retrieved using the application context in order to
support natively non-classpath locations like /WEB-INF/...

As a consequence of this refactoring, ScriptTemplateView#createClassLoader()
protected method as been removed, since it did not make sense anymore with
this new resource loading implementation.

Issue: SPR-14210
2016-04-28 15:40:14 +02:00
Juergen Hoeller
9412f7a094 InstantFormatter accepts RFC-1123 values as well
Issue: SPR-14201
2016-04-28 14:35:33 +02:00
Stephane Nicoll
777767c7ee Merge pull request #1046 from panchenko/ReflectionUtils-static-final
* pr/1046:
  "final" for public static fields in ReflectionUtils
2016-04-28 08:34:35 +02:00
Alex Panchenko
8d36332268 "final" for public static fields in ReflectionUtils
Closes gh-1046
2016-04-28 08:34:10 +02:00
Juergen Hoeller
cd6b203c88 Upgrade to Caffeine 2.3 2016-04-27 22:10:49 +02:00
Juergen Hoeller
8ddb432694 Polishing 2016-04-27 21:35:26 +02:00
Juergen Hoeller
e0734aede8 ApplicationListenerDetector explicitly prevents serialization of its ApplicationContext reference
Issue: SPR-14214
2016-04-27 21:30:46 +02:00
Juergen Hoeller
6ab8d36ed0 DefaultMessageListenerContainer's recovery phase uses wait instead of sleep
Issue: SPR-14200
2016-04-27 21:27:21 +02:00
Juergen Hoeller
b331ad5b2a Explicit note on scheduled methods with a return value
Issue: SPR-14195
2016-04-27 15:45:30 +02:00
Juergen Hoeller
ce2f28da49 CachedIntrospectionResults explicitly introspects implemented interfaces (for Java 8 default methods)
Issue: SPR-14198
2016-04-27 15:39:00 +02:00
Rossen Stoyanchev
335d968f85 Polish DefaultUrlTemplateHandler 2016-04-27 08:55:52 -04:00
Brian Clozel
a50ea80e4e Handle multiple conditional request headers
Prior to this change, setting both "If-None-Match" and
"If-Unmodified-Since" conditional request headers would check for both
conditions to be met.

This commit fixes this behavior to follow the RFC7232 Section 6:
> entity tags are presumed to be more accurate than date validators

So in case both conditions are present, the "If-None-Match" condition
takes precedence.

Issue: SPR-14224
2016-04-27 12:02:33 +02:00
Sam Brannen
1838d7e97f Update Javadoc for ReflectionUtils re: exception handling 2016-04-27 12:44:09 +03:00
Rossen Stoyanchev
8f0f5faf4d XML config properly initialize WS message broker stats
Issue: SPR-14190
2016-04-26 17:24:22 -04:00
Juergen Hoeller
d06188ed4d ResponseEntity allows for setting non-standard status code
Issue: SPR-14205
2016-04-26 23:06:10 +02:00
Juergen Hoeller
e5d52a96a7 HttpSessionRequiredException programmatically exposes name of expected attribute
Issue: SPR-14206
2016-04-26 23:06:10 +02:00
Rossen Stoyanchev
9798912557 Add missing @since tag 2016-04-26 16:48:45 -04:00
Rossen Stoyanchev
06b2d2b89e STOMP client session supports sending ack/nack
Issue: SPR-14208
2016-04-26 16:44:58 -04:00
Rossen Stoyanchev
538c582342 Extract AbstractUriTemplateHandler base class
Issue: SPR-14147
2016-04-26 13:32:35 -04:00
Juergen Hoeller
bb1a0311d8 Upgrade to Gradle 2.13
Issue: SPR-14215
2016-04-26 17:09:57 +02:00
Juergen Hoeller
87b93a7ae9 Aligned JmsTemplate and DefaultMessageListenerContainer receiveTimeout values
Issue: SPR-14212
2016-04-26 17:09:57 +02:00
Juergen Hoeller
65a8f5ed64 PathMatchingResourcePatternResolver reuses resolved root dir URL
Issue: SPR-14202
2016-04-26 17:09:57 +02:00
Juergen Hoeller
f73df2e138 SpringServletContainerInitializer does not log WebApplicationInitializer class names
Issue: SPR-14213
2016-04-26 17:09:57 +02:00
Juergen Hoeller
bf7b475267 SocketUtils considers port range including maxPort
Issue: SPR-14211
2016-04-26 17:09:57 +02:00
Juergen Hoeller
9bf5a5cbcb FastByteArrayInputStream returns correct count from read(byte[])
Issue: SPR-14209
2016-04-26 17:09:57 +02:00
Rob Winch
9ec0873604 MockWebResponseBuilder defaults cookie domain
Previously MockWebResponseBuilder would use the cookie domain of the cookie
received from MockMvc response. This caused problems because the cookie
domain can be null, but HtmlUnit forbids a null domain.

This commit defaults the domain of the cookie to the domain of the
WebRequest.

Issues SPR-14169
2016-04-25 16:35:56 -05:00
Venil Noronha
b2c9c8abcf Add text/markdown MediaType constant
Issue: SPR-14192
2016-04-25 09:57:30 -04:00
Sam Brannen
c84c1cfd1b Update Javadoc for TestContextBootstrapper
@WebAppConfiguration is no longer meta-annotated with @BootstrapWith.
2016-04-25 15:44:15 +02:00
Sam Brannen
67a9f40c95 Polish Javadoc for TestContextManager 2016-04-23 18:23:25 +02:00
Sam Brannen
4a4cd5bde8 Polish CronSequenceGenerator and tests 2016-04-23 18:05:54 +02:00
Sam Brannen
151530b93b Merge pull request #1042 from Enigo/cron-validation
Introduce cron expression validation method for CronSequenceGenerator
2016-04-23 17:49:00 +02:00
Ruslan Sibgatullin
31d634e6bf Added cron expression validation method for CronSequenceGenerator
It's handy to know in advance whether or not expression that is
passed to CronSequenceGenerator or CronTrigger constructor would
not results in IllegalArgumentException. The only way to do it
now is to try\catch an instance creation but it's kinda ugly.
2016-04-23 17:56:29 +03:00
Sam Brannen
920eba79f8 Polish Javadoc for DefaultUriTemplateHandler 2016-04-23 16:49:04 +02:00
Rossen Stoyanchev
065b7968a3 Add defaultUriVariables property to RestTemplate
Issue: SPR-14147
2016-04-22 16:21:23 -04:00
Rossen Stoyanchev
0d007a328b Polish DefaultUriTemplateHandler 2016-04-22 16:21:18 -04:00
Rossen Stoyanchev
5ec6206e3f Update spring-mvc-3.2.xsd
The backport in commit cf39078 changed the spring-mvc-3.2.xsd.
This change updates the same in the master branch.

Issue: SPR-14186
2016-04-21 14:11:49 -04:00
Rossen Stoyanchev
6e4e52b23a Upgrade to Reactor 2.0.8 2016-04-21 09:21:52 -04:00
Stephane Nicoll
fee2533825 Merge pull request #1039 from izeye/polish-20160419
* pr/1039:
  Remove duplicate words
2016-04-19 08:24:37 +02:00
Johnny Lim
44e652f99e Remove duplicate words
Closes gh-1039
2016-04-19 08:24:21 +02:00
Rossen Stoyanchev
50c11028d5 Improve illegal MimeType checks
Issue: SPR-14124
2016-04-18 10:01:18 -04:00
Venil Noronha
aafd46aeb3 Remove isOpen assertion when sending WebSocket message
Issue: SPR-14138
2016-04-18 09:46:05 -04:00
Venil Noronha
28f2f4a431 Delegate sendMessage
Issue: SPR-14139
2016-04-18 09:30:48 -04:00
Juergen Hoeller
f8720e256d Upgrade to EhCache 3.0 GA
Issue: SPR-14185
2016-04-18 14:41:01 +02:00
Rossen Stoyanchev
7cdcc102a9 Explicit HEAD sorted higher than implicit GET match
Issue: SPR-14182
2016-04-17 15:12:43 -04:00
Sam Brannen
ff38224da6 Introduce tests for @[Before|After]Transaction on default methods
This commit introduces @Ignore'd tests for future support for declaring
@BeforeTransaction and @AfterTransaction on interface default methods.

Issue: SPR-14183
2016-04-17 16:01:07 +02:00
Stephane Nicoll
b1bc920e72 Merge pull request #1037 from izeye/patch-6
* pr/1037:
  Use the defined constant in MergedContextConfiguration
2016-04-16 10:33:19 +02:00
Johnny Lim
c402932ba1 Use the defined constant in MergedContextConfiguration
Closes gh-1037
2016-04-16 10:32:41 +02:00
Brian Clozel
368f29d5bc Fix AntPathMatcher multiple segments matching
Prior to this commit, the new match algorithm wouldn't work for multiple
consecutive path separators.
This commit separately matches path segments and path separators and
allows for multiple, consecutive path separators.

Issue: SPR-14141
2016-04-15 23:10:29 +02:00