Commit Graph

1007 Commits (1d589fc55a06a47b06d50ba2f993f2d21e9de168)

Author SHA1 Message Date
Andy Wilkinson 92bb24e365 Avoid synchronizing on this and use an internal monitor instead
Where possible, code that previously synchronized on this (or on the
class in the case of static methods) has been updated to use an
internal monitor object instead. This allows the locking model that's
employed to be an implementation detail rather than part of the
class's API.

Classes that override a synchronized method continue to declare
the overriding method as synchronized. This ensures that locking
is consistent across the superclass and its subclass.

Closes gh-6262
9 years ago
Andy Wilkinson 93307bbd5b Merge branch '1.3.x' 9 years ago
Andy Wilkinson 17546628f5 Remove springloaded from samples
springloaded isn't required in any of the samples, yet some of them
make use of it without being a springloaded-specific sample. This
is creating the false impression that springloaded is necessary in
cases where it's not.
9 years ago
Andy Wilkinson 52e8ad4b6b Drop back to Hibernate 5.0.9.Final
The upgrade to Hibernate 5.2.0.Final has provide to be too
problematic to live with. It requires Java 8, is incompatible with
a number of other projects in the Hibernate ecosystem, and it's
unclear for how long it will be maintained. We'd previously used
Hibernate 5.1.0.Final but its maintenance is also unclear with
Hibernate 5.1.1.Final being more than 3 months overdue.

This commit drops back to Hibernate 5.0.9.Final. This has a few
advantages:

- It's Java 7 compatible
- It's had some time to mature and should be reasonably free of
  regressions for those moving from 4.3.x
- It's used in both Wildfly and JBoss EAP so there's a fair chance
  that it will continue to be maintained.

Closes gh-6198
9 years ago
Phillip Webb 7446235ff4 Polish 9 years ago
Andy Wilkinson 5e4f84cf46 Allow maximum HTTP header size to be configured when using Jetty 8
Closes gh-6190
9 years ago
Andy Wilkinson 5b688de8da Fix artifact id of new Tomcat 8.0 SSL sample
See gh-6164
9 years ago
Andy Wilkinson f28e3d54c5 Upgrade to Tomcat 8.5.3
This commit changes the default version of Tomcat to 8.5.3 while
also retaining support for Tomcat 8.0 and 7.0. The main difference
in 8.5 is that the ServerSocketFactory abstraction that allowed the
TrustStore and KeyStore to be configured programatically no longer
exists. This logic has been replaced with the use of a custom URL
protocol (springbootssl) that provides access to the key store and
trust store of an SslStoreProvider. In addition to working with 8.5,
this approach has the advantage of also working with 8.0 and 7.0.

Closes gh-6164
9 years ago
Stephane Nicoll 2ff9e3cfdc Upgrade to Hibernate 5.2
See gh-6111
9 years ago
Stephane Nicoll 888c5d4589 Polish contribution
Closes gh-6081
9 years ago
Vedran Pavic 8e2e493946 Remove HSQLDB dependency from Batch Starter
This commit removes HSQLDB dependency from Batch Starter as most apps
that use Spring Batch will prefer to use a RDBMS of their choice to store
batch metadata.

Additionally, explicit spring-jdbc dependency has been replaced with JDBC
Starter dependency.

See gh-6081
9 years ago
Vladimir Tsanev b303b3fe35 Support JSPs in Embedded Jetty
JSPs are now supported in executable WARs with embedded Jetty.

Fixes gh-367
Closes gh-5290
9 years ago
Andy Wilkinson ff602e60a0 Change default version of Jetty to 9.3
Closes gh-5825
9 years ago
Stephane Nicoll 17dfec7c4e Resume building against Spring Data Hopper snapshots
See gh-6132
9 years ago
Johnny Lim 5de9516255 Fix typos
Closes gh-6114
9 years ago
Phillip Webb b84330663d Update spring-boot-sample-test REST code
Update RemoteVehicleDetailsService and the related test to use the new
RestTemplateBuilder class and @RestClientTest annotation.

See gh-6030
See gh-5507
9 years ago
Stephane Nicoll f257b6a0b5 Polish "Add activemq starter" contribution
Closes gh-6010
9 years ago
Andy Wilkinson ccd19ce2c3 Merge branch '1.3.x' 9 years ago
Andy Wilkinson 275651e89a Skips Cassandra and Elasticsearch tests on Windows
Neither Cassandra nor Elasticsearch starts reliably on Windows. This
commit adds a custom class rule to the associated sample application
tests to skip them on Windows. A class rule is used rather than a
Unit assumption as we want to avoid starting Elasticsearch (done by
the application context) and Cassandra (done by a test execution
listener) and an assumption would be too late.
9 years ago
Phillip Webb bcfa2e6676 Make TestRestTemplate not extend RestTemplate
Update TestRestTemplate so that it no longer directly extends
RestTemplate. Prior to this commit it was possible that TestRestTemplate
could interfere with user defined RestTemplate beans.

