Commit Graph

3897 Commits

Author SHA1 Message Date
Phillip Webb 6b58051aad Polish Binder code 2023-12-05 14:58:49 -08:00
Moritz Halbritter f9a1eb000e Merge branch '3.1.x'
Closes gh-38658
2023-12-05 11:51:03 +01:00
Lars Uffmann 5981a3fd33 Build against UCP and JDBC driver for Oracle Database variant ucp11
See gh-38654
2023-12-05 11:40:35 +01:00
Arthur Gavlyukovskiy 829bec7602 Update documentation about jetty http2 dependency
See gh-38632
2023-12-04 13:34:29 +01:00
Moritz Halbritter 6744cc2887 Apply awaitTerminationPeriod to SimpleAsyncTaskScheduler
Closes gh-38530
2023-11-30 10:25:33 +01:00
Moritz Halbritter e454470bf9 Apply awaitTerminationPeriod to SimpleAsyncTaskExecutor
Closes gh-38528
2023-11-30 09:25:49 +01:00
Andy Wilkinson 8de81cb06e Disable bind on init for all Tomcat connectors
If a connector is bound on init, it won't be unbound when stop()
is called. This leaves the connector running when it should have
been stopped. We currently disable bind on init for the main
connector but not for any additional connectors. This commit
disables bind on it for all connectors unless it is been
explicitly enabled through the bindOnInit property.

Closes gh-38564

Co-authored-by: Moritz Halbritter <moritz.halbritter@broadcom.com>
2023-11-29 14:28:09 +00:00
Moritz Halbritter 62a6d384f6 Merge branch '3.1.x'
Closes gh-38600
2023-11-29 14:00:01 +01:00
Tom Frenken 43bc104c4e Use system properties when constructing Apache HttpClient
See gh-38591
2023-11-29 13:49:20 +01:00
Moritz Halbritter 86c2f28cb4 Prevent keep alive thread from blocking the AOT processing
Instead of creating the thread directly in the constructor, the thread
is now created when the context is refreshed and stopped when the
context is closed.

As AOT processing never refreshes the context, the thread is never
started and can't block the AOT processing task.

Closes gh-38531
2023-11-27 13:41:02 +01:00
Andy Wilkinson a40f3da028 Merge branch '3.1.x'
Closes gh-38499
2023-11-22 12:35:58 +00:00
Andy Wilkinson ae5bae393b Remove unnecessary toLowerCase call from remainderIsDashes
Closes gh-38498
2023-11-22 12:35:36 +00:00
Johnny Lim 175b6473c7 Polish
See gh-38389
2023-11-22 10:16:19 +01:00
Phillip Webb 59493e8306 Fix failing tests following version upgrades 2023-11-20 21:03:17 -08:00
abdullah-jaffer 6f3b3fa6f6 Replace Function<String, String> with UnaryOperator<String>
See gh-38390
2023-11-20 20:05:03 -08:00
Phillip Webb ba56953ea5 Skip ValueObjectBinder if parameter names cannot be discovered
Update `ValueObjectBinder` so that it is skipped if parameter names
cannot be discovered. This is much more likely as of Since Spring
Framework 6.1 as it no longer performs ASM parsing to discover names.

