This commit polishes the smoke test for Spring Web Services, namely
clearing unused dependencies and clarify the necessary configuration:
1. No need to extend from `WsConfigurationAdapter` if no advanced
configuration is required
2. Spring Web Services creates a `XsdSchema` bean whose name matches
the name of the file. Added a `@Qualifier("hr")` to make that more
obvious as it would break if an additional schema was to be added.
Closes gh-44515
Add new methods to `QuartzEndpoint` and `QuartzEndpointWebExtension`
to allow a Quartz job to be triggered on demand.
See gh-43086
Signed-off-by: Dmytro Nosan <dimanosan@gmail.com>
The config data loader supports the env: prefix and also accepts
extension hints.
Example: env:VAR1[.properties] reads the environment
variable 'VAR1' in properties format (using the
PropertiesPropertySourceLoader).
The PropertySourceLoaders are loaded via spring.factories.
Also adds a smoke test to test it end to end.
Closes gh-41609
Fix `SystemStatusListener` so that superfluous output is not
printed when starting an application. This change ensures that
the `SystemStatusListener` is not added twice, and that
retrospective logging only occurs when `debug` is true.
See gh-43931
Signed-off-by: Dmytro Nosan <dimanosan@gmail.com>
Update `LogbackLoggingSystem` so that the `OnErrorConsoleStatusListener`
is also registered when loading a custom Logback configuration file.
See gh-43931
Signed-off-by: Dmytro Nosan <dimanosan@gmail.com>
Before this commit, any exceptions thrown in Logback encoders
were just swallowed. This commit adds the FilteringStatusListener
that delegates to OnErrorConsoleStatusListener to print any errors
that happened in logback encoders.
See gh-43575
Signed-off-by: Dmytro Nosan <dimanosan@gmail.com>
Update `Log4J2LoggingSystem` so that the `StatusLogger` fallback
listener has its print stream reset on each initialization. This
allows output capture to work with the status listener.
Fixes gh-43578
Co-authored-by: Phillip Webb <phil.webb@broadcom.com>
Update `ClientHttpRequestFactoryBuilder` implementations to ensure
that all libraries have consistent redirect follow behavior. Following
of redirects is enabled by default.
The `ClientHttpRequestFactorySettings` may be used to change if
redirects should be followed. The `spring.http.client.redirects`
property may also be used to update the default behavior.
Closes gh-42879
Add a new `HttpClientAutoConfiguration` class that provides
`ClientHttpRequestFactoryBuilder` and `ClientHttpRequestFactorySettings`
beans and new configuration properties.
The existing `RestTemplate`, `RestClient` and `WebServiceTemplate`
auto-configurations have been updated to make use of the new
HTTP client support.
Users may now set `spring.http.client` property to globally change
the `ClientHttpRequestFactory` used in their application.
Closes gh-36266
This commit reworks the support for enabling and disabling endpoints,
replacing the on/off support that it provided with a finer-grained
access model that supports only allowing read-only access to endpoint
operations in addition to disabling an endpoint (access of none) and
fully enabling it (access of unrestricted).
The following properties are deprecated:
- management.endpoints.enabled-by-default
- management.endpoint.<id>.enabled
Their replacements are:
- management.endpoints.access.default
- management.endpoint.<id>.access
Similarly, the enableByDefault attribute on @Endpoint has been
deprecated with a new defaultAccess attribute replacing it.
Additionally, a new property has been introduced that allows an
operator to control the level of access to Actuator endpoints
that is permitted:
- management.endpoints.access.max-permitted
This property caps any access that may has been configured for
an endpoint. For example, if
management.endpoints.access.max-permitted is set to read-only and
management.endpoint.loggers.access is set to unrestricted, only
read-only access to the loggers endpoint will be allowed.
Closes gh-39046