TestRestTemplate offers the same methods as RestTemplate so should be
a drop-in replacement. If access is needed to the actual underlying
template the `getRestTemplate()` method should be used.

Fixes gh-5915
9 years ago
Andy Wilkinson 1947b92481 Avoid exception from dropping non-existent constraint in Data REST sample
Hibernate 5.1 logs an ugly but benign exception when using an in-memory
HSQL database when it tries to drop a non-existent constraint.

This commit changes the Spring Data REST sample to use H2 rather than
HSQL. This prevents the unwanted exception from occurring as Hibernate's
H2 dialect returns false from dropConstraints.
9 years ago
Phillip Webb 4023637b07 Remove accidentally comitted SampleTest 9 years ago
Phillip Webb 6cdbdf9ad3 Polish 9 years ago
Stephane Nicoll dcb4fe8304 Add JMX support to the Spring Integration starter
Closes gh-1440
9 years ago
Andy Wilkinson 5c0d400c23 Align Hibernate 5 join table names with those from SpringNamingStrategy
Previously, the name of a join table when using Hibernate 5 would
differ from those when using Hibernate 4 with the default
SpringNamingStrategy.

This commit introduces SpringImplicitNamingStrategy which customises the
name of join tables to match those produced by SpringNamingStrategy.

Closes gh-5880
9 years ago
Andy Wilkinson 46407c6763 Align JPA sample with Hibernate 5.1’s table naming
The name of the table for a many-to-many relationship has changed in
Hibernate 5.1.

This commit updates the JPA sample’s import.sql accordingly. It also
updates the repository integration tests to verify that the data has
been imported successfully.

Closes gh-5880
9 years ago
Johnny Lim 38dc9ec441 Polish 9 years ago
Stephane Nicoll 8cbbb577a0 Fixup version numbers following release 9 years ago
Stephane Nicoll 9e60340c0e Upgrade to EhCache 3.0.1
Closes gh-5898
9 years ago
Spring Buildmaster 819a9574a6 Next Development Version 9 years ago
Andy Wilkinson 3348ed5bb3 Make use of new GetMapping and PostMapping annotations
Closes gh-5277
9 years ago
Stephane Nicoll 1d6b1d7d57 Fix broken build 9 years ago
Stephane Nicoll 72c2454218 Fixup version numbers following release 9 years ago
Spring Buildmaster 376bbe68d8 Next Development Version 9 years ago
Andy Wilkinson e8e728106e Don’t expect a charset attribute on a text/css Content-Type
Following the encoding change made in 428a10a, the character encoding
of a response is no longer forced.

See gh-5459
9 years ago
Phillip Webb 30e295b5c4 Fix spring-boot-sample-test dependencies 9 years ago
Phillip Webb 2d243f0668 Don't apply multiple session configurations
Add additional @ConditionalOnMissingBean guards to session
configurations to ensure that the first wins. Also reorder imports
to prefer Redis over JDBC.

See gh-5158
9 years ago
Stephane Nicoll ebb4b067a2 Use error attributes in custom error page 9 years ago
Phillip Webb 6d069de79f Add convention based status error pages
Update `spring-boot-sample-web-mustache` to show how convention based
status error pages can be used.

See gh-2691
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 aea18671c1 Restructure web related classes
Reorganize web related classes for better separation of concerns.
Mainly this involves moving classes from `o.s.b.context.embedded`
that aren't directly tied to embedded servlet containers to
`o.s.b.web` and relocating everything from `o.s.b.context.web`.

See gh-5822
9 years ago
Phillip Webb a7cb689f95 Move @LocalServerPort annotation
Move the @LocalServerPort to org.springframework.boot.context.embedded
since it's only really useful when working with embedded servlet
containers.

See gh-5822
9 years ago
Stephane Nicoll c85948ac0c Fix cache sample README
Closes gh-5800
9 years ago
Stephane Nicoll 4c877a67a2 Fix cache sample README
Closes gh-5807
9 years ago
Eddú Meléndez 81bf3867e3 Fix spring-boot-sample-cache Infinispan example
Closes gh-5800
Closes gh-5806
9 years ago
Eddú Meléndez 7b9844f5de Polish spring-boot-sample-cache README
Closes gh-5807
9 years ago
Fabrizio Cucci c51efda2dc Fix spring-boot-sample-data-neo4j description
Replace "Redis" with "Neo4j".

Closes gh-5812
9 years ago
cjstehno 309f8484a7 Fix remote shell to support custom banners
Update the remote shell to use the `Banner` interface when possible.

