1. 08 Oct, 2015 1 commit
  2. 07 Oct, 2015 2 commits
  3. 06 Oct, 2015 3 commits
    • Andy Wilkinson's avatar
      Work around intermittent failure caused by SPR-13079 · d793d5ab
      Andy Wilkinson authored
      See gh-4098
      d793d5ab
    • Andy Wilkinson's avatar
      6387f36e
    • Andy Wilkinson's avatar
      Improve MetricsFilter’s handling of async requests · b8b4ea48
      Andy Wilkinson authored
      Previously, MetricsFilter would treat async requests the same as
      sync requests and would record their response status as soon as the
      request had been processed by the filter chain. This would result in a
      200 response being recorded and the actual response status produced by
      the async processing being ignored. Furthermore, the time that was
      recorded for the request would not include the time take for any async processing.
      
      This commit updates MetricsFilter to check whether or not an async
      request has been started before it records the metrics for the request.
      In the event of an async request having been started no metrics are
      recorded. Instead, the StopWatch is stored in a request attribute that
      is then retrieved during the filtering of the request’s async
      dispatch(es). Once the async processing has completed (isAsyncStarted()
      returns false), the StopWatch is stopped, removed from the request’s
      attributes and the metrics for the request are recorded.
      
      Closes gh-4098
      b8b4ea48
  4. 05 Oct, 2015 1 commit
  5. 02 Oct, 2015 4 commits
  6. 29 Sep, 2015 1 commit
    • Phillip Webb's avatar
      Support `.` and `_` binder prefix joins · b0d9a832
      Phillip Webb authored
      Update RelaxedDataBinder so that both `.` and `_` are considered in
      getPropertyValuesForNamePrefix(...).
      
      With Spring Boot 1.2.5 binding environment variables of the form
      `FOO_BAR_BAZ` to `@ConfigurationProperties(prefix="foo-bar")` objects
      worked thanks to a happy accident. When `PropertySourcesPropertyValues`
      processed a non enumerable `PropertySource` it called the resolver
      with a property name `FOO_BAR.BAZ`. A `SystemEnvironmentPropertySource`
      will replace `.` with `_` and hence find a value.
      
      Commit 1abd0879 updated non enumerable processing such that the resolver
      was never called.
      
      Replicating the problem is quite involved as you need to ensure that you
      have both a SystemEnvironmentPropertySource and a non-enumerable
      property source (e.g. RandomPropertySource). A test has been added to
      PropertiesConfigurationFactoryTests which passes on 1.2.5, fails on
      1.2.6 and passes again following this commit.
      
      Fixes gh-4045
      b0d9a832
  7. 22 Sep, 2015 1 commit
  8. 16 Sep, 2015 2 commits
  9. 11 Sep, 2015 5 commits
    • Phillip Webb's avatar
      Add registerErrorPageFilter option flag · 11d59df3
      Phillip Webb authored
      Update SpringBootServletInitializer with a registerErrorPageFilter flag
      that can be used to disable ErrorPageFilter registration.
      
      Fixes gh-3603
      11d59df3
    • Phillip Webb's avatar
      Only handle status errors when sendError is called · de48223a
      Phillip Webb authored
      Update ErrorPageFilter to only handle errors when `response.sendError`
      has been called. This should allow custom @ExceptionHandlers to
      completely handle errors and return custom status codes without
      triggering the "Cannot forward to error page" log message.
      
      The Javadoc for sendError states:
      
        "The server defaults to creating the response to look like an
         HTML-formatted server error page containing the specified message"
      
      Where as setStatus states
      
        "This method is used to set the return status code when there is
         no error "
      
      Fixes gh-2745
      de48223a
    • Phillip Webb's avatar
      Add exception endpoints to tomcat-jsp sample · 5f250ebb
      Phillip Webb authored
      Update `spring-boot-sample-tomcat-jsp` to include endpoints that trigger
      exceptions. Primarily to aid testing of the ErrorPageFilter.
      
      See gh-2745
      5f250ebb
    • Phillip Webb's avatar
      Don't mix collection values from different sources · 86d5c192
      Phillip Webb authored
      Update PropertySourcesPropertyValues so that collection values are only
      added from a single PropertySource. Prior to this commit, given the
      following:
      
          PropertySource-A
           list[0]=x
      
          PropertySource-B
           list[0]=y
           list[1]=z
      
      PropertySourcesPropertyValues would take `x` from A and `z` from B,
      resulting in a binding of `[x,z]`. The updated code now returns the
      more logical `[x]`.
      
      Fixes gh-2611
      86d5c192
    • Phillip Webb's avatar
      Revert "Only format changed lines" · 16a1bd04
      Phillip Webb authored
      This reverts commit e04fb155.
      
      Formatting only changed lines doesn't appear to work well.
      16a1bd04
  10. 10 Sep, 2015 6 commits
  11. 08 Sep, 2015 4 commits
  12. 03 Sep, 2015 3 commits
  13. 02 Sep, 2015 4 commits
  14. 01 Sep, 2015 3 commits
    • Stephane Nicoll's avatar
      Refine check · 5043c959
      Stephane Nicoll authored
      Refine commit 8a964814 to set the web environment to false if spring web
      is not available in the classpath. Thanks to @mjustin for spotting that
      mistake.
      
      Closes gh-3856
      5043c959
    • Stephane Nicoll's avatar
      Store container installs in home directory · 426a8dc1
      Stephane Nicoll authored
      Previously, deployment tests were storing the container archives in the
      default location (that is `/tmp`) for a total weight of 160MB. In case
      the temp directory is cleaned on CI, these have to be downloaded again.
      
      We're now configuring cargo to store these archives in the home directory
      instead. This should improve the speed and the stability of the
      deployment tests
      
      Closes gh-3861
      426a8dc1
    • Stephane Nicoll's avatar
      Properly guard customization of application context class · 8a964814
      Stephane Nicoll authored
      SpringApplication wrongly expects spring-web to be on the classpath to
      figure out whether or not the web environment should be enabled for a
      custom context class.
      
      We now properly guard this check so that the web environment is not
      enabled (read: not checked) if `spring-web` is not available.
      
      Closes gh-3856
      8a964814