Fixes gh-38201
2023-11-13 10:24:06 -08:00
Claudio Nave 61aecdedd6 Remove Liquibase javax.activation excludes
Liquibse no longer declares a dependency on `javax.activation`
(see https://github.com/liquibase/liquibase/issues/4487) so we
can now remove our exclusions.

See gh-38274
2023-11-09 11:44:31 -08:00
Moritz Halbritter e3210e72d5 Polish "Report friendly error when failing to find AOT initializer"
See gh-38188
2023-11-07 10:37:27 +01:00
Yanming Zhou 8126d2652d Report friendly error when failing to find AOT initializer
See gh-38188
2023-11-07 10:37:13 +01:00
Moritz Halbritter b9946bd029 Merge branch '3.1.x'
Closes gh-38243
2023-11-07 10:21:13 +01:00
Jake 8932de0fe2 Fix typo
See gh-38241
2023-11-07 10:07:14 +01:00
Moritz Halbritter d6c28b3fc7 Merge branch '3.1.x'
Closes gh-38198
2023-11-03 12:28:38 +01:00
Moritz Halbritter fb1a4ba470 Merge branch '3.0.x' into 3.1.x
Closes gh-38197
2023-11-03 12:28:22 +01:00
Moritz Halbritter 6b69525291 Merge branch '2.7.x' into 3.0.x
Closes gh-38196
2023-11-03 12:28:11 +01:00
Moritz Halbritter 18f9dc9b94 Document that customizers are not applied to additional connectors
Closes gh-38183
2023-11-03 12:27:55 +01:00
Andy Wilkinson 9eda564d06 Fix check for using CoordinatedRestoreAtCheckpointStartup
Closes gh-38186
2023-11-03 09:58:13 +00:00
Scott Frederick 99986a2fdd Polish SSL internals 2023-11-02 14:41:06 -05:00
Moritz Halbritter d3f177be71 Polish SSL 2023-11-02 09:36:06 +01:00
Phillip Webb a35fb7505f Merge branch '3.1.x'
Closes gh-38179
2023-11-01 18:22:39 -07:00
Phillip Webb 683d791104 Merge branch '3.0.x' into 3.1.x
Closes gh-38178
2023-11-01 18:22:28 -07:00
Phillip Webb e5c8723dda Merge branch '2.7.x' into 3.0.x
Closes gh-38177
2023-11-01 18:22:06 -07:00
Phillip Webb eecb15d1ba Rename startDaemonAwaitThread() inside TomcatWebServer to match intent
Closes gh-38155
2023-11-01 18:21:36 -07:00
Phillip Webb 9b71ef4114 Polish and refactor some SSL internals
Polish and refactor some of the internal SSL code to make it easier to
add additional functionality in the future.
2023-11-01 16:14:59 -07:00
Phillip Webb 30a7426e86 Apply key property to the keystore and not to the truststore
Update `PropertiesSslBundle` so that key properties are now
only applied to the keystore and not the truststore.

Closes gh-38125
2023-11-01 16:10:51 -07:00
Phillip Webb 1b61bc1f20 Move PEM verification to spring-boot-autoconfigure
Move `KeyVerifier` to spring-boot-autoconfigure to reduce the
public API required in `PemSslStoreBundle`.

This commit also moves the verify property so that is can be set
per store.

Closes gh-38173
2023-11-01 16:10:16 -07:00
Phillip Webb 5e5d2265f5 Introduce `PemSslStore` as an alternative to `PemSslStoreDetails`.
Add a `PemSslStore` interface that can be used as an alternative
to `PemSslStoreDetails` when PEM content has already been loaded
and parsed.

Closes gh-38175
2023-11-01 16:06:28 -07:00
Phillip Webb 2b39ec6f60 Introduce a public `PemContent` class
Update `PemContent` so that it now holds PEM data and is public.
This update is required so that in the future we can make use of
our PEM parsing code in spring-boot-autoconfigure.

Closes gh-38174
2023-11-01 16:02:51 -07:00
Phillip Webb 2c6fca8df7 Allow alias and password to be configured on a per PEM store basis
Closes gh-38124
2023-11-01 16:02:33 -07:00
Phillip Webb 8bf847e549 Rename keyAlias parameter to alias
Rename the keyAlais parameter to alias since it may be used as either
the key alias or the certificate alias.

Also clarify the javadoc for keyPassword.

Closes gh-38099
2023-11-01 16:01:46 -07:00
Andy Wilkinson 173e6543fd Merge branch '3.1.x'
Closes gh-38168
2023-11-01 15:06:20 +00:00
Andy Wilkinson 40ce6182a1 Merge branch '3.0.x' into 3.1.x
Closes gh-38167
2023-11-01 15:03:29 +00:00
Andy Wilkinson b7f00c1087 Merge branch '2.7.x' into 3.0.x
Closes gh-38166
2023-11-01 15:02:54 +00:00
Christoph Dreis 990afd844f Fix typos in method names
See gh-38153
2023-11-01 14:59:49 +00:00
Moritz Halbritter 20edbb402f Merge branch '3.1.x' 2023-10-31 10:23:13 +01:00
Moritz Halbritter 607ed86edb Merge branch '3.0.x' into 3.1.x 2023-10-31 10:23:01 +01:00
Moritz Halbritter 3d4a9dd059 Polish StandardConfigDataResource 2023-10-31 09:49:01 +01:00
Moritz Halbritter e7c26b9410 Polish BeanDefinitionLoader 2023-10-31 09:49:01 +01:00
Johnny Lim 1b6431c219 Fix shouldStopKeepAliveThreadIfContextIsClosed()
See gh-38103
2023-10-30 09:26:16 +01:00
Moritz Halbritter 5ff4a961b1 Polish 0fbb1f7890
See gh-38029
2023-10-26 15:18:02 +02:00
Moritz Halbritter 8095c2a94b Polish "Extract "server.ports" hardcoding into a constant"
See gh-38029
2023-10-26 14:35:02 +02:00
DevSeoRex 01e2f70c73 Extract "server.ports" hardcoding into a constant
See gh-38029
2023-10-26 14:31:57 +02:00
Andy Wilkinson 0950d4416a Pass in filter's name when adding to MockMvc
Closes gh-38001
2023-10-24 12:39:42 +01:00
Phillip Webb 7bd9989614 Fix merge conflict errors
See gh-37999
2023-10-23 19:40:44 -07:00
Phillip Webb 2ac69160c7 Revert "Allow PemPrivateKeyParser to parse multiple keys"
This reverts commit 32e6ce210e.

Closes gh-37999
2023-10-23 18:32:12 -07:00
Johnny Lim b5d4983829 Polish
See gh-37984
2023-10-23 11:15:27 +02:00
Andy Wilkinson 9897576562 Polish d22969ae
The current threads must be retrieved each time so that we can see
the keep-alive thread dying.

See gh-37736
2023-10-20 12:57:17 +01:00
Andy Wilkinson d22969ae09 Tolerate race condition in shouldStopKeepAliveThreadIfContextIsClosed
See gh-37736
2023-10-20 10:19:34 +01:00
Phillip Webb 3eeb1b2849 Merge branch '3.1.x' 2023-10-19 23:21:42 -07:00
Phillip Webb 9f3afb3636 Merge branch '3.0.x' into 3.1.x 2023-10-19 23:21:20 -07:00
Phillip Webb 7c864804d5 Merge branch '2.7.x' into 3.0.x 2023-10-19 23:21:08 -07:00
Phillip Webb d47f8bf945 Update copyright year of changed files 2023-10-19 23:20:43 -07:00
Phillip Webb 25ce0ef3fc Refine `PemContent` and PEM parsers 2023-10-19 23:19:45 -07:00
Phillip Webb 32e6ce210e Allow PemPrivateKeyParser to parse multiple keys
Update `PemPrivateKeyParser` so that it can parse multiple keys in a
single PEM file.

Closes gh-37970
2023-10-19 22:01:23 -07:00
Phillip Webb deb79425ee Polish 2023-10-19 21:47:13 -07:00
Phillip Webb d638bbb0ba Merge branch '3.1.x'
Closes gh-37967
2023-10-19 21:25:44 -07:00
Phillip Webb 1d456e09d2 Merge branch '3.0.x' into 3.1.x
Closes gh-37966
2023-10-19 21:12:52 -07:00
Phillip Webb a0b999c8b4 Merge branch '2.7.x' into 3.0.x
Closes gh-37965
2023-10-19 20:55:51 -07:00
Phillip Webb abdad1cabe Constently use assertThatExceptionOf... assertions
Closes gh-37964
2023-10-19 20:17:26 -07:00
Andy Wilkinson e25886f2de Consider checkpoint restoration when logging start time and uptime
Closes gh-37084
2023-10-19 19:54:58 +01:00
Andy Wilkinson af2e363252 Merge branch '3.1.x'
Closes gh-37942
2023-10-18 18:50:52 +01:00
Andy Wilkinson 226221073c Merge branch '3.0.x' into 3.1.x
Closes gh-37941
2023-10-18 18:39:29 +01:00
Andy Wilkinson a25472ab5b Merge branch '2.7.x' into 3.0.x
Closes gh-37940
2023-10-18 18:39:16 +01:00
Andy Wilkinson 817debb1ee Fix constructor binding with conversion to custom collection type
Closes gh-37734
2023-10-18 17:47:26 +01:00
Andy Wilkinson 8d006f82f7 Merge branch '3.1.x'
Closes gh-37939
2023-10-18 17:46:19 +01:00
Andy Wilkinson 9219fdc638 Merge branch '3.0.x' into 3.1.x
Closes gh-37938
2023-10-18 17:44:30 +01:00
Andy Wilkinson 865203f902 Merge branch '2.7.x' into 3.0.x
Closes gh-37937
2023-10-18 17:37:37 +01:00
Andy Wilkinson 04307aa7e0 Polish "Support @Order on [CommandLine|Application]Runner @Bean definitions"
See gh-37905
2023-10-18 17:16:48 +01:00
Tadaya Tsuyukubo 8ac597c245 Support @Order on [CommandLine|Application]Runner @Bean definitions
Prior to this commit, `@Order` annotation on `@Bean` method was not
considered for `CommandLineRunner` and `ApplicationRunner`.

This commit introduces a `Runner` marker interface and uses it to
retrieve the runner beans. As a result, it enables the use of `@Order`
annotations on `@Bean` methods for both `CommandLineRunner` and
`ApplicationRunner`.

Signed-off-by: Tadaya Tsuyukubo <tadaya@ttddyy.net>

See gh-37905
2023-10-18 17:15:15 +01:00
Andy Wilkinson daa903ab31 Add filters to MockMvc with their init params and dispatcher types
Closes gh-37835
2023-10-17 17:54:36 +01:00
Andy Wilkinson 9f224ff136 Narrow the scope of 0e3a196 to Resource[] for array binding
See gh-15835
2023-10-16 18:18:34 +01:00
Andy Wilkinson 19fd88b25b Implement SSL hot reload for Netty and Tomcat
Closes gh-37808
2023-10-16 14:08:26 +01:00
Andy Wilkinson 0e3a196af5 Fix binding of classpath*: to resource arrays and collections
Fixes gh-15835
2023-10-16 11:28:35 +01:00
Andy Wilkinson 085e12aa93 Merge branch '3.1.x'
Closes gh-37884
2023-10-13 16:39:21 +01:00
Andy Wilkinson 0c1b5d1295 Merge branch '3.0.x' into 3.1.x
Closes gh-37883
2023-10-13 16:39:02 +01:00
Andy Wilkinson e314e11985 Fix AOT processing of @MultipartConfig annotated @WebServlet
Closes gh-37637
2023-10-13 16:22:38 +01:00
Moritz Halbritter fcf77ed65d Add property to stop the JVM from exiting
spring.main.keep-alive=true will spawn a non-daemon thread which stops
if the context is closed

Closes gh-37736
2023-10-12 17:02:47 +02:00
Phillip Webb b3ddec7793 Refactor Jetty SameSiteSupplier cookie support to use a Handler
Update `JettyServletWebServerFactory` so that the `SimeSiteSupplier`
support is handled using a `Handler` rather than a `HttpStream.Wrapper`.

Closes gh-37809
2023-10-10 15:57:32 -07:00
Andy Wilkinson 1d410dccea Adapt to breaking API change in Framework
See gh-37710
2023-10-10 17:21:33 +01:00
Andy Wilkinson 15ee305ef3 Upgrade to Jetty 12.0.2
Closes gh-37803
2023-10-10 16:42:35 +01:00
Moritz Halbritter 0a16ec17e9 Add property to enable key verification on PEM SSL bundles
Closes gh-37727
2023-10-05 09:49:49 +02:00
Phillip Webb fd9b2b114e Improve Tomcat performance when using nested jars
Add `NestedJarResourceSet` which can be used for nested jar URLs
and unlike the standard Tomcat implementation does not assume that
the JAR is backed by a single file.

Closes gh-37452
2023-10-03 17:27:57 -07:00
Andy Wilkinson 7d40a45b50 Merge branch '3.1.x'
Closes gh-37662
2023-10-03 11:21:29 +01:00
Andy Wilkinson a4100e12ff Merge branch '3.0.x' into 3.1.x
Closes gh-37661
2023-10-03 11:05:51 +01:00
Andy Wilkinson 931584f8af Merge branch '2.7.x' into 3.0.x
Closes gh-37659
2023-10-03 10:28:51 +01:00
Johnny Lim c9932bb73a Use AssertJ's fail, not JUnit's
This commit also updates Checkstyle to prevent use of JUnit's
assertions from being reintroduced.

See gh-37655
2023-10-03 10:11:12 +01:00
Andy Wilkinson d725914cd5 Merge branch '3.1.x'
Closes gh-37636
2023-09-29 18:36:25 +01:00
Andy Wilkinson 1e4deed8ce Merge branch '3.0.x' into 3.1.x
Closes gh-37635
2023-09-29 18:36:09 +01:00
Andy Wilkinson 458418be29 Automatically register reflection hints for scanned WebListeners
Closes gh-36008
2023-09-29 18:09:36 +01:00
Andy Wilkinson 145fb161a1 Merge branch '3.1.x'
Closes gh-37601
2023-09-27 12:50:58 +01:00
Andy Wilkinson 0368fc5678 Merge branch '3.0.x' into 3.1.x
Closes gh-37600
2023-09-27 12:38:21 +01:00