Fixes gh-3988
Closes gh-5453
9 years ago
Stephane Nicoll f71a207a81 Polish 9 years ago
Fabrizio Cucci 3c901fef42 Removed redundant override of the configure method
Since the `SampleJerseyApplication` class is already passed in the
`SpringApplicationBuilder` constructor, there is no need to override the
configure method of the `SpringBootServletInitializer` class.

Closes gh-5773
9 years ago
Andy Wilkinson 71e665ba87 Update the spring-boot-samples README
Closes gh-5748
9 years ago
Stephane Nicoll 0cfcbeb40e Add dependency management for Ehcache 3
Closes gh-5725
9 years ago
Andy Wilkinson b9d7a39693 Update sample-parent-context following changes to integration starter
See gh-5528
9 years ago
Andy Wilkinson c068285586 Streamline Integration Starter and add Java DSL to it
This commit streamlines the Integration Starter by removing the file
http, ip, and stream modules as they are not always used by a majority
of apps that use Spring Integration and can also pull in other, unwanted
dependencies.

Additionally, a dependency on spring-integration-java-dsl has been
added. This makes it easy for users to configure Spring Integration
using Java configuration (the recommended approach), rather than via
XML. The Integration sample has been updated to use the DSL. Further
improvements could be made once the sample is using Java 8.

Closes gh-5528
9 years ago
Johnny Lim 6d48ee9593 Polish
Closes gh-5714
9 years ago
Phillip Webb 15dee60049 Restore spring-boot-starter-ws
Rename spring-boot-starter-webservices back to spring-boot-starter-ws.
Unfortunately the starter exists in Spring Boot 1.3 so we can't rename
it without consequence.

See gh-5711
9 years ago
Phillip Webb 5881c9c74f Polish 9 years ago
Andy Wilkinson 06c1dd87c9 Fix spring-boot-sample-test pom following Selenium changes in 35270e9 9 years ago
Stephane Nicoll cc0fc07c0e Move `shell.*` to `management.shell.*`
This commit moves the `shell` namespace to `management.shell`

Closes gh-5703
9 years ago
Stephane Nicoll f364d713dd Add `LocalManagementPort`
Add an annotation alias for the actual management port, similar to what
was done for the main context (`LocalServerPort`).

See gh-5548
9 years ago
Stephane Nicoll f561d9d9d8 Polish auto-configuration for Spring Web Services
Closes gh-5645
9 years ago
Vedran Pavic a7b3a913c2 Add auto-configuration for Spring Web Services
Closes gh-1045
9 years ago
Johnny Lim 90d897eb9d Polish
Closes gh-5685
9 years ago
Andy Wilkinson 69499bf329 Make configuration of acceptors and selectors compatible with Jetty 8
The ServerConnector class doesn’t exist in Jetty 8 so we have to
resort to reflection to create and configure a SelectChannelConnector
instead.

Closes gh-5649
See gh-5380
9 years ago
Phillip Webb fa142d929a Restore Jetty 8 compatibility
Acceptors and Selectors aren't supported with Jetty 8.

See gh-5380
9 years ago
Phillip Webb 944a49bd58 Tweak Elasticsearch sample timeout 9 years ago
Stephane Nicoll 99ae6dac53 Customize Couchbase's socket connect timeout
Our Windows build is failing currently because the couchbase server does
not handle a socket connection within a second (the default). This commit
adds a property to customize this option and set it to 10 sec in the
sample.

While investigating this issue, it turns out that while
`CouchbaseConfiguration` is public, it is not really possible to extend
it in user's configuration. This commit fixes this problem and add a test
that demonstrates how it can be used.

Closes gh-5657
9 years ago
Stephane Nicoll 82207ffce5 Attempt to fix Windows build
The couchbase instance in our windows infra seems super slow. Trying to
workaround that issue by increasing the connect timeout from 5 to 10 sec.

See gh-5651
9 years ago
Stephane Nicoll b374c288fa Fix configuration location 9 years ago
Phillip Webb 43d1d92611 Rework ImageBanner Support
Refactor several aspects of the ImageBanner:

- Extract a few new classes and methods from the previous code
- Directly encode ANSI rather than using `${}` properties
- Rework the scaling algorithm to prefer a fixed width
- Allow ImageBanner and TextBanner to be used together
- Rename several of the `banner.image` properties
- Add support for a left hand margin
- Add property meta-data

See gh-4647
9 years ago
Andy Wilkinson 66830ea1e5 Try to make SampleCassandraApplicationTests' port config more robust 9 years ago
Phillip Webb 48800f1818 Polish contribution 9 years ago
Gytis Trikleris a2adc5a130 Add Narayana JTA support
Add support for JBoss Narayana.

