Commit Graph

75 Commits (4c0a70ced668e8aeb3043dc2fc0f1353f301436c)

Author SHA1 Message Date
Andy Wilkinson f8a5e3d0b7 Configure Wildfly sample to exclude Wildfly's version of Jackson
Closes gh-9391
8 years ago
Andy Wilkinson 2090bef08e Configure Glassfish sample to use parent-last class loader delegation
Glassfish bundles an old and incomplete version of Glassfish. By
default, this leads to some of Jackson's classes being loaded from
inside the war file and others being loaded from Glassfish itself.
This mixture of versions does not end well and the application fails
to deploy.

This commit adds a Glassfish-specific deployment descriptor to
invert the web app class loader's delegation model. Rather than
preferring classes available from its parent, it will now prefer
those packaged inside the war file.

Closes gh-9391
8 years ago
Andy Wilkinson f03daae02c Revert "Work around https://issues.jboss.org/browse/WFLY-8515"
This reverts commit 874b1f4870. A
change has been made to Spring Framework to work around the problem.
As a result, this workaround is no longer necessary.
8 years ago
Andy Wilkinson 874b1f4870 Work around https://issues.jboss.org/browse/WFLY-8515 8 years ago
Stephane Nicoll 698aa94cb4 Fix import 8 years ago
Phillip Webb 33e54ed723 Relocate `org.springframework.boot.web.support`
Move `org.springframework.boot.web.support` under the `servlet` package.

Fixes gh-8557
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
Spring Buildmaster 5c12500366 Next Development Version 8 years ago
Spring Buildmaster a2696bf873 Next Development Version 8 years ago
Spring Buildmaster ed1ce140c0 Next Development Version 8 years ago
Andy Wilkinson 357b9d6671 Correct the version of parent pom in new WLP deployment test module 8 years ago
Andy Wilkinson 70a8836909 Merge branch '1.5.x' 8 years ago
Andy Wilkinson cb7ae2e60a Add a deployment test for WebSphere Liberty Profile
Closes gh-7419
8 years ago
Spring Buildmaster 9057f9ae1f Next development version 8 years ago
Andy Wilkinson 4431f9bd12 Use TomEE 7.0.2 for deployment tests
Following the release of TomEE 7.0.2, 7.0.1 is no longer available
from https://www.apache.org/dist. This commit upgrades to 7.0.2 and
also switches to using https://archive.apache.org/dist where binaries
appear to be be permanently availble.
8 years ago
Spring Buildmaster e712a9ba8c Next Development Version 8 years ago
Stephane Nicoll 9bc77254a7 Start building against Spring Framework 5 snapshot
This commit enables compatibility build against Spring Framework 5.

The Velocity and Guava support that are deprecated in the 1.x line have
been removed and few other classes contain minor change to comply to non
backward compatible changes in Spring Framework 5.

This commit also switches the required java version to 8.

Closes gh-6977
8 years ago
Stephane Nicoll 6643ec3713 Next development version 8 years ago
Stephane Nicoll 6bd670edbc Initiate 1.4.x branch 8 years ago
Spring Buildmaster 7e9ed5e1a7 Next Development Version 8 years ago
Spring Buildmaster 334baaeffd Next development version 8 years ago
Andy Wilkinson 3348ed5bb3 Make use of new GetMapping and PostMapping annotations
Closes gh-5277
9 years ago
Phillip Webb 609cb52cd4 Move to relocated web classes
Refactor code to move from recently deprecated classes.

Closes gh-5822
9 years ago
Phillip Webb bdd9d510eb Upgrade TomEE Tests to 1.7.4 9 years ago
Andy Wilkinson ca716561dc Update deployment test exclusions after web starter validation changes
The changes made in a6c1668b mean that the web starter no longer
depends on spring-boot-starter-validation. Instead, it depends
directly on hibernate-validator. This means that the exclusion of the
validation starter in the TomEE deployment test app no longer matches
anything and hibernate-validator is packaged in the war. This breaks
the application as TomEE ships with Bean Validation 2.0 and the
version of Hibernate Validator being used requires 2.1.

This commit updates the exclusions in the TomEE deployment app so that
hibernate-validator is excluded once again. This allows the app to
use TomEE's bundled Bean Validation implementation.

The stale spring-boot-starter-validation exclusion has been removed
from the Wildfly deployment test app. It is redundant as Wildfly ships
with Bean Validation 2.1. This brings this test app into line with
the Glassfish test app.

Closes gh-5454
9 years ago
Phillip Webb 2f815a907a Migrate existing tests from deprecated package
Update the existing tests to use the relocated `spring-boot-test`
classes. Restructuring was achieved using the following command:

find . -type f -name '*.java' -exec sed -i '' \
-e s/org.springframework.boot.test.ConfigFileApplicationContextInitializer/\
org.springframework.boot.test.context.ConfigFileApplicationContextInitializer/g \
-e s/org.springframework.boot.test.EnvironmentTestUtils/\
org.springframework.boot.test.util.EnvironmentTestUtils/g \
-e s/org.springframework.boot.test.IntegrationTest/\
org.springframework.boot.test.context.IntegrationTest/g \
-e s/org.springframework.boot.test.IntegrationTestPropertiesListener/\
org.springframework.boot.test.context.IntegrationTestPropertiesListener/g \
-e s/org.springframework.boot.test.OutputCapture/\
org.springframework.boot.test.rule.OutputCapture/g \
-e s/org.springframework.boot.test.SpringApplicationConfiguration/\
org.springframework.boot.test.context.SpringApplicationConfiguration/g \
-e s/org.springframework.boot.test.SpringApplicationContextLoader/\
org.springframework.boot.test.context.SpringApplicationContextLoader/g \
-e s/org.springframework.boot.test.SpringBootMockServletContext/\
org.springframework.boot.test.mock.web.SpringBootMockServletContext/g \
-e s/org.springframework.boot.test.TestRestTemplate/\
org.springframework.boot.test.web.client.TestRestTemplate/g \
-e s/org.springframework.boot.test.WebIntegrationTest/\
org.springframework.boot.test.context.web.WebIntegrationTest/g {} \;

