In 1.1, the Groovy template support did not check that its configured
template location exists. A check was added in 1.2, however this
breaks CLI web applications that don't have the expected templates
location.
Rather than reintroducing 1.1's behaviour by removing the check, this
commit updates the CLI to set
spring.groovy.template.check-template-location to false by default.
This allows flow-blown applications to benefit from the check, while
allowing CLI apps to behave as they did in 1.1.
Closes gh-1959
Fixes a couple of typos in the documentation:
* `x-forwarded-protocol` is not the standard name for this header
* `require_https` is not an existing property, but rather `require_ssl`
Previously, if Logback was being used as Boot's logging system, but
Log4J was also on the classpath before SLF4J and Logback, JBoss
Logging would use Log4J for its logging. This lead to warning messages
being produced as Log4J was not configured:
log4j:WARN No appenders could be found for logger (org.jboss.logging).
log4j:WARN Please initialize the log4j system properly.
This commit updates LogbackLoggingSystem to set the
org.jboss.logging.provider to "slf4j". This ensure that JBoss Logging
will use SLF4J and Logback as intended even when Log4J is also on the
classpath.
Closes gh-1928
Update BeanTypeRegistry to gracefully ignore LoadBeanClassException and
BeanDefinitionStoreException exceptions in the same way as
DefaultListableBeanFactory.doGetBeanNamesForType() does.
Fixes gh-1955
Spring initializr now declares an improved metadata format (v2).
InitializrServiceMetadata has been updated to parse this format. Note
that the client could be further improved by using HAL generated links.
Closes gh-1953
Eclipse (by default) does not create the JSON metadata when
it compiles the @ConfigurationProperties beans. So running on
the command lilne gets scarily different than in an IDE. Fixed
by externalizing the metadata location and setting it to something
empty in the tests.
Including maps and lists. Beans with no metadata (in
/META-INF/*spring-configuration-metadata.json) are just serialized
as they come (so might have problems like cycles). Serialization
errors are caught and rendered as an "error" for that bean. Any
problems can be fixed by preparing metadata and specifying which
properties are to be rendered that way.
Fixes gh-1746, fixes gh-1921
Update JettyEmbeddedServletContainerFactoryTests to test loading an
SSL keystore from the classpath. Currently this is a Jetty only feature,
although if https://issues.apache.org/bugzilla/show_bug.cgi?id=56777 is
fixed we could do the same thing with Tomcat.
Closes gh-1943
Previously, HypermediaAutoConfiguration would trigger the creation of
an ObjectMapper bean named _halObjectMapper. This bean did not have the
spring.jackson.* configuration applied to it, however its presence
would revent JacksonAutoConfiguration from creating its
ObjectMapper. This left the user with an ObjectMapper that did not
honour the spring.jackson.* configuration.
This commit updates HypermediaAutoConfiguration to use the
Jackson2ObjectMapperBuilder that may have been created by
JacksonAutoConfiguration. If the builder exists it is used to configure
the _halObjectMapper bean.
Fixes gh-1949