Fixes gh-5552
9 years ago
Phillip Webb 1b146f89f0 Fix failing test 9 years ago
Phillip Webb 01c9d72644 Polish 9 years ago
Andy Wilkinson fc6c57413b Update docs to fully reflect BOOT-INF executable archive layout changes
Closes gh-5195
9 years ago
Phillip Webb 1088f70923 Add Hibernate 4 sample
Add a sample showing how Hibernate 4 can be used if necessary.

See gh-2763
9 years ago
Andy Wilkinson e0f9da5afe Remove dependency management for Spring Shell
While the benign exception that Gemfire outputs is unfortunate, it
isn't sufficient justification for adding dependency management for
Spring Shell.

Closes gh-5444
9 years ago
Stephane Nicoll d4a1365a2a Polish contribution
Closes gh-5444
9 years ago
John Blum 67f92bff1e Polish Pivotal GemFire starter and sample
Closes gh-5439
9 years ago
Stephane Nicoll 05ef0818f8 Polish contribution
Closes gh-5511
9 years ago
Huang YunKun 6a2ff3f02a Upgrade elasticsearch to 2.2.0
Closes gh-5443
9 years ago
Phillip Webb b398b3319c Rename @SpringApplicationTest -> @SpringBootTest
Rename @SpringApplicationTest to SpringBootTest and
@SpringApplicationContextLoader to @SpringBootContextLoader.

Fixes gh-5562
9 years ago
Phillip Webb 4d404b214c Migrate away from @SpringApplicationConfiguration
Refactor internal tests to no longer use @SpringApplicationConfiguration

See gh-5562
9 years ago
Dave Syer 72db5becd6 Add comment to pom in sample explaining provided deps 9 years ago
Andy Wilkinson 33f0ea3480 Rework SpringApplicationTest to support web modes
Rework the new testing support so that @SpringApplicationTest can be
used for standard integration tests, web integration tests with a
mock Servlet environment and web integration tests with an embedded
servlet container. This means that it a replacement for 1.3's
@IntegrationTest and @WebIntegrationTest and allows all
SpringApplication testing to be configured using a common annotation.

The old @IntegrationTest and @WebIntegrationTest along with their
supporting classes have been reinstated to their previous form (while
remaining deprecated). This should ensure that they continue to work
in 1.4 exactly as they did in 1.3 giving users a smooth path to
@SpringApplicationTest.

See gh-5477
9 years ago
Johnny Lim a28dd9d9e6 Polish
Closes gh-5532
9 years ago
Stephane Nicoll f7ffb017ad Relocate static asset
Closes gh-5504
9 years ago
Phillip Webb 50cb72cb48 Ignore failing Maven goal from Eclipse 9 years ago
Phillip Webb a3bfc29e6e Fix warnings 9 years ago
Stephane Nicoll fd437797b6 Polish contribution
This commit polihes the original Neo4j contribution in several areas.

Rather than providing the packages to scan, this commit rearranges the
`EntityScan` and `EntityScanRegistrar` so that the logic can be shared
for other components. If no package is provided, scanning now defaults to
the "auto-configured" package(s) and a `@NodeEntityScan` annotation
allows to override that.

The configuration has also been updated to detect the driver based on the
`uri` property. If the embedded driver is available we use that by
default. If it is not available, we're trying to connect to a Neo4j
server running on localhost. It is possible to disable the embedded mode
or set the `uri` parameter explicitly to deviate from these defaults.

The sample no longer relies on the embedded driver for licensing reason:
rather it expects an instance running on localhost (like other
data-related samples) and gracefully ignore any connection error. A
README has been added in the sample to further explain the available
options;

Closes gh-5458
9 years ago
Michael Hunger 0658cc8aee Add Neo4j support
See gh-5458
9 years ago
Andy Wilkinson 13d4409f32 Merge branch '1.3.x' 9 years ago
Andy Wilkinson 58ca9a1c5d Add a BuildInfo task for generating build.properties with Gradle
The commit adds a new BuildInfo task that can be used to generate
a build.properties file, intended for inclusion in the Actuator's
info endpoint.

A default instance of the task can be configure using the plugin's
DSL:

springBoot {
	buildInfo()
}

Additional properties can also be configured using the DSL:

springBoot {
	buildInfo {
		additionalProperties = [
			'foo': 'bar'
		]
	}
}

When configured via the DSL, the Java plugin's classes task is
configured to depend on the build info task. Alternatively, if more
control is required, the task can be declared and configured manually:

task buildInfo(type: org.springframework.boot.gradle.buildinfo.BuildInfo) {
	additionalProperties = [
		'foo': 'bar'
	]
}

classes {
	dependsOn buildInfo
}

