Commit Graph

10980 Commits (3a8be10be8a0e85632273ea4c6a2beb34a202220)
 

Author SHA1 Message Date
Brian Clozel 3a8be10be8 Enable Tomcat, Jetty and Undertow reactive auto-conf
Closes gh-8403
8 years ago
Stephane Nicoll f1d4d8434b Hide javax.servlet.SessionTrackingMode
The server's session can now be configured in both a servlet and a
reactive environment. The latter has not requirement on the servlet API
and this commit removes the requirement to the `SessionTrackingMode`
enum.

Closes gh-8402
8 years ago
Brian Clozel f12a634843 Fix typo in spring-webflux dependency 8 years ago
Brian Clozel d1eafa29da Add missing dependency in docs generation
Reactor Netty and Spring WebFlux were missing.
8 years ago
Stephane Nicoll 12397edbd4 Expose a WebTestClient with `@SpringBootTest`
This commit exposes a `WebTestClient` automatically in a reactive
integration test that uses an embedded web server. This is similar to
what we do with `TestRestTemplate` for servlet based integration tests.

Closes gh-8399
8 years ago
Brian Clozel c1e93d8991 Add WebFlux application sample
This commit adds a sample application for the
annotation variant of Spring WebFlux.
8 years ago
Stephane Nicoll 54939e8e3c Start a reactive web application if necessary
This commit makes sure that `@SpringBootTest` with a reactive setup
starts a web application if necessary.

If both a servlet and a reactive environment are available, a servlet
environment is bootstraped. This commit also adds a way to force a
reactive environment by specifying the `spring.main.web-application-type`
property of the test (e.g. `@TestPropertySource`).

Closes gh-8383
8 years ago
Brian Clozel 8317977e1b Add WebFlux auto-configuration
This commit creates auto-configuration classes for both the
annotation and functional variants of the WebFlux framework.

They provide the basic support to get started with those, by
creating the required `HttpHandler` using the provided application
context (for annotation) or `RouterFunction`s (for functional).

They do support `WebFilter` registration and a few advanced
features such as resource handling, `messageReaders|Writers`
and `ViewResolver` auto-registration.

Closes gh-8386
8 years ago
Brian Clozel 656b509f03 Add support for reactive web servers auto-configuration
This commit adds the auto-configuration for creating reactive
`EmbeddedWebServer` instances. This adds support for the
following servers: Reactor Netty, Tomcat, Jetty and Undertow.

Fixes gh-8302
Fixes gh-8117
8 years ago
Brian Clozel dc98d909ab Support reactive web servers with LocalServerPort
This commit refactors the `EmbeddedWebServerInitializedEvent` hierarchy
to have one specialized event for Servlet based apps and another one for
reactive apps.

Each event implementation has:

* a specific `ApplicationContext` implementation for the app
* a custom `getServerId` implementation that differentiates the
application server from the management server

Closes gh-8348
8 years ago
Brian Clozel 0b162e894b Manage EmbeddedWebServer in ReactiveWebApplicationContext
This commit adds an `EmbeddedWebServer` instance to the
`ReactiveWebApplicationContext` and ties it to the application
lifecycle.

To launch a reactive web application, two elements are required
from the context:

* a `ReactiveWebServerFactory` to create a server instance
* a `HttpHandler` instance to handle HTTP requests

Closes gh-8337
8 years ago
Brian Clozel 21878f8528 Manage Netty in Boot dependencies 8 years ago
Brian Clozel f331ac133f Add reactive web server infrastructure
This commit adds the infrastructure for creating and customizing
reactive embedded web servers. Common configuration has been refactored
into the new `ConfigurableEmbeddedWebServer` interface.

See gh-8302
8 years ago
Stephane Nicoll a38d2456c3 Merge branch '1.5.x' 8 years ago
Stephane Nicoll 4aa99b9531 Avoid exposing several javax.validaton.Validator beans
This commit makes sure that the Spring `Validator` used by the MVC
layer doesn't expose a JSR-303 contract, if any.

The default implementation of the `mvcValidator` is
`LocalValidatorFactoryBean`. While this object is exposed as a Spring
`Validator` only, its runtime capabilities expose that contract as well
as the standard `Validator` and `ValidatorFactory` ones.

Concretely, if an auto-configuration is checking if a
`javax.validation.Validator` bean is missing, the condition will match
since we only know about "advertized types": beans haven't been created
yet so we can't inspect their runtime capabilities. Since the condition
match, we will auto-configure a bean. At runtime though, we're no longer
ale to inject a `javax.validation.Validator` by type since two candidates
are available.

This commit introduces `SpringValidatorAdapterWrapper`, a wrapper class
on any `SpringValidatorAdapter` (`LocalValidatorFactoryBean` being one of
the available implementations) that only exposes the Spring contract.

Also, if a `javax.validation.Validator` bean is available, we will use it
for the MVC layer, rather than creating a new one.

