1. 13 Jul, 2015 3 commits
  2. 09 Jul, 2015 2 commits
    • Phillip Webb's avatar
      Formatting · 4b17f3ce
      Phillip Webb authored
      4b17f3ce
    • Andy Wilkinson's avatar
      Favour entries in source jar over standard libraries when repackaging · 68e54e1d
      Andy Wilkinson authored
      When writing a jar, once an entry has been written it will never be
      overwritten, i.e. the first write of a given entry will win. Previously,
      when repackaging a jar, the existing contents were written followed by
      any libraries. This caused a problem when repackaged a WAR file and
      a library needed to be unpacked as the existing entry in WEB-INF/lib
      would prevent the library with the UNPACK comment from being written.
      This was addressed in f761916b by inverting the order so libraries
      would take precedence over entries in the source jar.
      
      It’s now become apparent that this change in the order causes a problem
      for users who are obfuscating their code. The obfuscated code exists in
      the source jar but is also provided to the repackager in its original
      form as a library. When libraries take precedence, this means that the
      code in its original form ends up in the repackaged war and the
      obfuscation is lost.
      
      This commit updates the repackager to write libraries that require
      unpacking first. This allows the UNPACK comment to be written even if
      there’s also a source entry for the library. Next, source entries are
      written. This allows obfuscated source entries to take precedence over
      any unobfuscated library equivalents. Lastly, standard libraries that
      do not require unpacking are written into the repackaged archive.
      
      Closes gh-3444
      68e54e1d
  3. 08 Jul, 2015 1 commit
    • Phillip Webb's avatar
      Fix Flyway and Liquibase JPA 'depends-on' setup · 7da80891
      Phillip Webb authored
      Ensure that FlywayAutoConfiguration and LiquibaseAutoConfiguration occur
      after HibernateJpaAutoConfiguration so that the DependsOnPostProcessor
      condition can correctly check for a LocalContainerEntityManagerFactory
      bean.
      
      Fixes gh-3437
      7da80891
  4. 06 Jul, 2015 1 commit
  5. 02 Jul, 2015 8 commits
  6. 01 Jul, 2015 8 commits
    • Stephane Nicoll's avatar
      Auto-detect JMS sessionTransacted flag · 441049cf
      Stephane Nicoll authored
      If a JtaTransactionManager is present, it is associated with the
      auto-created JmsListenerContainerFactory. However, if no such transaction
      manager is present, local transaction support is not enabled.
      
      This gives a default situation where the message is acknowledged even
      before the listener is invoked. We now make sure to turn on local JMS
      transactions if no JtaTransactionManager is present.
      
      Fixes gh-3393
      441049cf
    • Andy Wilkinson's avatar
      Upgrade to Undertow 1.1.7.Final · f4c95eaf
      Andy Wilkinson authored
      Closes gh-3382
      f4c95eaf
    • Andy Wilkinson's avatar
      Upgrade Java Mail to 1.5.4 · e31a4dc0
      Andy Wilkinson authored
      Closes gh-3381
      Closes gh-3383
      e31a4dc0
    • Andy Wilkinson's avatar
      159d3a33
    • Andy Wilkinson's avatar
      Upgrade to HSQLDB 2.3.3 · bb8df95f
      Andy Wilkinson authored
      Closes gh-3379
      bb8df95f
    • Andy Wilkinson's avatar
      Ignore type-constrained converter when auto-configuring Jackson converter · b1ad2c30
      Andy Wilkinson authored
      Previously, JacksonHttpMessageConvertersConfiguration would configure a
      general-purpose MappingJackson2HttpMessageConverter only if there was
      no existing MappingJackson2HttpMessageConverter in the application
      context. This was problematic when a
      TypeConstrainedMappingJackson2HttpMessageConverter bean was present.
      Such a bean is only capable of performing conversion for a specific
      type, and therefore is no substitute for a general purpose converter,
      yet its presence was causing the auto-configuration of a general
      purpose converters to be turned off. This would leave Spring MVC’s
      default converter being used for application/json requests which would
      not honour the user’s Jackson configuration.
      
      This commit enhances @ConditionalOnMissingBean so that the annotation
      can be used to specify one or more types that should be ignored when
      searching for beans. This allows the
      TypeConstrainedMappingJackson2HttpMessageConverter beans that are
      published by Spring Data REST to be ignored such that the
      general-purpose MappingJackson2HttpMessageConverter is still
      auto-configured.
      
      Fixes gh-2914
      b1ad2c30
    • Andy Wilkinson's avatar
      Update to Spring Data Evans SR3 · 663967f6
      Andy Wilkinson authored
      Closes gh-3369
      663967f6
    • sopov.ivan's avatar
      Add Eclipse 4.5 new workspace folder to .gitignore · 968b1d74
      sopov.ivan authored
      Closes gh-3375
      968b1d74
  7. 30 Jun, 2015 6 commits
  8. 24 Jun, 2015 2 commits
    • Andy Wilkinson's avatar
      Include value of java.io.tmpdir in message when createTempFile fails · f8fdcc13
      Andy Wilkinson authored
      If java.io.tmpdir is configured to a directory that does not exist,
      calls to File.createTempFile will fail with an IOException with the
      message "The system cannot find the path specified". Unfortunately,
      the path the was specified is not included in the message.
      
      Rather than trying to automatically create the directory in what may
      be a misconfigured location, we now include the value of
      java.io.tmpdir in our own exception's message. Hopefully this will
      help users to figure out what they've done wrong.
      
      Closes gh-3307
      f8fdcc13
    • Stephane Nicoll's avatar
      Fix datasource metrics doc · 982b81c6
      Stephane Nicoll authored
      The maximum and minimum number of connections are no metrics so these
      are not exposed. Fix the doc that stated the contrary.
      
      Fixes gh-3319
      982b81c6
  9. 23 Jun, 2015 3 commits
  10. 22 Jun, 2015 6 commits
    • Andy Wilkinson's avatar
      Align servlet container error handling with executable jar/war behavior · 6fd30424
      Andy Wilkinson authored
      Previously, when an exception was thrown by a Controller in an
      application deployed to a servlet container the exception that was
      handled would be Spring Framework’s NestedServletException rather than
      the exception thrown by the application. Furthermore, when an exception
      was thrown or the response was used to send an error, the
      javax.servlet.error.request_uri request attribute would not be set. This
      differed from the behaviour in an executable jar/war where the exception
      would be the one thrown by the application, and the request_uri
      attribute would be set.
      
      This commit updates ErrorPageFilter, which is only involved in a servlet
      container, to unwrap a NestedServletException so that it’s the
      application’s exception that’s handled, and to set the request_uri
      attribute in the event of an exception being thrown or an error being
      sent.
      
      Closes gh-3249
      6fd30424
    • olivier bourgain's avatar
      Make InMemoryTraceRepository thread-safe · 5ed2a963
      olivier bourgain authored
      Closes gh-3027
      5ed2a963
    • Andy Wilkinson's avatar
      Map empty virtual host to "/" when parsed from an address · 8681a8ad
      Andy Wilkinson authored
      Previously, an address that ended in a "/" would result in the virtual
      host being an empty string. This was inconsistent with setVirtualHost
      which would map an empty string to "/".
      
      This commit updates the address parsing logic to call setVirtualHost
      rather than assigning the value directly to this.virtualHost. This
      ensures that the special handling for an empty string is applied
      consistently.
      
      Closes gh-3304
      8681a8ad
    • Andy Wilkinson's avatar
      Provide default for SpringApplication main class in servlet container · cd62596e
      Andy Wilkinson authored
      By default, SpringApplication attempts to deduce the application class
      by looking for a main method in the stack. This does not work when
      the application is launched by a servlet container via
      SpringBootServletInitializer as there's either no main method in the
      stack, or the main method is that of the servlet container, rather
      than the application.
      
      This commit updates SpringBootServletInitializer to configure the
      main class of the SpringApplication that it creates to be the
      application's SpringBootServletInitializer subclass. This is done
      prior to calling configure, so the main class can still be specified
      by the application if required.
      
      Closes gh-3061
      cd62596e
    • Andy Wilkinson's avatar
      01ba0f75
    • Stephane Nicoll's avatar
      Update SnakeYAML link · 5f2ffdb9
      Stephane Nicoll authored
      Closes gh-3302
      5f2ffdb9