See gh-2559
9 years ago
Phillip Webb 247bdf9c84 Add a new spring-boot-sample-test application
Add a sample application that demonstrates recently added testing
features.

See gh-4901
9 years ago
Phillip Webb 0829a1bde8 Drop superfluous annotations
Update internal tests to drop annotations that can now
be inferred.

Fixes gh-5470
9 years ago
Phillip Webb c28f552883 Migrate SpringJUnit4ClassRunner to SpringRunner
Replace all existing SpringJUnit4ClassRunner references with the new
SpringRunner alias.

Fixes gh-5292
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 19d8c5e6f6 Complete the move to constructor injection in configuration classes
This is a follow-on from the work done in 5009933. Now that SPR-14015
has been fixed, constructor injection can also be used for parameterised
dependencies, including optional dependencies that are injected via
an ObjectProvider.

Closes gh-5306
9 years ago
Phillip Webb 8d08e816a7 Fix tests that fail when Redis is unavailable 9 years ago
n27 e41d42171b Improve ActiveMQ connection pool configuration
Closes gh-1598
9 years ago
Stephane Nicoll caf11e4445 Add Couchbase cache support
This commit updates the cache auto-configuration to provide a
`CouchbaseCacheManager` if a `Bucket` has been configured.

The global customizer infrastructure allows to further tune the cache
manager if necessary.

Closes gh-5176
9 years ago
Stephane Nicoll 10012cfddc Rename Maven plugin mojo
Rename the goal from `generate-build-info` to `build-info` for consistency.

See gh-2559
9 years ago
ddbullfrog 21c630828e Fix typo
Closes gh-5424
9 years ago
Stephane Nicoll 2526a54e31 Polish contribution
Closes gh-5337
9 years ago
Stephane Nicoll e67f2e2983 Separate Couchbase setup from Spring Data
This commit separates the basic setup of Couchbase from Spring Data so
that a `Bucket` and `Cluster` bucket beans are exposed even if Spring
Data is not available.

A basic setup happens if `spring.couchbase.bootstrap-hosts` is specified,
configuring the `default` bucket with no authentication unless specified
otherwise.

If Spring Data is available, those beans are re-used by default to
configure the `CouchbaseTemplate` and other repository-related beans.

Closes gh-5347
9 years ago
Stephane Nicoll dddea70985 Collect and display build information
This commit updates the Maven plugin to generate a
`META-INF/boot/build.properties` file with various build-specific
settings (group, artifact, name, version and build time). Additionally,
the plugin can be configured to write an arbitrary number of additional
properties.

A new `BuildProperties` bean is automatically exposed when such a file is
present. If that bean is present, an `InfoContributor` is automatically
created to expose that information under the `build` key.

As for the git contributor, it is possible to only display the core
settings or everything using the `management.info.build.mode` property.

See gh-2559
9 years ago
Andy Wilkinson 86d87f6b8a Deprecate support for Velocity
Support for Velocity has been deprecated in Spring Framework 4.3 with
the plan being to remove it in 5.0. This commit deprecates Spring
Boot's support in 1.4, with the plan being to remove it in 2.0.

Closes gh-5276
9 years ago
Andy Wilkinson 5009933788 Move to constructor injection in simple configuration classes
This commit updates "simple" configuration classes to use constructor
injection. Simple means that there are no optional dependencies
(@Autowired(required=false) is not used), and none of the dependencies
use generics.

Configuration classes that are not simple will be updated in a second
pass once https://jira.spring.io/browse/SPR-14015 has been fixed.

See gh-5306
9 years ago
Phillip Webb 73cbb2f40a Polish 9 years ago
Stephane Nicoll 0490fbc7f8 Polish contribution
`InfoProvider` is now `InfoContributor` and contributes to the `Info`
instance via a builder. The `Info` instance is immutable. Each
contributor can be disabled via the `management.info.<name>.enabled`
key or all can be disabled using `management.info.defaults.enabled` (this
is similar to what the health endpoint does).

By default, all keys from the environment starting with `info.` are
exposed. If a `git.properties` file is present in the classpath, the
content of `GitInfo` is exposed using the `git` key.

A `SimpleInfoContributor` and `AbstractEnvironmentInfoContributor` are
available for convenience. `InfoContributor` instances can be ordered
the usual way, with a default order provided by
`InfoProviderAutoConfiguration#DEFAULT_ORDER`.

