Commit Graph

45587 Commits (main)
 

Author SHA1 Message Date
Dave Syer ce0e443b0a [bs-84] Add basic getting started guide to service project
Still work in progress, bubt enough there to get someone up a
nd running I hope
[#49047467]
12 years ago
Dave Syer bd79ec2362 [bs-22] Move @ConfigurationProperties processing to main jar
Also add unit tests.  Note also the start.groovy for the service
sample now works.

[#48127729]
12 years ago
Dave Syer 89748028b4 [bs-35] Add validation for EndpointsProperties
[Fixes #48245695]
12 years ago
Dave Syer 30087cf6b9 [bs-55] Add strategy for setting system exit code
* Added ExitCodeGenerator and SpringApplication.exit
convenience method
* User can add bean of type ExitCodeGenerator or supply
one in the call to exit()

[Fixes #48475971]
12 years ago
Dave Syer 4d372bcc25 Remove runComponents from SpringApplication
It was basically duplicating run(Object[], String[]) - unless
there is some harm in registering a non-component with the context
that I haven't seen yet.
12 years ago
Dave Syer 5501adc862 [bs-35] Add @ConfigurationProperties EndpointsProperties and bind to application.yml
[Fixes #48245695]
12 years ago
Dave Syer ce2a2beab4 [bs-83] Rename "container" -> "server"
* Also extracted ManagementServerProperties into a separate
bean
* TraceRepository was still causing problems during startup,
fixed that
* Allow management endpoints to be switched off with port=0

[Fixes #49046013]
12 years ago
Dave Syer ec0e9b17ad More ordering issues in service apps
* The TraceAutoConfiguration in the service project
was loading too early because it contains a BPP
* It also had a Spring Security dependency without any
@Conditional* configuration
* Fixed by nesting the BPP in a class with @Conditional*
12 years ago
Dave Syer 0a58e560b3 Fix ordering snafu with container properties and shutdown 12 years ago
Dave Syer 833b13bbbc [bs-80] Add configurable / switchable web request trace logging (headers etc)
* Added a bean post processor for the Spring Security filter chain
(so you only get traces by default if security is on)
* Every request is logged at trace level if the dump requests flag is
on
* Requests are also dumped to a TraceRepository for later analysis (very
useful for tracing problems in real time when a support call comes in)

[Fixes #48976001]
12 years ago
Dave Syer dd1fc3f992 Fix service integration tests 12 years ago
Dave Syer 361f500ed5 [bs-28] Add /shutdown endpoint to service apps
Disabled by default use container.allow_shutdown=true to switch
it on.  Then POST to /shutdown to shut down the app.

[#48059059]
12 years ago
Dave Syer c4028656ef Move context initializers into subpackage 12 years ago
Dave Syer e3d5bf2e21 [bs-29] Support for XML configuration in groovy apps
Mixed .groovy and .xml now supported bia spring CLI, e.g.

$ spring samples/runner.groovy samples/runner.xml

[Fixes #48059037]
12 years ago
Dave Syer bb62ca835e [bs-24] Support multi-file compile from command line
* Each non-option arg is tested to see if it is a file
* If it is .groovy (or .java) it is compiled

[#48127661]
12 years ago
Dave Syer a5f7b6ead3 Remove old groovy script code 12 years ago
Dave Syer e8e059bc90 [bs-78] Add port=0 option to switch off main servlet container
[Fixes #48888639]
12 years ago
Dave Syer 628a8c79aa [bs-19] Medley of changes supporting integration apps
* Use file adapters in sample instead of internal flow
* Add Exception to signature of CommandLineRunner for
implementation convenience
* Updates for Security snapshots
12 years ago
Dave Syer 10c333ea10 [bs-73] Tweak algorithm for detecting anonymous classes
@Bean definitions in Groovy that contain closures have the bean name in
the class name.  Ugh.  Added regex match to catch that.

[#48718891]
12 years ago
Dave Syer ec351e5f7d Add test for custom context initializer
[#48127729] [bs-22] Add missing unit tests
12 years ago
Dave Syer 4ca26058fa [bs-73] Tweak configuration class detection algorithm some more
This looks like becoming a recurring theme. Unfortunately it's
not very easy to test if a class might eventually be instantiatable
by Spring.

This change fixes the main bootstrap SpringApplicationTests
which were failing because they used non-static inner classes
for test configurations.
12 years ago
Dave Syer d6a670e13e [bs-47] Add default command line args to SpringApplication
* See SpringApplication.setDefaultCommandLineArgs
* Assumes command line is in "simple" form (TODO: if we
need JOpt etc. support then the command line args parsing from
Spring needs to be exposed)
* If defaults are provided the command line might be re-ordered
slightly (non-option args come after option args)
* Allows custom application.properties file names to be specified
as a side effect (--spring.config.name=... or
--spring.config.location=...}.

[Fixes #48284369]
12 years ago
Dave Syer 61fa55b524 [bs-62] Add assertions to CLI integration tests
[Fixes #48658503]
12 years ago
Dave Syer bcf86b320e [bs-72], [bs-75] Add Batch plugin features
* Auto config in main bootstrap jar
* Compiler enhancements in groovy cli
* Sample script in cli samples

[Fixes #48716881], [Fixes #48788313]
12 years ago
Dave Syer 83e0ea22c1 [bs-19] Add samples and CLI support for Spring Integration
$ cd spring-bootstrap-cli
    $ export SPRING_HOME=target
    $ src/main/scripts/spring run samples/integration.groovy

The big disadvantage at the moment is that there is no goo way to
detect Spring Integration in the AST (at least not as good as @Enable*).
So for now we are looking for @MessageEndpoint or a class name with
SpringIntegration in it.

[#48151147]
12 years ago
Dave Syer d82c50804f [bs-73] Tweak algorithm for detecting anonymous classes
Apparently an anonymous class in Groovy is no anonymous in the compiled code,
so we need another heuristic.  We now check for non-existence of public
constructors (if there are none then there's no point regsistering that
class with an application context).

[#48718891]
12 years ago
Dave Syer a2d328ae3a [bs-73] Anonymous classes cannot be used in @Bean definitions in .groovy scripts
* Added a test for each of the classes loaded by the SpringApplication
* If it's an anonymous class or looks like a Groovy closure we ignore it
* The CLI sample job.groovy also modified to take advantage

[Fixes #48718891]
12 years ago
Dave Syer 737886e4da Fix help and extend clean command
Examples:

    $ spring clean --all org.springframework commons-logging
    $ spring clean --all org.springframework:spring-tx
12 years ago
Dave Syer ca99e4d7b9 Remove unnecessary explicit FQCN 12 years ago
Dave Syer c9a8cb9341 [bs-72] Add Batch compiler by default
We could take this out again when we decide what to do about plugins
but it's good to have it in for now because it shows how to do it,
and exposes some holes.  The job.groovy script now works, but
a lot of it should be defaulted through auto-configuration.

(See also [bs-73] for a non-Batch related bug.)

[#48716881]
12 years ago
Dave Syer 214b3a28db [bs-71] "spring run app.groovy" stalls at end (non-daemon thread)
* Change default so that file is not watched (add --watch to watch it)
* The runner thread is set to daemon mode

[Fixes #48716955]
12 years ago
Dave Syer a91b482849 Improve readability of SpringBootstrapCompilerAutoConfiguration 12 years ago
Dave Syer 38f0cf1ed2 [bs-62] Add integration tests for CLI samples
[Fixes #48658503]
12 years ago
Dave Syer c91e83c7d2 [bs-59] Add zip packaging for cli module
* Also added "spring" shell script (in zip), so you can
unzip it and run out of the box
* To run in developer mode use SPRING_HOME, e.g.

        $ cd spring-bootstrap-cli
        $ SPRING_HOME=target src/main/scripts/spring run samples/web.groovy
* Also added "clean" command to remove spring bootstrap grapes
(useful to force a refresh of snapshot jars)

[#48644271]
12 years ago
Dave Syer 8a4b50e289 [bs-14] Ensure all servlet context initializers are called
Misuse of TreeSet in EmbeddedWebApplicationContext corrected
(use List and Comparator instead of TreeSet).

[Fixes #48055339]
12 years ago
Dave Syer fb6b224470 Fast forward existing prototype work 12 years ago
Phillip Webb 80b151e2b3 first commit 12 years ago