See gh-5293
9 years ago
Andy Wilkinson 44ddfcc7fa Upgrade copyright headers of all files changed in 2016 9 years ago
Phillip Webb 89b7704977 Extract spring-boot-test.jar
Relocate the `org.springframework.boot.test` package from the
`spring-boot.jar` to `spring-boot-test.jar`.

Fixes gh-5184
9 years ago
Phillip Webb c5add2ef08 Use AssertJ in spring-boot-deployment-tests
See gh-5083
9 years ago
Phillip Webb fbaf209240 Move master to 1.4.0.BUILD-SNAPSHOT 9 years ago
Spring Buildmaster 504d3e97ba Next development version 9 years ago
Andy Wilkinson 2aff82bb64 Merge branch '1.2.x' 9 years ago
Spring Buildmaster 8db59059a5 Next Development Version 9 years ago
Stephane Nicoll bb736e255b Fix SNAPSHOT version 9 years ago
Spring Buildmaster 3f6f57a80e Next Development Version 9 years ago
Andy Wilkinson f54b5d7ac1 Change ordering of deployment tests to keep Cargo happy
For some reason, Cargo fails when the Tomcat deployment tests are run
after the TomEE deployment tests. It complains that it can’t find one
of its own classes. This commit changes the order so that the TomEE
tests run before the Tomcat tests.

\_(ツ)_/¯
9 years ago
Andy Wilkinson c4122b8f8d Work around brittle annotation scanning in Mojarra
FacesListener in Mojarra 2.2.12 (used in Glassfish 4.1.1) is a
ServletContainerInitializer that’s annotated to handle types annotated
with javax.annotation.Resource.
OAuth2RestOperationsConfiguration.SessionScopedConfiguration is one such
class. This leads to com.sun.faces.config.DelegatingAnnotationProvider
calling getAnnotations on SessionScopedConfiguration.class. This fails
with a java.lang.ArrayStoreException due to SessionScopedConfiguration
being annotated with @ConditionalOnBean(OAuth2ClientConfiguration) and
OAuth2ClientConfiguration not being on the classpath.
DelegatingAnnotationProvider currently catches NoClassDefFoundErrors
thrown during its annotation processing. It needs to be made more
robust so that it also copes with an ArrayStoreException, in a similar
way to how org.glassfish.apf.impl.AnnotationProcessorImpl was updated to
fix GLASSFISH-21265 [1]. I’ve opened an issue to this effect [2].

In the meantime, we can work around the brittleness in
DelegatingAnnotationProvider by restructuring
SessionScopedConfiguration. This commit moves the use of @Resource into
a nested inner class, ClientContextConfiguration, while leaving the use
of @ConditionalOnBean on SessionScopedConfiguration. This means that it
is now ClientContextConfiguration that is passed to FacesListener and
processed by DelegatingAnnotationProcessor, thereby avoiding exposing
it to the @ConditionalOnBean annotation that it does not handle
gracefully. A Glassfish-based deployment test has also been added to
verify the fix.

Closes gh-2079
Closes gh-4321

[1] https://java.net/jira/browse/GLASSFISH-21265
[2] https://java.net/jira/browse/JAVASERVERFACES-4076
9 years ago
Phillip Webb 1e4d974ec0 Merge remote-tracking branch 'local12x/1.2.x' 9 years ago
Phillip Webb a79131f8d2 Organize imports with new settings
See gh-4234
9 years ago
Spring Buildmaster 2b38a861e3 Next Development Version 9 years ago
Andy Wilkinson 5af0903c0e Merge branch '1.2.x' 9 years ago
Andy Wilkinson 9218d5ad11 Use Maven Central as source of Tomcat binaries for deployment tests
Closes gh-4151
9 years ago
Phillip Webb 6ab376e2e8 Reformat code use Eclipse Mars 9 years ago
Andy Wilkinson 3697dd52a0 Use main Apache archive for Tomcat binaries to improve(?) build stability
Mirrors of archive.apache.org only mirror the latest release of each
project so, as new releases are made, builds using older versions will
break as the mirrors are updated.

This commit updates the Tomcat deployment test to use the main Apache
archive site. This should provide long-term access to Tomcat binaries,
improving build stability and ensuring that tagged builds are
repeatable.

Backport of 5f087e6444
9 years ago
Andy Wilkinson 5f087e6444 Use main Apache archive for Tomcat binaries to improve(?) build stability
Mirrors of archive.apache.org only mirror the latest release of each
project so, as new releases are made, builds using older versions will
break as the mirrors are updated. T

This commit updates the Tomcat deployment test to use the main Apache
archive site. This should provide long-term access to Tomcat binaries,
improving build stability and ensuring that tagged builds are
repeatable.
9 years ago
Phillip Webb 7ed1534c7b Exclude validation JARs from deployment tests
Exclude spring-boot-starter-validation since those jars are provided
by the container.
9 years ago
Spring Buildmaster 9409c49c10 Next development version 9 years ago
Phillip Webb 9a779a09b4 Merge branch '1.2.x' 9 years ago