Closes gh-3492
9 years ago
Meang Akira Tanaka 8bebe6dea9 Info endpoint
See gh-3492
9 years ago
Andy Wilkinson 355860fd09 Remove @Autowired from constructors where class has single constructor
Closes gh-5226
9 years ago
Andy Wilkinson 3ca67e669d Polishing 9 years ago
Sebastien Deleuze 6fde504a63 Fix failing Content-Type related test after SPR-13631 changes 9 years ago
Stephane Nicoll 6741f05af1 Polish contribution
Closes gh-4903
9 years ago
Andy Wilkinson fa7dfb5109 Ignore tests that are broken by UNDERTOW-639 9 years ago
Ken Dombeck 9f93559d44 Fix logger classname
Closes gh-5254
9 years ago
Stephane Nicoll 5680ffdedb Fixup version numbers following release 9 years ago
Spring Buildmaster 225d877ab9 Next Development Version 9 years ago
Andy Wilkinson fcb5f03146 Upgrade to Hazelcast 3.6
Closes gh-5237
9 years ago
Andy Wilkinson 56487d23d6 Merge branch '1.3.x' 9 years ago
Vedran Pavic 6801e8208d Fix namespace declarations in Hazelcast xml's and make them consistent 9 years ago
Andy Wilkinson 01b7a7d9d3 Add missing copyright headers 9 years ago
Andy Wilkinson 44ddfcc7fa Upgrade copyright headers of all files changed in 2016 9 years ago
Phillip Webb 34ae7e3eee Fix packages and annotations used in sample
Fixup accidental error in previous commit.
9 years ago
Phillip Webb 95c4cdbedc Fix packages and annotations used in sample
Update a few of the samples to correct the packages used in tests and
to make use of the `@SpringBootApplication` annotation.
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 4b55144d80 Polish 9 years ago
Andy Wilkinson 99b3af9216 Use a random server port in the Couchbase sample’s tests 9 years ago
Andy Wilkinson d66bc7b1ee Merge branch '1.3.x' 9 years ago
Andy Wilkinson d3074a086c Increase timeout for startup of embedded Cassandra
The integration tests for the Spring Data Cassandra sample application
fail intermittently, apparently due to Cassandra failing to start
within the default timeout period of 10000ms.

In attempt to get the tests to pass reliably, this commit increases
the timeout to 60000ms (1 minute).
9 years ago
Andy Wilkinson 3b068c8bc2 Upgrade to Spring Integration 4.3.0.M1
Closes gh-5163
9 years ago
Stephane Nicoll 64a5cad09a Improve couchbase support
Expose an `auto-index` property that controls if views and indexes
should be created automatically.

Update the sample so that it uses this new property, lowering the manual
steps to make it working on a vanilla couchbase server.

See gh-3498
9 years ago
Stephane Nicoll da3b49e024 Polish contribution
Closes gh-3499
9 years ago
Eddú Meléndez 76f1ca4188 Add Couchbase support
Closes gh-3498
9 years ago
Oliver Gierke e703997be2 Use new projection capabilities in Spring Data Hopper.
Uses interfaces instead of DTOs to implement projections. Works
around DATAJPA-864 [0].

[0] https://jira.spring.io/browse/DATAJPA-864
9 years ago
Stephane Nicoll ebffa493e4 Harmonize ConfigurationProperties bean name
When `@EnableConfigurationProperties` is defined, Spring Boot
automatically registers a bean in the context for each class specified
on the annotation. Previously, the name of the bean only included the
prefix which leads to conflict if two different classes use the same
prefix.

This commit changes the bean name structure to be <prefix>-<fqn> where
prefix is the prefix used on the annotation and <fqn> the fully qualified
name of the target class.

Closes gh-4395
9 years ago
Phillip Webb 2b18e99ac7 Polish 9 years ago
Phillip Webb 1cc1fc6431 Use AssertJ in spring-boot-samples
See gh-5083
9 years ago
Phillip Webb 516afcd2ca Polish 9 years ago
Stephane Nicoll 5bfccf42c4 Merge branch '1.3.x' 9 years ago
Karol Rynio 19afae7fe6 Fix typos
Closes gh-5025
9 years ago
Stephane Nicoll da5e0f6abe Remove reference to `spring-boot.version` in the build
Closes gh-5014
9 years ago
Stephane Nicoll 2b1c319867 Fix broken build
`server.session-timeout` was deprecated in 1.3 but still used in a sample
that broke once the support for it was removed. This commit fix the build
by using the expected property.
9 years ago
Stephane Nicoll e293008c3f Rename redis starter to spring-boot-starter-data-redis
Closes gh-1033
9 years ago
Stephane Nicoll bead239448 Remove support for Log4j
Apache Log4j 1.x is EOL and has now been replaced by log4j 2. This commit
removes the deprecated support for Log4j 1.x