Closes gh-8223
8 years ago
Andy Wilkinson 3164330139 Correct HAL Browser location to reflect version of web jar
See gh-8382
8 years ago
Andy Wilkinson 7e6ad316aa Update exclusions to reflect change in Hibernate's JPA API dependency
See gh-8379
8 years ago
Andy Wilkinson 466f8926b5 Add dependency management for Commons Lang3
Closes gh-7896
8 years ago
Andy Wilkinson 145e2d206c Upgrade to Selenium HtmlUnit 2.24
Closes gh-7232
8 years ago
Andy Wilkinson 9cbb857111 Add explicit dependency on Gson
It used to be pulled in transitively by selenium-api but that's no
longer that case.

See gh-8381
8 years ago
Andy Wilkinson 233e6151b9 Upgrade to Webjars Hal Browser 3325375
Closes gh-8382
8 years ago
Andy Wilkinson 89845fb2eb Upgrade to Selenium 3.1.0
Closes gh-8381
8 years ago
Andy Wilkinson 008953adc9 Upgrade to Hibernate Validator 5.4.0.Final
Closes gh-8380
8 years ago
Andy Wilkinson d0fb8fc46a Upgrade to Hibernate 5.2.8.Final
Closes gh-8379
8 years ago
Andy Wilkinson ab06600fa9 Upgrade to Rxjava2 2.0.6
Closes gh-8378
8 years ago
Andy Wilkinson 4b7f90a0c6 Upgrade to Rxjava 1.2.6
Closes gh-8377
8 years ago
Andy Wilkinson 7cb5edf590 Upgrade to Reactor Bom Aluminium-SR1
Closes gh-8376
8 years ago
Andy Wilkinson f52449b5f5 Upgrade to Netty 4.1.8.Final
Closes gh-8375
8 years ago
Andy Wilkinson 5bace9dff6 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 50bc321621 Upgrade to Spring Kafka 1.1.3.RELEASE
Closes gh-8374
8 years ago
Andy Wilkinson cbffc51b48 Upgrade to Mongodb 3.4.2
Closes gh-8373
8 years ago
Andy Wilkinson 73b7b3d7be Upgrade to Mariadb 1.5.8
Closes gh-8372
8 years ago
Andy Wilkinson e211602f4a Upgrade to Narayana 5.5.2.Final
Closes gh-8371
8 years ago
Andy Wilkinson e5c05b3193 Upgrade to Artemis 1.5.3
Closes gh-8370
8 years ago
Andy Wilkinson 789257b76b Upgrade to Undertow 1.4.10.Final
Closes gh-8369
8 years ago
Andy Wilkinson 1f6c52022d Upgrade to Cassandra Driver 3.1.4
Closes gh-8368
8 years ago
Andy Wilkinson 4ff159adbe Merge branch '1.5.x' 8 years ago
Andy Wilkinson b034a505a5 Polish 0f42c5dd
- Apply standard code formatting
- Add class javadoc to MultipleResourceServerConfigurationTests
- Add missing @Override annotations
- Remove unused ExpectedException field
- Remove use of SpringApplicationBuilder from the tests
- Use @ImportAutoConfiguration to import auto-configuration
- Add assertions to verify that the orders haven't been changed
- Remove unnecessary mocking of EmbeddedServletContainerFactory

See gh-8347
8 years ago
Andy Wilkinson 5e6ff9a855 Merge branch '1.5.x' 8 years ago
Andy Wilkinson f4eb45ac6d Merge branch '1.4.x' into 1.5.x 8 years ago
Andy Wilkinson 99683dff6f Upgrade to Logback 1.1.10
In Logback 1.1.10, the logback-classic module contains a
META-INF/services/javax.servlet.ServletContainerInitializer file that
contains a comment. This triggers a bug in Wildfly 8 [1] that has been
fixed [2] in Wildfly 9 and later. As a result, this commit also
updates our Wildfly deployment test to use 9.0.2 rather than 8.2.0.

Closes gh-8354

[1] https://issues.jboss.org/browse/WFLY-4089
[2] fef57ebdc7
8 years ago
Dave Syer c544aff72f Merge remote-tracking branch 'origin/1.5.x' 8 years ago
Dave Syer 0f42c5dd94 Check there is only one ResourceServerConfiguration before modifying
Fixes gh-8347
8 years ago
Andy Wilkinson c9f45e3ffa Merge branch '1.5.x' 8 years ago
Andy Wilkinson f952b2492a Merge branch '1.4.x' into 1.5.x 8 years ago
Andy Wilkinson 6af4b10b9d Revert "Upgrade to Logback 1.1.10"
This reverts commit 05113d059d.

See gh-8354
8 years ago
Andy Wilkinson 0de66a19f2 Merge branch '1.5.x' 8 years ago
Andy Wilkinson 1e4830e713 Merge branch '1.4.x' into 1.5.x 8 years ago
Andy Wilkinson b3d0b3330b Upgrade to Slf4j 1.7.23
Closes gh-8364
8 years ago
Andy Wilkinson 357667e97d Upgrade to Lombok 1.16.14
Closes gh-8363
8 years ago