See gh-4905
9 years ago
Phillip Webb fbaf209240 Move master to 1.4.0.BUILD-SNAPSHOT 9 years ago
Phillip Webb c77a7e0cba Fixup version numbers following release 9 years ago
Spring Buildmaster 504d3e97ba Next development version 9 years ago
Phillip Webb 7397dbaf57 Allow ExitCodeGenerator to be used on Exceptions
Update exit code support to allow the ExitCodeGenerator interface to
be placed on an Exception. Any uncaught exception implementing the
interface and returning a non `0` status will now trigger a System.exit
with the code.

Fixes gh-4803
9 years ago
Andy Wilkinson 2aff82bb64 Merge branch '1.2.x' 9 years ago
Stephane Nicoll ecf56f0708 Fixup version numbers following release 9 years ago
Spring Buildmaster 8db59059a5 Next Development Version 9 years ago
Stephane Nicoll bb736e255b Fix SNAPSHOT version 9 years ago
Kirill Vlasov 786aacf2e9 Use Collections.isEmpty() instead of .size() == 0
Ensure that Collections.isEmpty() is used to check if there are no
elements in a collections. This is more explicit and can be faster than
calling .size().

Closes gh-4783
9 years ago
Dave Syer c7c685f65f Disable hypermedia in actuator endpoints by default
This change permanently removes links from the endpoints that return
arrays or collections, and also disables them in the rest of the
endpoints (except /actuator) by default.

Fixes gh-4616
9 years ago
Stephane Nicoll f269383803 Polish contribution
Closes gh-4770
9 years ago
David Morley 288aa962c4 Rename method to clarify which connector is being created
See gh-4770
9 years ago
Eddú Meléndez 1b81d9f0b5 Add support for server.server-header property
Add a `server.server-header` property which can be used to override the
`server` header usually sent back automatically by Tomcat/Jetty or
Undertow.

See https://www.owasp.org/index.php/Securing_tomcat for background.

Fixes gh-4461
Closes gh-4504
9 years ago
Phillip Webb 7f8aff0231 Format HTML in web-ui sample 9 years ago
kozazz 0de4b6ce63 Add update/delete to the web-ui sample
Closes gh-4735
See gh-4733
9 years ago
Phillip Webb 0489a3b4de Polish 9 years ago
Andy Wilkinson 4f7752d467 Merge branch '1.2.x' 9 years ago
Andy Wilkinson ce541bebcf Align BasicErrorController’s HTML response status with non-HTML status
Previously, BasicErrorController would return the response status
set in the javax.servlet.error.status_code request attribute when
serving JSON but would also return a 200 OK response when serving
HTML. This didn’t cause much trouble when a person was browsing, but
proved problematic for machine clients that request text/html and care
about the response status. For example, the success handler would be
driven for an XHR request even though the response was really an error.

This commit updates BasicErrorController to set the response status for
text/html responses to match the status that it would use in an
application/json response.

Closes gh-4694
9 years ago
Andy Wilkinson 0e09408f91 Merge branch '1.2.x' 9 years ago
Ivan Chen d6bd120b2c Remove unused test.css from spring-boot-sample-tomcat
Closes gh-4606
9 years ago
Dave Syer 344360453e Add test for management.security.enabled=false with child context 9 years ago
Dave Syer 2de48a35ab Make /error the error page in child context as well as parent
If user set the management.port *and* the management.context-path
then the /error path was in the wrong place because formerly it
was implemented (in this case) by an MvcEndpoint. If we
switch it to a regular @Controller (which are now supported in the
child context if there is one) then it won't disappear under the
management.context-path.

Also use lazy request matching in ignores as well as secure paths.
The problem was that the ignores were constructed eagerly from the
actuator paths before they were available (the EndpointHandlerMapping
needs to be lazily accessed to avoid a security-induced bean creation
cascade).

Fixes gh-4624
9 years ago
Stephane Nicoll e19d9ff09d Fix gradle config for the bootRun task
Closes gh-4627
9 years ago
Johnny Lim 8ec00c35bf Polish
Closes gh-4572
9 years ago
Stephane Nicoll 14e7b10310 Fixup version numbers following release 9 years ago
Spring Buildmaster 3f6f57a80e Next Development Version 9 years ago
Johnny Lim 4d9111606b Polish docs
Closes gh-4446
9 years ago
Dave Syer 88f776ef17 Remove duplicate sample 9 years ago
Phillip Webb 6c2ea4648f Polish 9 years ago
Dave Syer fa9724becb Revert "Add or avoid proxy configurations for integration tests"
This reverts commit 251f2805a8.
9 years ago
mrumpf 251f2805a8 Add or avoid proxy configurations for integration tests
The Maven POM does all the dependency resolutions for the
spring-boot-antlib project. Delegating this task to Ivy, which is
buried deep in the Antrun/Antunit part of the build, makes any kind
of proxy configuration much more complex.
The ivysettings.xml already has the local M2 repository configured,
but because the folder "repository" is missing, the artifacts, already
downloaded by Maven cannot be resolved from this location.
The Spring and Maven Central repositories should be removed from the
ivysettings.xml files in order to force all resolves to be done through
the local M2 repository. The POM of joda-time version 2.8.1 has an
optional dependency to joda-convert 1.2, which lets the Ivy resolve
process fail, because this version of the joda-convert library was
not resolved by any of the Maven POMs. It seems as if Ivy does not
respect the optional scope, defined in the joda-time POM.

Pass proxy settings to the forked process to make the Gradle distribution download work

Create a gradle.properties file for each Gradle integration test and writes the forking
process' proxy settings as systemProp.http(s).Host/Port to the properties file.
This configures the external process with the right proxy settings to let it download
the Gradle distribution via the HTTP proxy server.

Added a hint for Windows users to get the core.autocrlf setting right

When the core.autocrlf setting under Windows is set to false for example
All files are not converted regarding their EOL characters to the
Windows format with CRLF at a line's end. There is a checkstyle
validation that checks that all files have the system's line endings
and in some test-cases the value from the system property "line.ending"
is used to check test output. So without the conversion, those checks
are going to fail, resulting in build errors.

Fixes gh-4367, fixes gh-3816
9 years ago
Dave Syer cc3f673874 Narrow range of events listened for in security audit
The InteractiveAuthenticationSuccessEvent is always shadowed by a
regulat AuthenticationSuccessEvent, so there's no need to listen for
all AbstractAuthenticationSuccessEvents.

Fixes gh-4355
9 years ago
Stephane Nicoll 791e3048cf Fixup version numbers following release 9 years ago
Dave Syer 96fcd49e2e OpenTsdbMetricWriter -> OpenTsdbGaugeWriter 9 years ago
Dave Syer db03e8ea50 Fix sample and tidy up MetricWriter/GaugeWriter
The metric export configuration was still using the MetricWriter
interface where it should be using GaugeWriter
9 years ago
Andy Wilkinson 74317a220e Merge branch '1.2.x' 9 years ago
Andy Wilkinson 1f92360583 Ensure that HATEOAS sample does not try to produce XML
The HATEOAS sample does not support XML responses. Previously, the
controller doesn't constrain the media types that it could produce.
This would result in a failure when handling a request that prefers
XML responses.

This commit updates the produces clauses in the controller so that
the sample will only attempt to produce JSON.

Closes gh-4343
9 years ago
Andy Wilkinson 248fcbec5d Merge branch '1.2.x' 9 years ago
Andy Wilkinson 05b501ce41 Update Tomcat multi-connectors sample to configure SSL declaratively
The documentation recommends configuring the HTTP connector in code
and using application.properties to configure the HTTPS connector
as it's easier. This commit updates the sample to follow that
recommendation.

Closes gh-4342
9 years ago
Dave Syer abd7bc0466 Add OAuth2 resource server sample
Shows how to use @EnableResourceServer in a pure resource
server and configure the secure paths.
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
Huang YunKun 1c5e445554 Update the samples to use @WebIntegrationTest and randomPort=true
Closes gh-4294
Closes gh-4271
9 years ago
Andy Wilkinson d9d4cc2ef5 Ensure request context is setup before security filter runs
Previously, OrderedRequestContextFilter was ordered such that it
ran after Spring Security's Filter. This meant that the request
context was unavailable to any Filters in Spring Security's Filter
chain. Specifically, this caused a failure when using @EnableOAuth2Sso
as OAuth2ClientAuthenticationProcessingFilter, which is added to
Spring Security's Filter chain would be unable to use the
request-scoped bean upon which it depends.

This commit updates the order of OrderedRequestContextFilter so that
the request context is set up before Spring Security's Filter runs.
The tests for SampleGitHubApplication have been updated to use
TestRestTemplate rather than MockMvc. This is necessary as the latter,
via ServletTestExecutionListener, automatically populates the request
context holder, masking the fact that the request context filter was
setting it up too late.

Closes gh-4270
9 years ago
Andy Wilkinson 89df4946f7 Use a context-relative URL for Dev Tools sample’s CSS 9 years ago
Phillip Webb 634bb770b2 Organize imports with new settings
See gh-4234
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 ac944f02cc Use a random HTTP port when running SampleLiquibaseApplicationTests 9 years ago
Andy Wilkinson 874cd3390e Fix version of parent in pom for spring-boot-sample-war 9 years ago
Phillip Webb d84889b03c Revert "Compile samples and integration tests with Java 8"
This reverts commit 09395f956a.
9 years ago
Phillip Webb 5392c0a52b Merge remote-tracking branch 'springsource/1.2.x' 9 years ago
Phillip Webb 56643222cf Add simple war sample 9 years ago