Trying to disable Keycloak and Spring Security with WebMvc test - spring

I have a springboot application using spring security and keycloak. when executing the application, securing with jwt tokens works as expected.
then i have a seperate test application.yml where i try to disable keycloak, as found in tutorials in the web.
for webmvc tests, this does not work as expected. although i try to disable everything security and keycloak related, still KeycloakWebSecurityConfigurerAdapter tries to use the KeycloakConfigResolver class, not finding it.
it then falls back to load the keycloak.json file and fails.
what do i have to make MockMvc tests work? i just want to have every request permitted as implemented in the configure HttpSecurity method. keycloak basically shouldnt be used for mockmvc tests.
pom:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.7.4-SNAPSHOT</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
[...]
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
<groupId>org.keycloak</groupId>
<artifactId>keycloak-spring-boot-starter</artifactId>
<version>19.0.2</version>
</dependency>
Config:
keycloak:
enabled: false
realm: mock
resource: mock
auth-server-url: http://mock
bearer-only: true
credentials:
secret: mock
spring:
autoconfigure:
exclude: org.keycloak.adapters.springboot.KeycloakAutoConfiguration
Keycloak Bean Configuration:
#Configuration
#EnableWebSecurity
#ConditionalOnProperty(name = ["keycloak.enabled"], havingValue = "false", matchIfMissing = false)
class KeycloakDisabledConfig: KeycloakWebSecurityConfigurerAdapter(){
override fun configure(http: HttpSecurity) {
http.csrf()
.disable()
.authorizeRequests()
.anyRequest()
.permitAll()
}
override fun configure(web: WebSecurity) {
web.ignoring().antMatchers("/**")
}
override fun sessionAuthenticationStrategy(): SessionAuthenticationStrategy = RegisterSessionAuthenticationStrategy(
SessionRegistryImpl()
)
Test:
#WebMvcTest(value = [OrganizationController::class], excludeAutoConfiguration = [SecurityAutoConfiguration::class])
#AutoConfigureMockMvc(addFilters = false)
#Import(value = [
OrganizationMapper::class
])
internal class OrganizationControllerTest{
#Autowired
lateinit var mockmvc: MockMvc
loaded context:
Positive matches:
-----------------
ErrorMvcAutoConfiguration matched:
- #ConditionalOnClass found required classes 'javax.servlet.Servlet', 'org.springframework.web.servlet.DispatcherServlet' (OnClassCondition)
- found 'session' scope (OnWebApplicationCondition)
ErrorMvcAutoConfiguration#basicErrorController matched:
- #ConditionalOnMissingBean (types: org.springframework.boot.web.servlet.error.ErrorController; SearchStrategy: current) did not find any beans (OnBeanCondition)
ErrorMvcAutoConfiguration#errorAttributes matched:
- #ConditionalOnMissingBean (types: org.springframework.boot.web.servlet.error.ErrorAttributes; SearchStrategy: current) did not find any beans (OnBeanCondition)
ErrorMvcAutoConfiguration.WhitelabelErrorViewConfiguration matched:
- #ConditionalOnProperty (server.error.whitelabel.enabled) matched (OnPropertyCondition)
- ErrorTemplate Missing did not find error template view (ErrorMvcAutoConfiguration.ErrorTemplateMissingCondition)
ErrorMvcAutoConfiguration.WhitelabelErrorViewConfiguration#beanNameViewResolver matched:
- #ConditionalOnMissingBean (types: org.springframework.web.servlet.view.BeanNameViewResolver; SearchStrategy: all) did not find any beans (OnBeanCondition)
ErrorMvcAutoConfiguration.WhitelabelErrorViewConfiguration#defaultErrorView matched:
- #ConditionalOnMissingBean (names: error; SearchStrategy: all) did not find any beans (OnBeanCondition)
GsonAutoConfiguration matched:
- #ConditionalOnClass found required class 'com.google.gson.Gson' (OnClassCondition)
GsonAutoConfiguration#gson matched:
- #ConditionalOnMissingBean (types: com.google.gson.Gson; SearchStrategy: all) did not find any beans (OnBeanCondition)
GsonAutoConfiguration#gsonBuilder matched:
- #ConditionalOnMissingBean (types: com.google.gson.GsonBuilder; SearchStrategy: all) did not find any beans (OnBeanCondition)
GsonHttpMessageConvertersConfiguration matched:
- #ConditionalOnClass found required class 'com.google.gson.Gson' (OnClassCondition)
HttpEncodingAutoConfiguration matched:
- #ConditionalOnClass found required class 'org.springframework.web.filter.CharacterEncodingFilter' (OnClassCondition)
- found 'session' scope (OnWebApplicationCondition)
- #ConditionalOnProperty (server.servlet.encoding.enabled) matched (OnPropertyCondition)
HttpEncodingAutoConfiguration#characterEncodingFilter matched:
- #ConditionalOnMissingBean (types: org.springframework.web.filter.CharacterEncodingFilter; SearchStrategy: all) did not find any beans (OnBeanCondition)
HttpMessageConvertersAutoConfiguration matched:
- #ConditionalOnClass found required class 'org.springframework.http.converter.HttpMessageConverter' (OnClassCondition)
- NoneNestedConditions 0 matched 1 did not; NestedCondition on HttpMessageConvertersAutoConfiguration.NotReactiveWebApplicationCondition.ReactiveWebApplication did not find reactive web application classes (HttpMessageConvertersAutoConfiguration.NotReactiveWebApplicationCondition)
HttpMessageConvertersAutoConfiguration#messageConverters matched:
- #ConditionalOnMissingBean (types: org.springframework.boot.autoconfigure.http.HttpMessageConverters; SearchStrategy: all) did not find any beans (OnBeanCondition)
HttpMessageConvertersAutoConfiguration.StringHttpMessageConverterConfiguration matched:
- #ConditionalOnClass found required class 'org.springframework.http.converter.StringHttpMessageConverter' (OnClassCondition)
HttpMessageConvertersAutoConfiguration.StringHttpMessageConverterConfiguration#stringHttpMessageConverter matched:
- #ConditionalOnMissingBean (types: org.springframework.http.converter.StringHttpMessageConverter; SearchStrategy: all) did not find any beans (OnBeanCondition)
JacksonAutoConfiguration matched:
- #ConditionalOnClass found required class 'com.fasterxml.jackson.databind.ObjectMapper' (OnClassCondition)
JacksonAutoConfiguration.Jackson2ObjectMapperBuilderCustomizerConfiguration matched:
- #ConditionalOnClass found required class 'org.springframework.http.converter.json.Jackson2ObjectMapperBuilder' (OnClassCondition)
JacksonAutoConfiguration.JacksonObjectMapperBuilderConfiguration matched:
- #ConditionalOnClass found required class 'org.springframework.http.converter.json.Jackson2ObjectMapperBuilder' (OnClassCondition)
JacksonAutoConfiguration.JacksonObjectMapperBuilderConfiguration#jacksonObjectMapperBuilder matched:
- #ConditionalOnMissingBean (types: org.springframework.http.converter.json.Jackson2ObjectMapperBuilder; SearchStrategy: all) did not find any beans (OnBeanCondition)
JacksonAutoConfiguration.JacksonObjectMapperConfiguration matched:
- #ConditionalOnClass found required class 'org.springframework.http.converter.json.Jackson2ObjectMapperBuilder' (OnClassCondition)
JacksonAutoConfiguration.JacksonObjectMapperConfiguration#jacksonObjectMapper matched:
- #ConditionalOnMissingBean (types: com.fasterxml.jackson.databind.ObjectMapper; SearchStrategy: all) did not find any beans (OnBeanCondition)
JacksonAutoConfiguration.ParameterNamesModuleConfiguration matched:
- #ConditionalOnClass found required class 'com.fasterxml.jackson.module.paramnames.ParameterNamesModule' (OnClassCondition)
JacksonAutoConfiguration.ParameterNamesModuleConfiguration#parameterNamesModule matched:
- #ConditionalOnMissingBean (types: com.fasterxml.jackson.module.paramnames.ParameterNamesModule; SearchStrategy: all) did not find any beans (OnBeanCondition)
JacksonHttpMessageConvertersConfiguration.MappingJackson2HttpMessageConverterConfiguration matched:
- #ConditionalOnClass found required class 'com.fasterxml.jackson.databind.ObjectMapper' (OnClassCondition)
- #ConditionalOnProperty (spring.mvc.converters.preferred-json-mapper=jackson) matched (OnPropertyCondition)
- #ConditionalOnBean (types: com.fasterxml.jackson.databind.ObjectMapper; SearchStrategy: all) found bean 'jacksonObjectMapper' (OnBeanCondition)
JacksonHttpMessageConvertersConfiguration.MappingJackson2HttpMessageConverterConfiguration#mappingJackson2HttpMessageConverter matched:
- #ConditionalOnMissingBean (types: org.springframework.http.converter.json.MappingJackson2HttpMessageConverter ignored: org.springframework.hateoas.server.mvc.TypeConstrainedMappingJackson2HttpMessageConverter,org.springframework.data.rest.webmvc.alps.AlpsJsonHttpMessageConverter; SearchStrategy: all) did not find any beans (OnBeanCondition)
KeycloakDisabledConfig matched:
- #ConditionalOnProperty (keycloak.enabled=false) matched (OnPropertyCondition)
MockMvcAutoConfiguration matched:
- found 'session' scope (OnWebApplicationCondition)
MockMvcAutoConfiguration#dispatcherServlet matched:
- #ConditionalOnMissingBean (types: org.springframework.web.servlet.DispatcherServlet; SearchStrategy: all) did not find any beans (OnBeanCondition)
MockMvcAutoConfiguration#dispatcherServletPath matched:
- #ConditionalOnMissingBean (types: org.springframework.boot.autoconfigure.web.servlet.DispatcherServletPath; SearchStrategy: all) did not find any beans (OnBeanCondition)
MockMvcAutoConfiguration#mockMvc matched:
- #ConditionalOnMissingBean (types: org.springframework.test.web.servlet.MockMvc; SearchStrategy: all) did not find any beans (OnBeanCondition)
MockMvcAutoConfiguration#mockMvcBuilder matched:
- #ConditionalOnMissingBean (types: org.springframework.test.web.servlet.MockMvcBuilder; SearchStrategy: all) did not find any beans (OnBeanCondition)
NoOpCacheConfiguration matched:
- Cache org.springframework.boot.autoconfigure.cache.NoOpCacheConfiguration NONE cache type (CacheCondition)
SecurityFilterAutoConfiguration matched:
- #ConditionalOnClass found required classes 'org.springframework.security.web.context.AbstractSecurityWebApplicationInitializer', 'org.springframework.security.config.http.SessionCreationPolicy' (OnClassCondition)
- found 'session' scope (OnWebApplicationCondition)
SecurityFilterAutoConfiguration#securityFilterChainRegistration matched:
- #ConditionalOnBean (names: springSecurityFilterChain; SearchStrategy: all) found bean 'springSecurityFilterChain' (OnBeanCondition)
SpringDataWebAutoConfiguration matched:
- #ConditionalOnClass found required classes 'org.springframework.data.web.PageableHandlerMethodArgumentResolver', 'org.springframework.web.servlet.config.annotation.WebMvcConfigurer' (OnClassCondition)
- found 'session' scope (OnWebApplicationCondition)
- #ConditionalOnMissingBean (types: org.springframework.data.web.PageableHandlerMethodArgumentResolver; SearchStrategy: all) did not find any beans (OnBeanCondition)
SpringDataWebAutoConfiguration#pageableCustomizer matched:
- #ConditionalOnMissingBean (types: org.springframework.data.web.config.PageableHandlerMethodArgumentResolverCustomizer; SearchStrategy: all) did not find any beans (OnBeanCondition)
SpringDataWebAutoConfiguration#sortCustomizer matched:
- #ConditionalOnMissingBean (types: org.springframework.data.web.config.SortHandlerMethodArgumentResolverCustomizer; SearchStrategy: all) did not find any beans (OnBeanCondition)
TaskExecutionAutoConfiguration matched:
- #ConditionalOnClass found required class 'org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor' (OnClassCondition)
TaskExecutionAutoConfiguration#applicationTaskExecutor matched:
- #ConditionalOnMissingBean (types: java.util.concurrent.Executor; SearchStrategy: all) did not find any beans (OnBeanCondition)
TaskExecutionAutoConfiguration#taskExecutorBuilder matched:
- #ConditionalOnMissingBean (types: org.springframework.boot.task.TaskExecutorBuilder; SearchStrategy: all) did not find any beans (OnBeanCondition)
UserDetailsServiceAutoConfiguration matched:
- #ConditionalOnClass found required class 'org.springframework.security.authentication.AuthenticationManager' (OnClassCondition)
- #ConditionalOnBean (types: org.springframework.security.config.annotation.ObjectPostProcessor; SearchStrategy: all) found bean 'objectPostProcessor'; #ConditionalOnMissingBean (types: org.springframework.security.authentication.AuthenticationManager,org.springframework.security.authentication.AuthenticationProvider,org.springframework.security.core.userdetails.UserDetailsService,org.springframework.security.authentication.AuthenticationManagerResolver,org.springframework.security.oauth2.jwt.JwtDecoder,org.springframework.security.oauth2.server.resource.introspection.OpaqueTokenIntrospector,org.springframework.security.oauth2.client.registration.ClientRegistrationRepository,org.springframework.security.saml2.provider.service.registration.RelyingPartyRegistrationRepository; SearchStrategy: all) did not find any beans (OnBeanCondition)
ValidationAutoConfiguration matched:
- #ConditionalOnClass found required class 'javax.validation.executable.ExecutableValidator' (OnClassCondition)
- #ConditionalOnResource found location classpath:META-INF/services/javax.validation.spi.ValidationProvider (OnResourceCondition)
ValidationAutoConfiguration#defaultValidator matched:
- #ConditionalOnMissingBean (types: javax.validation.Validator; SearchStrategy: all) did not find any beans (OnBeanCondition)
ValidationAutoConfiguration#methodValidationPostProcessor matched:
- #ConditionalOnMissingBean (types: org.springframework.validation.beanvalidation.MethodValidationPostProcessor; SearchStrategy: current) did not find any beans (OnBeanCondition)
WebMvcAutoConfiguration matched:
- #ConditionalOnClass found required classes 'javax.servlet.Servlet', 'org.springframework.web.servlet.DispatcherServlet', 'org.springframework.web.servlet.config.annotation.WebMvcConfigurer' (OnClassCondition)
- found 'session' scope (OnWebApplicationCondition)
- #ConditionalOnMissingBean (types: org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport; SearchStrategy: all) did not find any beans (OnBeanCondition)
WebMvcAutoConfiguration#formContentFilter matched:
- #ConditionalOnProperty (spring.mvc.formcontent.filter.enabled) matched (OnPropertyCondition)
- #ConditionalOnMissingBean (types: org.springframework.web.filter.FormContentFilter; SearchStrategy: all) did not find any beans (OnBeanCondition)
WebMvcAutoConfiguration.EnableWebMvcConfiguration#flashMapManager matched:
- #ConditionalOnMissingBean (names: flashMapManager; SearchStrategy: all) did not find any beans (OnBeanCondition)
WebMvcAutoConfiguration.EnableWebMvcConfiguration#localeResolver matched:
- #ConditionalOnMissingBean (names: localeResolver; SearchStrategy: all) did not find any beans (OnBeanCondition)
WebMvcAutoConfiguration.EnableWebMvcConfiguration#themeResolver matched:
- #ConditionalOnMissingBean (names: themeResolver; SearchStrategy: all) did not find any beans (OnBeanCondition)
WebMvcAutoConfiguration.WebMvcAutoConfigurationAdapter#defaultViewResolver matched:
- #ConditionalOnMissingBean (types: org.springframework.web.servlet.view.InternalResourceViewResolver; SearchStrategy: all) did not find any beans (OnBeanCondition)
WebMvcAutoConfiguration.WebMvcAutoConfigurationAdapter#requestContextFilter matched:
- #ConditionalOnMissingBean (types: org.springframework.web.context.request.RequestContextListener,org.springframework.web.filter.RequestContextFilter; SearchStrategy: all) did not find any beans (OnBeanCondition)
WebMvcAutoConfiguration.WebMvcAutoConfigurationAdapter#viewResolver matched:
- #ConditionalOnBean (types: org.springframework.web.servlet.ViewResolver; SearchStrategy: all) found beans 'defaultViewResolver', 'beanNameViewResolver', 'mvcViewResolver'; #ConditionalOnMissingBean (names: viewResolver types: org.springframework.web.servlet.view.ContentNegotiatingViewResolver; SearchStrategy: all) did not find any beans (OnBeanCondition)
Stacktrace:
Caused by: java.io.FileNotFoundException: Unable to locate Keycloak configuration file: keycloak.json
at org.keycloak.adapters.springsecurity.AdapterDeploymentContextFactoryBean.loadKeycloakDeployment(AdapterDeploymentContextFactoryBean.java:83) ~[keycloak-spring-security-adapter-19.0.1.jar:19.0.1]
at org.keycloak.adapters.springsecurity.AdapterDeploymentContextFactoryBean.afterPropertiesSet(AdapterDeploymentContextFactoryBean.java:76) ~[keycloak-spring-security-adapter-19.0.1.jar:19.0.1]
at org.keycloak.adapters.springsecurity.config.KeycloakWebSecurityConfigurerAdapter.adapterDeploymentContext(KeycloakWebSecurityConfigurerAdapter.java:72) ~[keycloak-spring-security-adapter-19.0.1.jar:19.0.1]
at com.jschausberger.demo.keycloak.KeycloakDisabledConfig$$EnhancerBySpringCGLIB$$ef3c2204.CGLIB$adapterDeploymentContext$13(<generated>) ~[classes/:na]
at com.jschausberger.demo.keycloak.KeycloakDisabledConfig$$EnhancerBySpringCGLIB$$ef3c2204$$FastClassBySpringCGLIB$$3c55188.invoke(<generated>) ~[classes/:na]
at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:244) ~[spring-core-5.3.23.jar:5.3.23]
at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:331) ~[spring-context-5.3.23.jar:5.3.23]
at com.jschausberger.demo.keycloak.KeycloakDisabledConfig$$EnhancerBySpringCGLIB$$ef3c2204.adapterDeploymentContext(<generated>) ~[classes/:na]
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[na:na]
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
at java.base/java.lang.reflect.Method.invoke(Method.java:568) ~[na:na]
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154) ~[spring-beans-5.3.23.jar:5.3.23]
... 91 common frames omitted

First, do not use Keycloak adapter for Spring (keycloak-spring-boot-starter). It is very deprecated and not compatible with spring-boot 3 (RC1 this week, release in November). Use spring-boot-starter-oauth2-resource-server instead. Article here, more tutorials there.
Second, do not disable security in your unit-test. Use mocked authentication and use it to unit-test your security rules. You might refer to article and tutorials linked above to figure out how.

Related

Get Spring Boot startup time for Desktop application under 1 second

I have a desktop application written with Spring Boot 2.7.3 (without the web server) and UI part with JavaFX. Everything is working pretty solid. But the startup time of the application is beyond 5s. And sometimes it takes more than 10s. And this is not because of the hardware as the desktop have decent specs.
To provide good user experience, I need this startup time below 1s or may be 2s
Things I have tried
Lazy initialized beans and repositories
Excluded some autoconfiguration classes to the best of my knownledge
Please suggest me ways to optimize this thing.
Startup Logs
[INFO ] [10-09-2022 17:19:11,805 [background-preinit] Version:org.hibernate.validator.internal.util.Version.<clinit>(Version.java:21)]:HV000001: Hibernate Validator 6.2.4.Final
[INFO ] [10-09-2022 17:19:11,941 [DefaultDispatcher-worker-2] SpringApplication:org.springframework.boot.StartupInfoLogger.logStarting(StartupInfoLogger.java:55)]:Starting application using Java 17.0.2 on Yash-Garg with PID 3728 (started by Yash Garg in C:\Users\Yash\Documents\app)
[INFO ] [10-09-2022 17:19:11,943 [DefaultDispatcher-worker-2] SpringApplication:org.springframework.boot.SpringApplication.logStartupProfileInfo(SpringApplication.java:640)]:The following 1 profile is active: "default"
[INFO ] [10-09-2022 17:19:12,987 [DefaultDispatcher-worker-2] RepositoryConfigurationDelegate:org.springframework.data.repository.config.RepositoryConfigurationDelegate.registerRepositoriesIn(RepositoryConfigurationDelegate.java:132)]:Bootstrapping Spring Data JPA repositories in LAZY mode.
[INFO ] [10-09-2022 17:19:13,185 [DefaultDispatcher-worker-2] RepositoryConfigurationDelegate:org.springframework.data.repository.config.RepositoryConfigurationDelegate.registerRepositoriesIn(RepositoryConfigurationDelegate.java:201)]:Finished Spring Data repository scanning in 183 ms. Found 29 JPA repository interfaces.
[INFO ] [10-09-2022 17:19:14,386 [DefaultDispatcher-worker-2] VersionPrinter:org.flywaydb.core.internal.logging.slf4j.Slf4jLog.info(Slf4jLog.java:37)]:Flyway Community Edition 8.5.13 by Redgate
[INFO ] [10-09-2022 17:19:14,386 [DefaultDispatcher-worker-2] VersionPrinter:org.flywaydb.core.internal.logging.slf4j.Slf4jLog.info(Slf4jLog.java:37)]:See what's new here: https://flywaydb.org/documentation/learnmore/releaseNotes#8.5.13
[INFO ] [10-09-2022 17:19:14,387 [DefaultDispatcher-worker-2] VersionPrinter:org.flywaydb.core.internal.logging.slf4j.Slf4jLog.info(Slf4jLog.java:37)]:
[INFO ] [10-09-2022 17:19:14,607 [DefaultDispatcher-worker-2] BaseDatabaseType:org.flywaydb.core.internal.logging.slf4j.Slf4jLog.info(Slf4jLog.java:37)]:Database: jdbc:sqlite:C:\Path\To\Database\File (SQLite 3.39)
[INFO ] [10-09-2022 17:19:14,657 [DefaultDispatcher-worker-2] DbValidate:org.flywaydb.core.internal.logging.slf4j.Slf4jLog.info(Slf4jLog.java:37)]:Successfully validated 4 migrations (execution time 00:00.030s)
[INFO ] [10-09-2022 17:19:14,664 [DefaultDispatcher-worker-2] DbMigrate:org.flywaydb.core.internal.logging.slf4j.Slf4jLog.info(Slf4jLog.java:37)]:Current version of schema "main": 1.4
[INFO ] [10-09-2022 17:19:14,664 [DefaultDispatcher-worker-2] DbMigrate:org.flywaydb.core.internal.logging.slf4j.Slf4jLog.info(Slf4jLog.java:37)]:Schema "main" is up to date. No migration necessary.
[DEBUG] [10-09-2022 17:19:14,720 [DefaultDispatcher-worker-2] AutoConfigurationPackages:org.springframework.boot.autoconfigure.AutoConfigurationPackages$BasePackages.get(AutoConfigurationPackages.java:196)]:#EnableAutoConfiguration was declared on a class in the package 'in.app'. Automatic #Repository and #Entity scanning is enabled.
[INFO ] [10-09-2022 17:19:14,897 [DefaultDispatcher-worker-2] Version:org.hibernate.Version.logVersion(Version.java:44)]:HHH000412: Hibernate ORM core version 5.6.10.Final
[INFO ] [10-09-2022 17:19:15,105 [DefaultDispatcher-worker-2] Version:org.hibernate.annotations.common.reflection.java.JavaReflectionManager.<clinit>(JavaReflectionManager.java:56)]:HCANN000001: Hibernate Commons Annotations {5.1.2.Final}
[INFO ] [10-09-2022 17:19:15,193 [DefaultDispatcher-worker-2] Dialect:org.hibernate.dialect.Dialect.<init>(Dialect.java:175)]:HHH000400: Using dialect: org.sqlite.hibernate.dialect.SQLiteDialect
[INFO ] [10-09-2022 17:19:15,236 [DefaultDispatcher-worker-2] Dialect:org.hibernate.dialect.Dialect.<init>(Dialect.java:175)]:HHH000400: Using dialect: org.sqlite.hibernate.dialect.SQLiteDialect
[INFO ] [10-09-2022 17:19:15,812 [DefaultDispatcher-worker-2] EhcacheManager:org.ehcache.core.EhcacheManager.createCache(EhcacheManager.java:305)]:Cache 'in.app.entity.TaxCodeEntity' created in EhcacheManager.
[INFO ] [10-09-2022 17:19:15,826 [DefaultDispatcher-worker-2] EhcacheManager:org.ehcache.core.EhcacheManager.createCache(EhcacheManager.java:305)]:Cache 'in.app.entity.TransactionTypeEntity' created in EhcacheManager.
[INFO ] [10-09-2022 17:19:16,469 [DefaultDispatcher-worker-2] LocalContainerEntityManagerFactoryBean:org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:437)]:Initialized JPA EntityManagerFactory for persistence unit 'default'
CONDITIONS EVALUATION REPORT
Positive matches:
DataSourceAutoConfiguration matched:
- #ConditionalOnClass found required classes 'javax.sql.DataSource', 'org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseType' (OnClassCondition)
- #ConditionalOnMissingBean (types: io.r2dbc.spi.ConnectionFactory; SearchStrategy: all) did not find any beans (OnBeanCondition)
DataSourceAutoConfiguration.PooledDataSourceConfiguration matched:
- AnyNestedCondition 1 matched 1 did not; NestedCondition on DataSourceAutoConfiguration.PooledDataSourceCondition.PooledDataSourceAvailable PooledDataSource found supported DataSource; NestedCondition on DataSourceAutoConfiguration.PooledDataSourceCondition.ExplicitType #ConditionalOnProperty (spring.datasource.type) did not find property 'type' (DataSourceAutoConfiguration.PooledDataSourceCondition)
- #ConditionalOnMissingBean (types: javax.sql.DataSource,javax.sql.XADataSource; SearchStrategy: all) did not find any beans (OnBeanCondition)
DataSourceConfiguration.Hikari matched:
- #ConditionalOnClass found required class 'com.zaxxer.hikari.HikariDataSource' (OnClassCondition)
- #ConditionalOnProperty (spring.datasource.type=com.zaxxer.hikari.HikariDataSource) matched (OnPropertyCondition)
- #ConditionalOnMissingBean (types: javax.sql.DataSource; SearchStrategy: all) did not find any beans (OnBeanCondition)
DataSourceInitializationConfiguration matched:
- #ConditionalOnClass found required class 'org.springframework.jdbc.datasource.init.DatabasePopulator' (OnClassCondition)
- #ConditionalOnSingleCandidate (types: javax.sql.DataSource; SearchStrategy: all) found a single bean 'dataSource'; #ConditionalOnMissingBean (types: org.springframework.boot.autoconfigure.sql.init.SqlDataSourceScriptDatabaseInitializer,org.springframework.boot.autoconfigure.sql.init.SqlR2dbcScriptDatabaseInitializer; SearchStrategy: all) did not find any beans (OnBeanCondition)
DataSourcePoolMetadataProvidersConfiguration.HikariPoolDataSourceMetadataProviderConfiguration matched:
- #ConditionalOnClass found required class 'com.zaxxer.hikari.HikariDataSource' (OnClassCondition)
DataSourceTransactionManagerAutoConfiguration matched:
- #ConditionalOnClass found required classes 'org.springframework.jdbc.core.JdbcTemplate', 'org.springframework.transaction.TransactionManager' (OnClassCondition)
DataSourceTransactionManagerAutoConfiguration.JdbcTransactionManagerConfiguration matched:
- #ConditionalOnSingleCandidate (types: javax.sql.DataSource; SearchStrategy: all) found a single bean 'dataSource' (OnBeanCondition)
FlywayAutoConfiguration matched:
- #ConditionalOnClass found required class 'org.flywaydb.core.Flyway' (OnClassCondition)
- #ConditionalOnProperty (spring.flyway.enabled) matched (OnPropertyCondition)
- AnyNestedCondition 2 matched 0 did not; NestedCondition on FlywayAutoConfiguration.FlywayDataSourceCondition.FlywayUrlCondition #ConditionalOnProperty (spring.flyway.url) matched; NestedCondition on FlywayAutoConfiguration.FlywayDataSourceCondition.DataSourceBeanCondition #ConditionalOnBean (types: javax.sql.DataSource; SearchStrategy: all) found bean 'dataSource' (FlywayAutoConfiguration.FlywayDataSourceCondition)
FlywayAutoConfiguration.FlywayConfiguration matched:
- #ConditionalOnClass found required class 'org.springframework.jdbc.support.JdbcUtils' (OnClassCondition)
- #ConditionalOnMissingBean (types: org.flywaydb.core.Flyway; SearchStrategy: all) did not find any beans (OnBeanCondition)
GenericCacheConfiguration matched:
- Cache org.springframework.boot.autoconfigure.cache.GenericCacheConfiguration automatic cache type (CacheCondition)
HibernateJpaAutoConfiguration matched:
- #ConditionalOnClass found required classes 'org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean', 'javax.persistence.EntityManager', 'org.hibernate.engine.spi.SessionImplementor' (OnClassCondition)
HibernateJpaConfiguration matched:
- #ConditionalOnSingleCandidate (types: javax.sql.DataSource; SearchStrategy: all) found a single bean 'dataSource' (OnBeanCondition)
JacksonAutoConfiguration matched:
- #ConditionalOnClass found required class 'com.fasterxml.jackson.databind.ObjectMapper' (OnClassCondition)
JacksonAutoConfiguration.Jackson2ObjectMapperBuilderCustomizerConfiguration matched:
- #ConditionalOnClass found required class 'org.springframework.http.converter.json.Jackson2ObjectMapperBuilder' (OnClassCondition)
JacksonAutoConfiguration.JacksonObjectMapperBuilderConfiguration matched:
- #ConditionalOnClass found required class 'org.springframework.http.converter.json.Jackson2ObjectMapperBuilder' (OnClassCondition)
JacksonAutoConfiguration.JacksonObjectMapperBuilderConfiguration#jacksonObjectMapperBuilder matched:
- #ConditionalOnMissingBean (types: org.springframework.http.converter.json.Jackson2ObjectMapperBuilder; SearchStrategy: all) did not find any beans (OnBeanCondition)
JacksonAutoConfiguration.JacksonObjectMapperConfiguration matched:
- #ConditionalOnClass found required class 'org.springframework.http.converter.json.Jackson2ObjectMapperBuilder' (OnClassCondition)
JacksonAutoConfiguration.JacksonObjectMapperConfiguration#jacksonObjectMapper matched:
- #ConditionalOnMissingBean (types: com.fasterxml.jackson.databind.ObjectMapper; SearchStrategy: all) did not find any beans (OnBeanCondition)
JacksonAutoConfiguration.ParameterNamesModuleConfiguration matched:
- #ConditionalOnClass found required class 'com.fasterxml.jackson.module.paramnames.ParameterNamesModule' (OnClassCondition)
JacksonAutoConfiguration.ParameterNamesModuleConfiguration#parameterNamesModule matched:
- #ConditionalOnMissingBean (types: com.fasterxml.jackson.module.paramnames.ParameterNamesModule; SearchStrategy: all) did not find any beans (OnBeanCondition)
JdbcTemplateAutoConfiguration matched:
- #ConditionalOnClass found required classes 'javax.sql.DataSource', 'org.springframework.jdbc.core.JdbcTemplate' (OnClassCondition)
- #ConditionalOnSingleCandidate (types: javax.sql.DataSource; SearchStrategy: all) found a single bean 'dataSource' (OnBeanCondition)
JdbcTemplateConfiguration matched:
- #ConditionalOnMissingBean (types: org.springframework.jdbc.core.JdbcOperations; SearchStrategy: all) did not find any beans (OnBeanCondition)
JpaBaseConfiguration#entityManagerFactory matched:
- #ConditionalOnMissingBean (types: org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean,javax.persistence.EntityManagerFactory; SearchStrategy: all) did not find any beans (OnBeanCondition)
JpaBaseConfiguration#entityManagerFactoryBuilder matched:
- #ConditionalOnMissingBean (types: org.springframework.boot.orm.jpa.EntityManagerFactoryBuilder; SearchStrategy: all) did not find any beans (OnBeanCondition)
JpaBaseConfiguration#jpaVendorAdapter matched:
- #ConditionalOnMissingBean (types: org.springframework.orm.jpa.JpaVendorAdapter; SearchStrategy: all) did not find any beans (OnBeanCondition)
JpaBaseConfiguration#transactionManager matched:
- #ConditionalOnMissingBean (types: org.springframework.transaction.TransactionManager; SearchStrategy: all) did not find any beans (OnBeanCondition)
JtaAutoConfiguration matched:
- #ConditionalOnClass found required class 'javax.transaction.Transaction' (OnClassCondition)
- #ConditionalOnProperty (spring.jta.enabled) matched (OnPropertyCondition)
LifecycleAutoConfiguration#defaultLifecycleProcessor matched:
- #ConditionalOnMissingBean (names: lifecycleProcessor; SearchStrategy: current) did not find any beans (OnBeanCondition)
NamedParameterJdbcTemplateConfiguration matched:
- #ConditionalOnSingleCandidate (types: org.springframework.jdbc.core.JdbcTemplate; SearchStrategy: all) found a single bean 'jdbcTemplate'; #ConditionalOnMissingBean (types: org.springframework.jdbc.core.namedparam.NamedParameterJdbcOperations; SearchStrategy: all) did not find any beans (OnBeanCondition)
NoOpCacheConfiguration matched:
- Cache org.springframework.boot.autoconfigure.cache.NoOpCacheConfiguration automatic cache type (CacheCondition)
PersistenceExceptionTranslationAutoConfiguration matched:
- #ConditionalOnClass found required class 'org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor' (OnClassCondition)
PersistenceExceptionTranslationAutoConfiguration#persistenceExceptionTranslationPostProcessor matched:
- #ConditionalOnProperty (spring.dao.exceptiontranslation.enabled) matched (OnPropertyCondition)
- #ConditionalOnMissingBean (types: org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor; SearchStrategy: all) did not find any beans (OnBeanCondition)
PropertyPlaceholderAutoConfiguration#propertySourcesPlaceholderConfigurer matched:
- #ConditionalOnMissingBean (types: org.springframework.context.support.PropertySourcesPlaceholderConfigurer; SearchStrategy: current) did not find any beans (OnBeanCondition)
RestTemplateAutoConfiguration matched:
- #ConditionalOnClass found required class 'org.springframework.web.client.RestTemplate' (OnClassCondition)
- NoneNestedConditions 0 matched 1 did not; NestedCondition on RestTemplateAutoConfiguration.NotReactiveWebApplicationCondition.ReactiveWebApplication did not find reactive web application classes (RestTemplateAutoConfiguration.NotReactiveWebApplicationCondition)
RestTemplateAutoConfiguration#restTemplateBuilderConfigurer matched:
- #ConditionalOnMissingBean (types: org.springframework.boot.autoconfigure.web.client.RestTemplateBuilderConfigurer; SearchStrategy: all) did not find any beans (OnBeanCondition)
SimpleCacheConfiguration matched:
- Cache org.springframework.boot.autoconfigure.cache.SimpleCacheConfiguration automatic cache type (CacheCondition)
SqlInitializationAutoConfiguration matched:
- #ConditionalOnProperty (spring.sql.init.enabled) matched (OnPropertyCondition)
- NoneNestedConditions 0 matched 1 did not; NestedCondition on SqlInitializationAutoConfiguration.SqlInitializationModeCondition.ModeIsNever #ConditionalOnProperty (spring.sql.init.mode=never) did not find property 'mode' (SqlInitializationAutoConfiguration.SqlInitializationModeCondition)
TemplateEngineConfigurations.DefaultTemplateEngineConfiguration#templateEngine matched:
- #ConditionalOnMissingBean (types: org.thymeleaf.spring5.ISpringTemplateEngine; SearchStrategy: all) did not find any beans (OnBeanCondition)
ThymeleafAutoConfiguration matched:
- #ConditionalOnClass found required classes 'org.thymeleaf.templatemode.TemplateMode', 'org.thymeleaf.spring5.SpringTemplateEngine' (OnClassCondition)
ThymeleafAutoConfiguration.DefaultTemplateResolverConfiguration matched:
- #ConditionalOnMissingBean (names: defaultTemplateResolver; SearchStrategy: all) did not find any beans (OnBeanCondition)
ThymeleafAutoConfiguration.ThymeleafJava8TimeDialect matched:
- #ConditionalOnClass found required class 'org.thymeleaf.extras.java8time.dialect.Java8TimeDialect' (OnClassCondition)
ThymeleafAutoConfiguration.ThymeleafJava8TimeDialect#java8TimeDialect matched:
- #ConditionalOnMissingBean (types: org.thymeleaf.extras.java8time.dialect.Java8TimeDialect; SearchStrategy: all) did not find any beans (OnBeanCondition)
TransactionAutoConfiguration matched:
- #ConditionalOnClass found required class 'org.springframework.transaction.PlatformTransactionManager' (OnClassCondition)
TransactionAutoConfiguration#platformTransactionManagerCustomizers matched:
- #ConditionalOnMissingBean (types: org.springframework.boot.autoconfigure.transaction.TransactionManagerCustomizers; SearchStrategy: all) did not find any beans (OnBeanCondition)
TransactionAutoConfiguration.EnableTransactionManagementConfiguration matched:
- #ConditionalOnBean (types: org.springframework.transaction.TransactionManager; SearchStrategy: all) found bean 'transactionManager'; #ConditionalOnMissingBean (types: org.springframework.transaction.annotation.AbstractTransactionManagementConfiguration; SearchStrategy: all) did not find any beans (OnBeanCondition)
TransactionAutoConfiguration.EnableTransactionManagementConfiguration.CglibAutoProxyConfiguration matched:
- #ConditionalOnProperty (spring.aop.proxy-target-class=true) matched (OnPropertyCondition)
TransactionAutoConfiguration.TransactionTemplateConfiguration matched:
- #ConditionalOnSingleCandidate (types: org.springframework.transaction.PlatformTransactionManager; SearchStrategy: all) found a single bean 'transactionManager' (OnBeanCondition)
TransactionAutoConfiguration.TransactionTemplateConfiguration#transactionTemplate matched:
- #ConditionalOnMissingBean (types: org.springframework.transaction.support.TransactionOperations; SearchStrategy: all) did not find any beans (OnBeanCondition)
ValidationAutoConfiguration matched:
- #ConditionalOnClass found required class 'javax.validation.executable.ExecutableValidator' (OnClassCondition)
- #ConditionalOnResource found location classpath:META-INF/services/javax.validation.spi.ValidationProvider (OnResourceCondition)
ValidationAutoConfiguration#defaultValidator matched:
- #ConditionalOnMissingBean (types: javax.validation.Validator; SearchStrategy: all) did not find any beans (OnBeanCondition)
ValidationAutoConfiguration#methodValidationPostProcessor matched:
- #ConditionalOnMissingBean (types: org.springframework.validation.beanvalidation.MethodValidationPostProcessor; SearchStrategy: current) did not find any beans (OnBeanCondition)
Exclusions:
org.springframework.boot.autoconfigure.aop.AopAutoConfiguration
org.springframework.boot.autoconfigure.task.TaskExecutionAutoConfiguration
org.springframework.boot.autoconfigure.task.TaskSchedulingAutoConfiguration
org.springframework.boot.autoconfigure.http.HttpMessageConvertersAutoConfiguration
Unconditional classes:
org.springframework.boot.autoconfigure.context.ConfigurationPropertiesAutoConfiguration
org.springframework.boot.autoconfigure.context.LifecycleAutoConfiguration
org.springframework.boot.autoconfigure.context.PropertyPlaceholderAutoConfiguration
org.springframework.boot.autoconfigure.availability.ApplicationAvailabilityAutoConfiguration
org.springframework.boot.autoconfigure.info.ProjectInfoAutoConfiguration
[INFO ] [10-09-2022 17:19:16,674 [DefaultDispatcher-worker-2] SpringApplication:org.springframework.boot.StartupInfoLogger.logStarted(StartupInfoLogger.java:61)]:Started application in 5.61 seconds (JVM running for 7.131)

turn off debug logging spring boot

Issue
I want to turn off the debug output on the console for my spring boot application.
I expected to have a default INFO logging. But that is not the case.
I tried to turn the levels off brute force with
https://mkyong.com/spring-boot/spring-boot-log4j-2-example/
I dont like this a currently it does not even work.
In how turn off debug log messages in spring boot this is marked as a solution. I dont think it is.
I reduced my project to the minimum and get this Error for multiple kind of setups.
Initially i tried to use Spring Boot 2.2.1.RELEASE with Jupiter and Log4J2. With Log4J i was able to reduce the logging but i had to set each Logger individually. The hierarchy did not seem to work.
Here I present Spring Boot 2.1.1.RELEASE with Junit4 and default logging (should be logback).
pom.xml
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.source>1.8</maven.compiler.source>
<spring-boot.version>2.1.1.RELEASE</spring-boot.version>
<maven-surefire-plugin.version>2.22.2</maven-surefire-plugin.version>
</properties>
<build>
<plugins>
<plugin>
<artifactId>spring-boot-maven-plugin</artifactId>
<groupId>org.springframework.boot</groupId>
<version>${spring-boot.version}</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${maven-surefire-plugin.version}</version>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>${maven.compiler.source}</source>
<target>${maven.compiler.target}</target>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<version>${spring-boot.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
my code
TestClazz.java
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
#RunWith(SpringRunner.class)
#SpringBootTest
public class TestClazz {
#Test
public void testSomething() {
System.out.println("hi");
}
}
TestSpringBootApplication.java
import org.springframework.boot.autoconfigure.SpringBootApplication;
#SpringBootApplication
public class TestSpringBootApplication {
}
my configuration
application.properties
logging.level.org.springframework=OFF
logging.level.root=OFF
logback-test.xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<include resource="org/springframework/boot/logging/logback/base.xml" />
<logger name="org.springframework" level="OFF"/>
</configuration>
project structure
console output
[INFO] Scanning for projects...
[WARNING]
[WARNING] Some problems were encountered while building the effective model for com.fee:fdsg:jar:0.0.1-SNAPSHOT
[WARNING] 'build.plugins.plugin.version' for org.apache.maven.plugins:maven-compiler-plugin is missing. # line 30, column 12
[WARNING]
[WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.
[WARNING]
[WARNING] For this reason, future Maven versions might no longer support building such malformed projects.
[WARNING]
[INFO]
[INFO] ----------------------------< com.fee:fdsg >----------------------------
[INFO] Building fdsg 0.0.1-SNAPSHOT
.....
[INFO] Compiling 2 source files to [[CENSORED]]]\fdsg\target\test-classes
[INFO]
[INFO] --- maven-surefire-plugin:2.22.2:test (default-test) # fdsg ---
[INFO]
[INFO] -------------------------------------------------------
[INFO] T E S T S
[INFO] -------------------------------------------------------
[INFO] Running any.TestClazz
2020-04-06 22:18:07.802 DEBUG 14616 --- [ main] .c.l.ClasspathLoggingApplicationListener : Application started with classpath: [file:/C:/winapp/cygwin304/tmp/surefire101039361747353203/surefirebooter234714427829446725.jar]
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v2.1.1.RELEASE)
2020-04-06 22:18:07.863 DEBUG 14616 --- [ main] o.s.boot.SpringApplication : Loading source class any.TestSpringBootApplication
2020-04-06 22:18:07.877 DEBUG 14616 --- [ main] o.s.b.c.c.ConfigFileApplicationListener : Loaded config file '[[CENSORED]]]/fdsg/target/classes/application.properties' (classpath:/application.properties)
2020-04-06 22:18:08.241 DEBUG 14616 --- [ main] ConditionEvaluationReportLoggingListener :
============================
CONDITIONS EVALUATION REPORT
============================
Positive matches:
-----------------
GenericCacheConfiguration matched:
- Cache org.springframework.boot.autoconfigure.cache.GenericCacheConfiguration automatic cache type (CacheCondition)
NoOpCacheConfiguration matched:
- Cache org.springframework.boot.autoconfigure.cache.NoOpCacheConfiguration automatic cache type (CacheCondition)
PropertyPlaceholderAutoConfiguration#propertySourcesPlaceholderConfigurer matched:
- #ConditionalOnMissingBean (types: org.springframework.context.support.PropertySourcesPlaceholderConfigurer; SearchStrategy: current) did not find any beans (OnBeanCondition)
SimpleCacheConfiguration matched:
- Cache org.springframework.boot.autoconfigure.cache.SimpleCacheConfiguration automatic cache type (CacheCondition)
TaskExecutionAutoConfiguration matched:
- #ConditionalOnClass found required class 'org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor' (OnClassCondition)
TaskExecutionAutoConfiguration#applicationTaskExecutor matched:
- #ConditionalOnMissingBean (types: java.util.concurrent.Executor; SearchStrategy: all) did not find any beans (OnBeanCondition)
TaskExecutionAutoConfiguration#taskExecutorBuilder matched:
- #ConditionalOnMissingBean (types: org.springframework.boot.task.TaskExecutorBuilder; SearchStrategy: all) did not find any beans (OnBeanCondition)
TaskSchedulingAutoConfiguration matched:
- #ConditionalOnClass found required class 'org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler' (OnClassCondition)
TaskSchedulingAutoConfiguration#taskSchedulerBuilder matched:
- #ConditionalOnMissingBean (types: org.springframework.boot.task.TaskSchedulerBuilder; SearchStrategy: all) did not find any beans (OnBeanCondition)
Negative matches:
-----------------
ActiveMQAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'javax.jms.ConnectionFactory' (OnClassCondition)
AopAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.aspectj.lang.annotation.Aspect' (OnClassCondition)
ArtemisAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'javax.jms.ConnectionFactory' (OnClassCondition)
BatchAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.batch.core.launch.JobLauncher' (OnClassCondition)
CacheAutoConfiguration:
Did not match:
- #ConditionalOnBean (types: org.springframework.cache.interceptor.CacheAspectSupport; SearchStrategy: all) did not find any beans of type org.springframework.cache.interceptor.CacheAspectSupport (OnBeanCondition)
Matched:
- #ConditionalOnClass found required class 'org.springframework.cache.CacheManager' (OnClassCondition)
CacheAutoConfiguration.CacheManagerJpaDependencyConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean' (OnClassCondition)
- Ancestor org.springframework.boot.autoconfigure.cache.CacheAutoConfiguration did not match (ConditionEvaluationReport.AncestorsMatchedCondition)
CaffeineCacheConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'com.github.benmanes.caffeine.cache.Caffeine', 'org.springframework.cache.caffeine.CaffeineCacheManager' (OnClassCondition)
CassandraAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.datastax.driver.core.Cluster' (OnClassCondition)
CassandraDataAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.datastax.driver.core.Cluster' (OnClassCondition)
CassandraReactiveDataAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.datastax.driver.core.Cluster' (OnClassCondition)
CassandraReactiveRepositoriesAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.data.cassandra.ReactiveSession' (OnClassCondition)
CassandraRepositoriesAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.datastax.driver.core.Session' (OnClassCondition)
ClientHttpConnectorAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.web.reactive.function.client.WebClient' (OnClassCondition)
....
HazelcastCacheConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'com.hazelcast.core.HazelcastInstance', 'com.hazelcast.spring.cache.HazelcastCacheManager' (OnClassCondition)
HazelcastJpaDependencyAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.hazelcast.core.HazelcastInstance' (OnClassCondition)
HibernateJpaAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'javax.persistence.EntityManager' (OnClassCondition)
HttpEncodingAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.web.filter.CharacterEncodingFilter' (OnClassCondition)
HttpHandlerAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.http.server.reactive.HttpHandler' (OnClassCondition)
HttpMessageConvertersAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.http.converter.HttpMessageConverter' (OnClassCondition)
HypermediaAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.hateoas.Resource' (OnClassCondition)
InfinispanCacheConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.infinispan.spring.provider.SpringEmbeddedCacheManager' (OnClassCondition)
InfluxDbAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.influxdb.InfluxDB' (OnClassCondition)
IntegrationAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.integration.config.EnableIntegration' (OnClassCondition)
JCacheCacheConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'javax.cache.Caching', 'org.springframework.cache.jcache.JCacheCacheManager' (OnClassCondition)
JacksonAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.fasterxml.jackson.databind.ObjectMapper' (OnClassCondition)
JdbcRepositoriesAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.data.jdbc.repository.config.JdbcConfiguration' (OnClassCondition)
JdbcTemplateAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.jdbc.core.JdbcTemplate' (OnClassCondition)
JerseyAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'javax.servlet.ServletRegistration' (OnClassCondition)
JestAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'io.searchbox.client.JestClient' (OnClassCondition)
JmsAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'javax.jms.Message' (OnClassCondition)
JmxAutoConfiguration:
Did not match:
- #ConditionalOnProperty (spring.jmx.enabled=true) found different value in property 'enabled' (OnPropertyCondition)
Matched:
- #ConditionalOnClass found required class 'org.springframework.jmx.export.MBeanExporter' (OnClassCondition)
JndiConnectionFactoryAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.jms.core.JmsTemplate' (OnClassCondition)
JndiDataSourceAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseType' (OnClassCondition)
JooqAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.jooq.DSLContext' (OnClassCondition)
JpaRepositoriesAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.data.jpa.repository.JpaRepository' (OnClassCondition)
JsonbAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'javax.json.bind.Jsonb' (OnClassCondition)
JtaAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'javax.transaction.Transaction' (OnClassCondition)
KafkaAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.kafka.core.KafkaTemplate' (OnClassCondition)
LdapAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.ldap.core.ContextSource' (OnClassCondition)
LdapRepositoriesAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.data.ldap.repository.LdapRepository' (OnClassCondition)
LiquibaseAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'liquibase.change.DatabaseChange' (OnClassCondition)
MailSenderAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'javax.mail.internet.MimeMessage' (OnClassCondition)
MailSenderValidatorAutoConfiguration:
Did not match:
- #ConditionalOnSingleCandidate did not find required type 'org.springframework.mail.javamail.JavaMailSenderImpl' (OnBeanCondition)
MessageSourceAutoConfiguration:
Did not match:
- ResourceBundle did not find bundle with basename messages (MessageSourceAutoConfiguration.ResourceBundleCondition)
MongoAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.mongodb.MongoClient' (OnClassCondition)
MongoDataAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.mongodb.client.MongoClient' (OnClassCondition)
MongoReactiveAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.mongodb.reactivestreams.client.MongoClient' (OnClassCondition)
MongoReactiveDataAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.mongodb.reactivestreams.client.MongoClient' (OnClassCondition)
MongoReactiveRepositoriesAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.mongodb.reactivestreams.client.MongoClient' (OnClassCondition)
MongoRepositoriesAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.mongodb.MongoClient' (OnClassCondition)
MultipartAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'javax.servlet.MultipartConfigElement' (OnClassCondition)
MustacheAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.samskivert.mustache.Mustache' (OnClassCondition)
Neo4jDataAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.neo4j.ogm.session.SessionFactory' (OnClassCondition)
Neo4jRepositoriesAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.neo4j.ogm.session.Neo4jSession' (OnClassCondition)
OAuth2ClientAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.security.config.annotation.web.configuration.EnableWebSecurity' (OnClassCondition)
OAuth2ResourceServerAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.security.oauth2.server.resource.authentication.JwtAuthenticationToken' (OnClassCondition)
PersistenceExceptionTranslationAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor' (OnClassCondition)
ProjectInfoAutoConfiguration#buildProperties:
Did not match:
- #ConditionalOnResource did not find resource '${spring.info.build.location:classpath:META-INF/build-info.properties}' (OnResourceCondition)
ProjectInfoAutoConfiguration#gitProperties:
Did not match:
- GitResource did not find git info at classpath:git.properties (ProjectInfoAutoConfiguration.GitResourceAvailableCondition)
QuartzAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.quartz.Scheduler' (OnClassCondition)
RabbitAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.rabbitmq.client.Channel' (OnClassCondition)
ReactiveOAuth2ClientAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'reactor.core.publisher.Flux' (OnClassCondition)
ReactiveOAuth2ResourceServerAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.security.config.annotation.web.reactive.EnableWebFluxSecurity' (OnClassCondition)
ReactiveSecurityAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'reactor.core.publisher.Flux' (OnClassCondition)
ReactiveUserDetailsServiceAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.security.authentication.ReactiveAuthenticationManager' (OnClassCondition)
ReactiveWebServerFactoryAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.http.ReactiveHttpInputMessage' (OnClassCondition)
ReactorCoreAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'reactor.core.publisher.Flux' (OnClassCondition)
RedisAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.data.redis.core.RedisOperations' (OnClassCondition)
RedisCacheConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.data.redis.connection.RedisConnectionFactory' (OnClassCondition)
RedisReactiveAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'reactor.core.publisher.Flux' (OnClassCondition)
RedisRepositoriesAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.data.redis.repository.configuration.EnableRedisRepositories' (OnClassCondition)
RepositoryRestMvcAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.data.rest.webmvc.config.RepositoryRestMvcConfiguration' (OnClassCondition)
RestClientAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.elasticsearch.client.RestClient' (OnClassCondition)
RestTemplateAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.web.client.RestTemplate' (OnClassCondition)
SecurityAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.security.authentication.DefaultAuthenticationEventPublisher' (OnClassCondition)
SecurityFilterAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.security.config.http.SessionCreationPolicy' (OnClassCondition)
SecurityRequestMatcherProviderAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.security.web.util.matcher.RequestMatcher' (OnClassCondition)
SendGridAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.sendgrid.SendGrid' (OnClassCondition)
ServletWebServerFactoryAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'javax.servlet.ServletRequest' (OnClassCondition)
SessionAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.session.Session' (OnClassCondition)
SolrAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.apache.solr.client.solrj.impl.CloudSolrClient' (OnClassCondition)
SolrRepositoriesAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.apache.solr.client.solrj.SolrClient' (OnClassCondition)
SpringApplicationAdminJmxAutoConfiguration:
Did not match:
- #ConditionalOnProperty (spring.application.admin.enabled=true) did not find property 'enabled' (OnPropertyCondition)
SpringDataWebAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.data.web.PageableHandlerMethodArgumentResolver' (OnClassCondition)
TaskSchedulingAutoConfiguration#taskScheduler:
Did not match:
- #ConditionalOnBean (names: org.springframework.context.annotation.internalScheduledAnnotationProcessor; SearchStrategy: all) did not find any beans named org.springframework.context.annotation.internalScheduledAnnotationProcessor (OnBeanCondition)
ThymeleafAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.thymeleaf.templatemode.TemplateMode' (OnClassCondition)
TransactionAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.transaction.PlatformTransactionManager' (OnClassCondition)
UserDetailsServiceAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.security.authentication.AuthenticationManager' (OnClassCondition)
ValidationAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'javax.validation.executable.ExecutableValidator' (OnClassCondition)
WebClientAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.web.reactive.function.client.WebClient' (OnClassCondition)
WebFluxAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.web.reactive.config.WebFluxConfigurer' (OnClassCondition)
WebMvcAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'javax.servlet.Servlet' (OnClassCondition)
WebServiceTemplateAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.oxm.Marshaller' (OnClassCondition)
WebServicesAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.ws.transport.http.MessageDispatcherServlet' (OnClassCondition)
WebSocketMessagingAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.web.socket.config.annotation.WebSocketMessageBrokerConfigurer' (OnClassCondition)
WebSocketReactiveAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'javax.servlet.Servlet' (OnClassCondition)
WebSocketServletAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'javax.servlet.Servlet' (OnClassCondition)
XADataSourceAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'javax.transaction.TransactionManager' (OnClassCondition)
Exclusions:
-----------
None
Unconditional classes:
----------------------
org.springframework.boot.autoconfigure.context.ConfigurationPropertiesAutoConfiguration
org.springframework.boot.autoconfigure.context.PropertyPlaceholderAutoConfiguration
org.springframework.boot.autoconfigure.info.ProjectInfoAutoConfiguration
hi
[INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 1.214 s - in any.TestClazz
[INFO]
[INFO] Results:
[INFO]
[INFO] Tests run: 1, Failures: 0, Errors: 0, Skipped: 0
.......
To enable logs till INFO and not log messages with levels DEBUG and TRACE this should suffice:
logging.level.root=INFO
the logging.level.* should have one of the following values: ERROR, WARN, INFO, DEBUG, or TRACE. You can refer to the documentation here.
If you specify a particular level, all levels are enabled starting from ERROR till that level. For instance, setting logging.level.root=INFO will log ERROR, WARN, and INFO messages.

Kafka configuration for Spring Integration on Spring Boot

I have a working prototype Spring Boot application which listens on a Kafka queue. Apart from the configuration in application.yml, all that is required is a MessageListener implementation annotated with #KafkaListener.
Am now introducing Spring Integration, and to do so have configured these beans:
#Bean
public KafkaMessageDrivenChannelAdapter<String, String>
adapter(KafkaMessageListenerContainer<String, String> container) {
KafkaMessageDrivenChannelAdapter<String, String> kafkaMessageDrivenChannelAdapter =
new KafkaMessageDrivenChannelAdapter<>(container);
kafkaMessageDrivenChannelAdapter.setOutputChannel(receiver());
return kafkaMessageDrivenChannelAdapter;
}
#Bean
public KafkaMessageListenerContainer<String, String> container() throws Exception {
ContainerProperties properties = new ContainerProperties(this.topic);
// set more properties
return new KafkaMessageListenerContainer<>(consumerFactory(), properties);
}
#Bean
public ConsumerFactory<String, String> consumerFactory() {
Map<String, Object> props = ...; // set proerties
return new DefaultKafkaConsumerFactory<>(props);
}
The application is not starting, and is throwing this error:
Parameter 1 of method kafkaListenerContainerFactory in org.springframework.boot.autoconfigure.kafka.KafkaAnnotationDrivenConfiguration required a bean of type 'org.springframework.kafka.core.ConsumerFactory' that could not be found.
- Bean method 'kafkaConsumerFactory' in 'KafkaAutoConfiguration' not loaded because #ConditionalOnMissingBean (types: org.springframework.kafka.core.ConsumerFactory; SearchStrategy: all) found bean 'consumerFactory'
Action:
Consider revisiting the conditions above or defining a bean of type 'org.springframework.kafka.core.ConsumerFactory' in your configuration.
This is even though I have defined a ConsumerFactory bean.
Running in debug mode, it is apparent that Boot is loading a KafkaListenerEndpointContainer bean to listen on the broker:
[org.springframework.kafka.KafkaListenerEndpointContainer#0-0-C-1] o.a.k.c.c.internals.AbstractCoordinator : Discovered coordinator localhost:9092 (id: 2147483999 rack: null) for group my_group.
Then:
KafkaAnnotationDrivenConfiguration matched:
- #ConditionalOnClass found required class 'org.springframework.kafka.annotation.EnableKafka'; #ConditionalOnMissingClass did not find unwanted class (OnClassCondition)
KafkaAnnotationDrivenConfiguration#kafkaListenerContainerFactory matched:
- #ConditionalOnMissingBean (names: kafkaListenerContainerFactory; SearchStrategy: all) did not find any beans (OnBeanCondition)
KafkaAnnotationDrivenConfiguration#kafkaListenerContainerFactoryConfigurer matched:
- #ConditionalOnMissingBean (types: org.springframework.boot.autoconfigure.kafka.ConcurrentKafkaListenerContainerFactoryConfigurer; SearchStrategy: all) did not find any beans (OnBeanCondition)
KafkaAnnotationDrivenConfiguration.EnableKafkaConfiguration matched:
- #ConditionalOnMissingBean (names: org.springframework.kafka.config.internalKafkaListenerAnnotationProcessor; SearchStrategy: all) did not find any beans (OnBeanCondition)
KafkaAutoConfiguration matched:
- #ConditionalOnClass found required class 'org.springframework.kafka.core.KafkaTemplate'; #ConditionalOnMissingClass did not find unwanted class (OnClassCondition)
KafkaAutoConfiguration#kafkaProducerFactory matched:
- #ConditionalOnMissingBean (types: org.springframework.kafka.core.ProducerFactory; SearchStrategy: all) did not find any beans (OnBeanCondition)
KafkaAutoConfiguration#kafkaProducerListener matched:
- #ConditionalOnMissingBean (types: org.springframework.kafka.support.ProducerListener; SearchStrategy: all) did not find any beans (OnBeanCondition)
KafkaAutoConfiguration#kafkaTemplate matched:
- #ConditionalOnMissingBean (types: org.springframework.kafka.core.KafkaTemplate; SearchStrategy: all) did not find any beans (OnBeanCondition)
I think what is happening is that the Spring Boot\Kafa auto configuration is clashing with the Spring Integration\Kafka setup. What is the correct way to resolve this?
Thanks
You can either use Boot's Consumer factory...
#Bean
public KafkaMessageListenerContainer<String, String> container(ConsumerFactory<String, String> cf) {
...
}
Or disable kafka auto configuration
#SpringBootApplication(exclude = KafkaAutoConfiguration.class)

Not able to start SpringBoot app in debug mode, Closing org.springframework.context.annotation.AnnotationConfigApplicationContext

My application is a web application and I am able to hit endpoints successfully when run using "mvn spring-boot:run". Only problem is application shuts down when run in debug mode in intellij and not able to debug my application.
pom.xml:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>1.5.2.RELEASE</version>
<relativePath/> <!-- lookup parent body repository -->
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-activemq</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<!--<scope>provided</scope>-->
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
Output:
=========================
AUTO-CONFIGURATION REPORT
=========================
Positive matches:
-----------------
.....
Negative matches:
-----------------
ActiveMQAutoConfiguration:
Did not match:
- #ConditionalOnMissingBean (types: javax.jms.ConnectionFactory; SearchStrategy: all) found bean 'getConnectionFactory' (OnBeanCondition)
Matched:
- #ConditionalOnClass found required classes 'javax.jms.ConnectionFactory', 'org.apache.activemq.ActiveMQConnectionFactory'; #ConditionalOnMissingClass did not find unwanted class (OnClassCondition)
ActiveMQConnectionFactoryConfiguration.PooledConnectionFactoryConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.apache.activemq.pool.PooledConnectionFactory' (OnClassCondition)
ActiveMQXAConnectionFactoryConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'javax.transaction.TransactionManager' (OnClassCondition)
AopAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'org.aspectj.lang.annotation.Aspect', 'org.aspectj.lang.reflect.Advice' (OnClassCondition)
ArtemisAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory' (OnClassCondition)
BatchAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'org.springframework.batch.core.launch.JobLauncher', 'org.springframework.jdbc.core.JdbcOperations' (OnClassCondition)
CacheAutoConfiguration:
Did not match:
- #ConditionalOnBean (types: org.springframework.cache.interceptor.CacheAspectSupport; SearchStrategy: all) did not find any beans (OnBeanCondition)
Matched:
- #ConditionalOnClass found required class 'org.springframework.cache.CacheManager'; #ConditionalOnMissingClass did not find unwanted class (OnClassCondition)
CacheAutoConfiguration.CacheManagerJpaDependencyConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean' (OnClassCondition)
- Ancestor org.springframework.boot.autoconfigure.cache.CacheAutoConfiguration did not match (ConditionEvaluationReport.AncestorsMatchedCondition)
CaffeineCacheConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'com.github.benmanes.caffeine.cache.Caffeine', 'org.springframework.cache.caffeine.CaffeineCacheManager' (OnClassCondition)
CassandraAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.datastax.driver.core.Cluster' (OnClassCondition)
CassandraDataAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'com.datastax.driver.core.Cluster', 'org.springframework.data.cassandra.core.CassandraAdminOperations' (OnClassCondition)
CassandraRepositoriesAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'com.datastax.driver.core.Session', 'org.springframework.data.cassandra.repository.CassandraRepository' (OnClassCondition)
CloudAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.cloud.config.java.CloudScanConfiguration' (OnClassCondition)
CouchbaseAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'com.couchbase.client.java.CouchbaseBucket', 'com.couchbase.client.java.Cluster' (OnClassCondition)
CouchbaseCacheConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'com.couchbase.client.java.Bucket', 'com.couchbase.client.spring.cache.CouchbaseCacheManager' (OnClassCondition)
CouchbaseDataAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'com.couchbase.client.java.Bucket', 'org.springframework.data.couchbase.repository.CouchbaseRepository' (OnClassCondition)
CouchbaseRepositoriesAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'com.couchbase.client.java.Bucket', 'org.springframework.data.couchbase.repository.CouchbaseRepository' (OnClassCondition)
DataSourceAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseType' (OnClassCondition)
DataSourceTransactionManagerAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.jdbc.core.JdbcTemplate' (OnClassCondition)
DeviceDelegatingViewResolverAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.mobile.device.view.LiteDeviceDelegatingViewResolver' (OnClassCondition)
DeviceResolverAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'org.springframework.mobile.device.DeviceResolverHandlerInterceptor', 'org.springframework.mobile.device.DeviceHandlerMethodArgumentResolver' (OnClassCondition)
DispatcherServletAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.web.servlet.DispatcherServlet' (OnClassCondition)
EhCacheCacheConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'net.sf.ehcache.Cache', 'org.springframework.cache.ehcache.EhCacheCacheManager' (OnClassCondition)
ElasticsearchAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'org.elasticsearch.client.Client', 'org.springframework.data.elasticsearch.client.TransportClientFactoryBean', 'org.springframework.data.elasticsearch.client.NodeClientFactoryBean' (OnClassCondition)
ElasticsearchDataAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'org.elasticsearch.client.Client', 'org.springframework.data.elasticsearch.core.ElasticsearchTemplate' (OnClassCondition)
ElasticsearchRepositoriesAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'org.elasticsearch.client.Client', 'org.springframework.data.elasticsearch.repository.ElasticsearchRepository' (OnClassCondition)
EmbeddedLdapAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.unboundid.ldap.listener.InMemoryDirectoryServer' (OnClassCondition)
EmbeddedMongoAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'com.mongodb.Mongo', 'de.flapdoodle.embed.mongo.MongodStarter' (OnClassCondition)
EmbeddedServletContainerAutoConfiguration:
Did not match:
- #ConditionalOnWebApplication (required) not a web application (OnWebApplicationCondition)
ErrorMvcAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'javax.servlet.Servlet', 'org.springframework.web.servlet.DispatcherServlet' (OnClassCondition)
FacebookAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'org.springframework.social.config.annotation.SocialConfigurerAdapter', 'org.springframework.social.facebook.connect.FacebookConnectionFactory' (OnClassCondition)
FallbackWebSecurityAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.security.config.annotation.web.configuration.EnableWebSecurity' (OnClassCondition)
FlywayAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.flywaydb.core.Flyway' (OnClassCondition)
FreeMarkerAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'freemarker.template.Configuration', 'org.springframework.ui.freemarker.FreeMarkerConfigurationFactory' (OnClassCondition)
GroovyTemplateAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'groovy.text.markup.MarkupTemplateEngine' (OnClassCondition)
GsonAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.google.gson.Gson' (OnClassCondition)
GsonHttpMessageConvertersConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.google.gson.Gson' (OnClassCondition)
GuavaCacheConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'com.google.common.cache.CacheBuilder', 'org.springframework.cache.guava.GuavaCacheManager' (OnClassCondition)
H2ConsoleAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.h2.server.web.WebServlet' (OnClassCondition)
HazelcastAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.hazelcast.core.HazelcastInstance' (OnClassCondition)
HazelcastCacheConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'com.hazelcast.core.HazelcastInstance', 'com.hazelcast.spring.cache.HazelcastCacheManager' (OnClassCondition)
HazelcastJpaDependencyAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'com.hazelcast.core.HazelcastInstance', 'org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean' (OnClassCondition)
HibernateJpaAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean', 'javax.persistence.EntityManager' (OnClassCondition)
HttpEncodingAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.web.filter.CharacterEncodingFilter' (OnClassCondition)
HypermediaAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'org.springframework.hateoas.Resource', 'org.springframework.plugin.core.Plugin' (OnClassCondition)
InfinispanCacheConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.infinispan.spring.provider.SpringEmbeddedCacheManager' (OnClassCondition)
IntegrationAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.integration.config.EnableIntegration' (OnClassCondition)
JCacheCacheConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'javax.cache.Caching', 'org.springframework.cache.jcache.JCacheCacheManager' (OnClassCondition)
JacksonAutoConfiguration.JodaDateTimeJacksonConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'org.joda.time.DateTime', 'com.fasterxml.jackson.datatype.joda.ser.DateTimeSerializer', 'com.fasterxml.jackson.datatype.joda.cfg.JacksonJodaDateFormat' (OnClassCondition)
JacksonAutoConfiguration.ParameterNamesModuleConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.fasterxml.jackson.module.paramnames.ParameterNamesModule' (OnClassCondition)
JacksonHttpMessageConvertersConfiguration.MappingJackson2XmlHttpMessageConverterConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.fasterxml.jackson.dataformat.xml.XmlMapper' (OnClassCondition)
JdbcTemplateAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.jdbc.core.JdbcTemplate' (OnClassCondition)
JerseyAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'org.glassfish.jersey.server.spring.SpringComponentProvider', 'javax.servlet.ServletRegistration' (OnClassCondition)
JestAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'io.searchbox.client.JestClient' (OnClassCondition)
JmsAnnotationDrivenConfiguration.JndiConfiguration:
Did not match:
- #ConditionalOnJndi JNDI environment is not available (OnJndiCondition)
JmsAutoConfiguration.JmsTemplateConfiguration#jmsTemplate:
Did not match:
- #ConditionalOnMissingBean (types: org.springframework.jms.core.JmsTemplate; SearchStrategy: all) found bean 'getJmsTemplate' (OnBeanCondition)
JndiConnectionFactoryAutoConfiguration:
Did not match:
- AnyNestedCondition 0 matched 2 did not; NestedCondition on JndiConnectionFactoryAutoConfiguration.JndiOrPropertyCondition.Property #ConditionalOnProperty (spring.jms.jndi-name) did not find property 'jndi-name'; NestedCondition on JndiConnectionFactoryAutoConfiguration.JndiOrPropertyCondition.Jndi #ConditionalOnJndi JNDI environment is not available (JndiConnectionFactoryAutoConfiguration.JndiOrPropertyCondition)
Matched:
- #ConditionalOnClass found required class 'org.springframework.jms.core.JmsTemplate'; #ConditionalOnMissingClass did not find unwanted class (OnClassCondition)
JndiDataSourceAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseType' (OnClassCondition)
JooqAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.jooq.DSLContext' (OnClassCondition)
JpaRepositoriesAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.data.jpa.repository.JpaRepository' (OnClassCondition)
JtaAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'javax.transaction.Transaction' (OnClassCondition)
KafkaAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.kafka.core.KafkaTemplate' (OnClassCondition)
LdapAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.ldap.core.ContextSource' (OnClassCondition)
LdapDataAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.data.ldap.repository.LdapRepository' (OnClassCondition)
LdapRepositoriesAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.data.ldap.repository.LdapRepository' (OnClassCondition)
LinkedInAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'org.springframework.social.config.annotation.SocialConfigurerAdapter', 'org.springframework.social.linkedin.connect.LinkedInConnectionFactory' (OnClassCondition)
LiquibaseAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'liquibase.integration.spring.SpringLiquibase' (OnClassCondition)
MailSenderAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'javax.mail.internet.MimeMessage' (OnClassCondition)
MailSenderValidatorAutoConfiguration:
Did not match:
- #ConditionalOnProperty (spring.mail.test-connection) did not find property 'test-connection' (OnPropertyCondition)
MessageSourceAutoConfiguration:
Did not match:
- ResourceBundle did not find bundle with basename messages (MessageSourceAutoConfiguration.ResourceBundleCondition)
MongoAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.mongodb.MongoClient' (OnClassCondition)
MongoDataAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'com.mongodb.Mongo', 'org.springframework.data.mongodb.core.MongoTemplate' (OnClassCondition)
MongoRepositoriesAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'com.mongodb.Mongo', 'org.springframework.data.mongodb.repository.MongoRepository' (OnClassCondition)
MultipartAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'javax.servlet.Servlet', 'javax.servlet.MultipartConfigElement' (OnClassCondition)
MustacheAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.samskivert.mustache.Mustache' (OnClassCondition)
Neo4jDataAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.neo4j.ogm.session.SessionFactory' (OnClassCondition)
Neo4jRepositoriesAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'org.neo4j.ogm.session.Neo4jSession', 'org.springframework.data.neo4j.repository.GraphRepository' (OnClassCondition)
OAuth2AutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.security.oauth2.common.OAuth2AccessToken' (OnClassCondition)
ProjectInfoAutoConfiguration#buildProperties:
Did not match:
- #ConditionalOnResource did not find resource '${spring.info.build.location:classpath:META-INF/build-info.properties}' (OnResourceCondition)
ProjectInfoAutoConfiguration#gitProperties:
Did not match:
- GitResource did not find git info at classpath:git.properties (ProjectInfoAutoConfiguration.GitResourceAvailableCondition)
RabbitAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'org.springframework.amqp.rabbit.core.RabbitTemplate', 'com.rabbitmq.client.Channel' (OnClassCondition)
ReactorAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'reactor.spring.context.config.EnableReactor', 'reactor.Environment' (OnClassCondition)
RedisAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'org.springframework.data.redis.connection.jedis.JedisConnection', 'org.springframework.data.redis.core.RedisOperations', 'redis.clients.jedis.Jedis' (OnClassCondition)
RedisRepositoriesAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'redis.clients.jedis.Jedis', 'org.springframework.data.redis.repository.configuration.EnableRedisRepositories' (OnClassCondition)
RepositoryRestMvcAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.data.rest.webmvc.config.RepositoryRestMvcConfiguration' (OnClassCondition)
SecurityAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'org.springframework.security.authentication.AuthenticationManager', 'org.springframework.security.config.annotation.authentication.configurers.GlobalAuthenticationConfigurerAdapter' (OnClassCondition)
SecurityFilterAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'org.springframework.security.web.context.AbstractSecurityWebApplicationInitializer', 'org.springframework.security.config.http.SessionCreationPolicy' (OnClassCondition)
SendGridAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.sendgrid.SendGrid' (OnClassCondition)
ServerPropertiesAutoConfiguration:
Did not match:
- #ConditionalOnWebApplication (required) not a web application (OnWebApplicationCondition)
SessionAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.session.Session' (OnClassCondition)
SitePreferenceAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'org.springframework.mobile.device.site.SitePreferenceHandlerInterceptor', 'org.springframework.mobile.device.site.SitePreferenceHandlerMethodArgumentResolver' (OnClassCondition)
SocialWebAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'org.springframework.social.connect.web.ConnectController', 'org.springframework.social.config.annotation.SocialConfigurerAdapter' (OnClassCondition)
SolrAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'org.apache.solr.client.solrj.impl.HttpSolrClient', 'org.apache.solr.client.solrj.impl.CloudSolrClient' (OnClassCondition)
SolrRepositoriesAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'org.apache.solr.client.solrj.SolrClient', 'org.springframework.data.solr.repository.SolrRepository' (OnClassCondition)
SpringApplicationAdminJmxAutoConfiguration:
Did not match:
- #ConditionalOnProperty (spring.application.admin.enabled=true) did not find property 'enabled' (OnPropertyCondition)
SpringDataWebAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.data.web.PageableHandlerMethodArgumentResolver' (OnClassCondition)
ThymeleafAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.thymeleaf.spring4.SpringTemplateEngine' (OnClassCondition)
TransactionAutoConfiguration.TransactionTemplateConfiguration:
Did not match:
- #ConditionalOnSingleCandidate (types: org.springframework.transaction.PlatformTransactionManager; SearchStrategy: all) did not find any beans (OnBeanCondition)
TwitterAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'org.springframework.social.config.annotation.SocialConfigurerAdapter', 'org.springframework.social.twitter.connect.TwitterConnectionFactory' (OnClassCondition)
WebMvcAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'javax.servlet.Servlet', 'org.springframework.web.servlet.DispatcherServlet' (OnClassCondition)
WebServicesAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.ws.transport.http.MessageDispatcherServlet' (OnClassCondition)
WebSocketAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'javax.servlet.Servlet', 'javax.websocket.server.ServerContainer' (OnClassCondition)
WebSocketMessagingAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.web.socket.config.annotation.WebSocketMessageBrokerConfigurer' (OnClassCondition)
XADataSourceAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'javax.transaction.TransactionManager', 'org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseType' (OnClassCondition)
Exclusions:
-----------
None
Unconditional classes:
----------------------
org.springframework.boot.autoconfigure.context.ConfigurationPropertiesAutoConfiguration
org.springframework.boot.autoconfigure.web.WebClientAutoConfiguration
org.springframework.boot.autoconfigure.context.PropertyPlaceholderAutoConfiguration
org.springframework.boot.autoconfigure.info.ProjectInfoAutoConfiguration
2017-03-09 09:09:34.931 INFO 3496 --- [ main] c.abc.jms.SpringbootJmsApplication : Started SpringbootJmsApplication in 2.995 seconds (JVM running for 3.682)
68
2017-03-09 09:09:34.946 INFO 3496 --- [ Thread-2] s.c.a.AnnotationConfigApplicationContext : Closing org.springframework.context.annotation.AnnotationConfigApplicationContext#1f97cf0d: startup date [Thu Mar 09 09:09:32 CST 2017]; root of context hierarchy
2017-03-09 09:09:34.946 INFO 3496 --- [ Thread-2] o.s.c.support.DefaultLifecycleProcessor : Stopping beans in phase 2147483647
2017-03-09 09:09:34.946 INFO 3496 --- [ Thread-2] o.s.j.e.a.AnnotationMBeanExporter : Unregistering JMX-exposed beans on shutdown
Disconnected from the target VM, address: '127.0.0.1:51873', transport: 'socket'
Process finished with exit code 0
You can ignore these kind of errors and as Rohit mentioned, include the line in the application.properties and it after another compile or run it will tell you what is wrong with your code.
logging.level.org.springframework.boot.autoconfigure=ERROR
Try delete the idea related settings files. It might happened due to renaming of the project folder.
Write this line in application.properties file:
logging.level.org.springframework.boot.autoconfigure=ERROR

#DataJpaTest failing to #Autowire CrudRepository and raising NoSuchBeanDefinitionException

The setup:
a JPA ReviewRepository extending CrudRepository<TEntity, TId>
My test uses the slice test annotation #DataJpaTest
My test #Autowired ReviewRepository repo
The problem:
My #Autowired fails and raises a NoSuchBeanDefinitionException saying that there is no Bean qualified to be injected into my ReviewRepository repo field.
Things I've tried:
With and without #ContextConfiguration(classes = AppEntry.class)
With and without #EnableJpaRepositories in my AppEntry class
The Error:
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'boxfish.apis.youtube.channelDiscovery.reviews.domain.reviews.ReviewRepository' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {#org.springframework.beans.factory.annotation.Autowired(required=true)}
at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoMatchingBeanFound(DefaultListableBeanFactory.java:1486)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1104)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1066)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:585)
Code for ReviewRepositoryTest.java
#RunWith(SpringJUnit4ClassRunner.class)
#ContextConfiguration(classes = AppEntry.class)
#ActiveProfiles(INTEGRATION)
#DataJpaTest
#AutoConfigureTestDatabase(replace = NONE)
#Transactional
public class ReviewRepositoryTest {
#Autowired
private ReviewRepository repo;
#Test
public void findOneByExpansionIdAndPartIdInAndType() {
assertTrue(true);
}
}
Code for ReviewRepository.java
public interface ReviewRepository extends CrudRepository<ReviewEntity, ReviewEntityId> {
}
Code for AppEntry.java
#SpringBootApplication
#EnableJpaRepositories
public class AppEntry {
public static void main(final String[] args) {
SpringApplication.run(AppEntry.class, args);
}
}
Spring Boot Auto Configuration Report
=========================
AUTO-CONFIGURATION REPORT
=========================
Positive matches:
-----------------
DataSourceAutoConfiguration matched:
- #ConditionalOnClass found required classes 'javax.sql.DataSource', 'org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseType'; #ConditionalOnMissingClass did not find unwanted class (OnClassCondition)
DataSourceAutoConfiguration#dataSourceInitializer matched:
- #ConditionalOnMissingBean (types: org.springframework.boot.autoconfigure.jdbc.DataSourceInitializer; SearchStrategy: all) did not find any beans (OnBeanCondition)
DataSourceAutoConfiguration.PooledDataSourceConfiguration matched:
- AnyNestedCondition 1 matched 1 did not; NestedCondition on DataSourceAutoConfiguration.PooledDataSourceCondition.PooledDataSourceAvailable PooledDataSource found supported DataSource; NestedCondition on DataSourceAutoConfiguration.PooledDataSourceCondition.ExplicitType #ConditionalOnProperty (spring.datasource.type) did not find property 'type' (DataSourceAutoConfiguration.PooledDataSourceCondition)
- #ConditionalOnMissingBean (types: javax.sql.DataSource,javax.sql.XADataSource; SearchStrategy: all) did not find any beans (OnBeanCondition)
DataSourceConfiguration.Tomcat matched:
- #ConditionalOnClass found required class 'org.apache.tomcat.jdbc.pool.DataSource'; #ConditionalOnMissingClass did not find unwanted class (OnClassCondition)
- #ConditionalOnProperty (spring.datasource.type=org.apache.tomcat.jdbc.pool.DataSource) matched (OnPropertyCondition)
DataSourcePoolMetadataProvidersConfiguration.TomcatDataSourcePoolMetadataProviderConfiguration matched:
- #ConditionalOnClass found required class 'org.apache.tomcat.jdbc.pool.DataSource'; #ConditionalOnMissingClass did not find unwanted class (OnClassCondition)
DataSourceTransactionManagerAutoConfiguration matched:
- #ConditionalOnClass found required classes 'org.springframework.jdbc.core.JdbcTemplate', 'org.springframework.transaction.PlatformTransactionManager'; #ConditionalOnMissingClass did not find unwanted class (OnClassCondition)
DataSourceTransactionManagerAutoConfiguration.DataSourceTransactionManagerConfiguration matched:
- #ConditionalOnSingleCandidate (types: javax.sql.DataSource; SearchStrategy: all) found a primary bean from beans 'dataSource' (OnBeanCondition)
DataSourceTransactionManagerAutoConfiguration.TransactionManagementConfiguration matched:
- #ConditionalOnMissingBean (types: org.springframework.transaction.annotation.AbstractTransactionManagementConfiguration; SearchStrategy: all) did not find any beans (OnBeanCondition)
FlywayAutoConfiguration matched:
- #ConditionalOnClass found required class 'org.flywaydb.core.Flyway'; #ConditionalOnMissingClass did not find unwanted class (OnClassCondition)
- #ConditionalOnProperty (flyway.enabled) matched (OnPropertyCondition)
- #ConditionalOnBean (types: javax.sql.DataSource; SearchStrategy: all) found bean 'dataSource' (OnBeanCondition)
FlywayAutoConfiguration.FlywayConfiguration matched:
- #ConditionalOnMissingBean (types: org.flywaydb.core.Flyway; SearchStrategy: all) did not find any beans (OnBeanCondition)
FlywayAutoConfiguration.FlywayConfiguration#flywayInitializer matched:
- #ConditionalOnMissingBean (types: org.springframework.boot.autoconfigure.flyway.FlywayMigrationInitializer; SearchStrategy: all) did not find any beans (OnBeanCondition)
FlywayAutoConfiguration.FlywayConfiguration.FlywayInitializerJpaDependencyConfiguration matched:
- #ConditionalOnClass found required class 'org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean'; #ConditionalOnMissingClass did not find unwanted class (OnClassCondition)
- #ConditionalOnBean (types: org.springframework.orm.jpa.AbstractEntityManagerFactoryBean; SearchStrategy: all) found bean '&entityManagerFactory' (OnBeanCondition)
FlywayAutoConfiguration.FlywayJpaDependencyConfiguration matched:
- #ConditionalOnClass found required class 'org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean'; #ConditionalOnMissingClass did not find unwanted class (OnClassCondition)
- #ConditionalOnBean (types: org.springframework.orm.jpa.AbstractEntityManagerFactoryBean; SearchStrategy: all) found bean '&entityManagerFactory' (OnBeanCondition)
HibernateJpaAutoConfiguration matched:
- #ConditionalOnClass found required classes 'org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean', 'org.springframework.transaction.annotation.EnableTransactionManagement', 'javax.persistence.EntityManager'; #ConditionalOnMissingClass did not find unwanted class (OnClassCondition)
- HibernateEntityManager found class 'org.hibernate.ejb.HibernateEntityManager' (HibernateJpaAutoConfiguration.HibernateEntityManagerCondition)
JdbcTemplateAutoConfiguration matched:
- #ConditionalOnClass found required classes 'javax.sql.DataSource', 'org.springframework.jdbc.core.JdbcTemplate'; #ConditionalOnMissingClass did not find unwanted class (OnClassCondition)
- #ConditionalOnSingleCandidate (types: javax.sql.DataSource; SearchStrategy: all) found a primary bean from beans 'dataSource' (OnBeanCondition)
JdbcTemplateAutoConfiguration#jdbcTemplate matched:
- #ConditionalOnMissingBean (types: org.springframework.jdbc.core.JdbcOperations; SearchStrategy: all) did not find any beans (OnBeanCondition)
JdbcTemplateAutoConfiguration#namedParameterJdbcTemplate matched:
- #ConditionalOnMissingBean (types: org.springframework.jdbc.core.namedparam.NamedParameterJdbcOperations; SearchStrategy: all) did not find any beans (OnBeanCondition)
JpaBaseConfiguration#entityManagerFactory matched:
- #ConditionalOnMissingBean (types: org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean,javax.persistence.EntityManagerFactory; SearchStrategy: all) did not find any beans (OnBeanCondition)
JpaBaseConfiguration#entityManagerFactoryBuilder matched:
- #ConditionalOnMissingBean (types: org.springframework.boot.orm.jpa.EntityManagerFactoryBuilder; SearchStrategy: all) did not find any beans (OnBeanCondition)
JpaBaseConfiguration#jpaVendorAdapter matched:
- #ConditionalOnMissingBean (types: org.springframework.orm.jpa.JpaVendorAdapter; SearchStrategy: all) did not find any beans (OnBeanCondition)
JpaBaseConfiguration#transactionManager matched:
- #ConditionalOnMissingBean (types: org.springframework.transaction.PlatformTransactionManager; SearchStrategy: all) did not find any beans (OnBeanCondition)
NoOpCacheConfiguration matched:
- Cache org.springframework.boot.autoconfigure.cache.NoOpCacheConfiguration NONE cache type (CacheCondition)
TestEntityManagerAutoConfiguration matched:
- #ConditionalOnClass found required class 'javax.persistence.EntityManagerFactory'; #ConditionalOnMissingClass did not find unwanted class (OnClassCondition)
TestEntityManagerAutoConfiguration#testEntityManager matched:
- #ConditionalOnMissingBean (types: org.springframework.boot.test.autoconfigure.orm.jpa.TestEntityManager; SearchStrategy: all) did not find any beans (OnBeanCondition)
TransactionAutoConfiguration matched:
- #ConditionalOnClass found required class 'org.springframework.transaction.PlatformTransactionManager'; #ConditionalOnMissingClass did not find unwanted class (OnClassCondition)
TransactionAutoConfiguration#platformTransactionManagerCustomizers matched:
- #ConditionalOnMissingBean (types: org.springframework.boot.autoconfigure.transaction.TransactionManagerCustomizers; SearchStrategy: all) did not find any beans (OnBeanCondition)
TransactionAutoConfiguration.TransactionTemplateConfiguration matched:
- #ConditionalOnSingleCandidate (types: org.springframework.transaction.PlatformTransactionManager; SearchStrategy: all) found a primary bean from beans 'transactionManager' (OnBeanCondition)
TransactionAutoConfiguration.TransactionTemplateConfiguration#transactionTemplate matched:
- #ConditionalOnMissingBean (types: org.springframework.transaction.support.TransactionTemplate; SearchStrategy: all) did not find any beans (OnBeanCondition)
Negative matches:
-----------------
CacheAutoConfiguration:
Did not match:
- #ConditionalOnBean (types: org.springframework.cache.interceptor.CacheAspectSupport; SearchStrategy: all) did not find any beans (OnBeanCondition)
Matched:
- #ConditionalOnClass found required class 'org.springframework.cache.CacheManager'; #ConditionalOnMissingClass did not find unwanted class (OnClassCondition)
CacheAutoConfiguration.CacheManagerJpaDependencyConfiguration:
Did not match:
- Ancestor org.springframework.boot.autoconfigure.cache.CacheAutoConfiguration did not match (ConditionEvaluationReport.AncestorsMatchedCondition)
Matched:
- #ConditionalOnClass found required class 'org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean'; #ConditionalOnMissingClass did not find unwanted class (OnClassCondition)
CaffeineCacheConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'com.github.benmanes.caffeine.cache.Caffeine', 'org.springframework.cache.caffeine.CaffeineCacheManager' (OnClassCondition)
CouchbaseCacheConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'com.couchbase.client.java.Bucket', 'com.couchbase.client.spring.cache.CouchbaseCacheManager' (OnClassCondition)
DataSourceAutoConfiguration.EmbeddedDatabaseConfiguration:
Did not match:
- EmbeddedDataSource found supported pooled data source (DataSourceAutoConfiguration.EmbeddedDatabaseCondition)
DataSourceAutoConfiguration.TomcatDataSourceJmxConfiguration:
Did not match:
- #ConditionalOnProperty (spring.datasource.jmx-enabled) did not find property 'jmx-enabled' (OnPropertyCondition)
Matched:
- #ConditionalOnClass found required class 'org.apache.tomcat.jdbc.pool.DataSourceProxy'; #ConditionalOnMissingClass did not find unwanted class (OnClassCondition)
DataSourceConfiguration.Dbcp:
Did not match:
- #ConditionalOnClass did not find required class 'org.apache.commons.dbcp.BasicDataSource' (OnClassCondition)
DataSourceConfiguration.Dbcp2:
Did not match:
- #ConditionalOnClass did not find required class 'org.apache.commons.dbcp2.BasicDataSource' (OnClassCondition)
DataSourceConfiguration.Generic:
Did not match:
- #ConditionalOnProperty (spring.datasource.type) did not find property 'spring.datasource.type' (OnPropertyCondition)
DataSourceConfiguration.Hikari:
Did not match:
- #ConditionalOnClass did not find required class 'com.zaxxer.hikari.HikariDataSource' (OnClassCondition)
DataSourcePoolMetadataProvidersConfiguration.CommonsDbcp2PoolDataSourceMetadataProviderConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.apache.commons.dbcp2.BasicDataSource' (OnClassCondition)
DataSourcePoolMetadataProvidersConfiguration.CommonsDbcpPoolDataSourceMetadataProviderConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.apache.commons.dbcp.BasicDataSource' (OnClassCondition)
DataSourcePoolMetadataProvidersConfiguration.HikariPoolDataSourceMetadataProviderConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'com.zaxxer.hikari.HikariDataSource' (OnClassCondition)
DataSourceTransactionManagerAutoConfiguration.DataSourceTransactionManagerConfiguration#transactionManager:
Did not match:
- #ConditionalOnMissingBean (types: org.springframework.transaction.PlatformTransactionManager; SearchStrategy: all) found bean 'transactionManager' (OnBeanCondition)
EhCacheCacheConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'net.sf.ehcache.Cache', 'org.springframework.cache.ehcache.EhCacheCacheManager' (OnClassCondition)
EurekaDiscoveryClientConfiguration:
Did not match:
- #ConditionalOnProperty (eureka.client.enabled) found different value in property 'eureka.client.enabled' (OnPropertyCondition)
Matched:
- #ConditionalOnClass found required class 'com.netflix.discovery.EurekaClientConfig'; #ConditionalOnMissingClass did not find unwanted class (OnClassCondition)
GenericCacheConfiguration:
Did not match:
- Cache org.springframework.boot.autoconfigure.cache.GenericCacheConfiguration NONE cache type (CacheCondition)
GuavaCacheConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.springframework.cache.guava.GuavaCacheManager' (OnClassCondition)
HazelcastCacheConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'com.hazelcast.core.HazelcastInstance', 'com.hazelcast.spring.cache.HazelcastCacheManager' (OnClassCondition)
InfinispanCacheConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'org.infinispan.spring.provider.SpringEmbeddedCacheManager' (OnClassCondition)
JCacheCacheConfiguration:
Did not match:
- #ConditionalOnClass did not find required classes 'javax.cache.Caching', 'org.springframework.cache.jcache.JCacheCacheManager' (OnClassCondition)
JpaBaseConfiguration.JpaWebConfiguration:
Did not match:
- #ConditionalOnWebApplication (required) not a web application (OnWebApplicationCondition)
Matched:
- #ConditionalOnClass found required class 'org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter'; #ConditionalOnMissingClass did not find unwanted class (OnClassCondition)
JpaRepositoriesAutoConfiguration:
Did not match:
- #ConditionalOnMissingBean (types: org.springframework.data.jpa.repository.support.JpaRepositoryFactoryBean,org.springframework.data.jpa.repository.config.JpaRepositoryConfigExtension; SearchStrategy: all) found bean 'org.springframework.data.jpa.repository.config.JpaRepositoryConfigExtension#0' (OnBeanCondition)
Matched:
- #ConditionalOnClass found required class 'org.springframework.data.jpa.repository.JpaRepository'; #ConditionalOnMissingClass did not find unwanted class (OnClassCondition)
- #ConditionalOnProperty (spring.data.jpa.repositories.enabled=true) matched (OnPropertyCondition)
LiquibaseAutoConfiguration:
Did not match:
- #ConditionalOnClass did not find required class 'liquibase.integration.spring.SpringLiquibase' (OnClassCondition)
RedisCacheConfiguration:
Did not match:
- Cache org.springframework.boot.autoconfigure.cache.RedisCacheConfiguration NONE cache type (CacheCondition)
SimpleCacheConfiguration:
Did not match:
- Cache org.springframework.boot.autoconfigure.cache.SimpleCacheConfiguration NONE cache type (CacheCondition)
TestDatabaseAutoConfiguration#dataSource:
Did not match:
- #ConditionalOnProperty (spring.test.database.replace=AUTO_CONFIGURED) found different value in property 'replace' (OnPropertyCondition)
TestDatabaseAutoConfiguration#embeddedDataSourceBeanFactoryPostProcessor:
Did not match:
- #ConditionalOnProperty (spring.test.database.replace=ANY) found different value in property 'replace' (OnPropertyCondition)
Exclusions:
-----------
None
Unconditional classes:
----------------------
org.springframework.boot.test.autoconfigure.jdbc.TestDatabaseAutoConfiguration
This problem is solved
Not much later than the question was posted, I found the answer: my classpath was compromised. I had two natures enabled in my eclipse project (Spring STS and Gradle) and they following happened:
Both plugins imported dependencies for Spring-JPA
This has caused Spring Autoconfigurator to be confused about which Repository resolution routine to use and entered strict mode
After that, my interfaces implementing CrudRepository would not receive an implementation coming from Spring Data JPA
How have I found this?
It was right there, under my nose, not in an error, but in a shy corner of the startup log (INFO):
14:26:40.729 [main] INFO b.a.y.c.r.i.ReviewUpserIntegrationTest - The following profiles are active: integration
14:26:40.734 [main] INFO o.s.b.c.e.AnnotationConfigEmbeddedWebApplicationContext - Refreshing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext#7de4a01f: startup date [Thu Mar 02 14:26:40 GMT 2017]; parent: org.springframework.context.annotation.AnnotationConfigApplicationContext#130e116b
14:26:41.521 [main] INFO o.s.d.r.c.RepositoryConfigurationDelegate - Multiple Spring Data modules found, entering strict repository configuration mode!
14:26:41.562 [main] INFO o.s.d.r.c.RepositoryConfigurationExtensionSupport - Spring Data JPA - Could not safely identify store assignment for repository candidate interface boxfish.apis.youtube.channelDiscovery.reviews.domain.reviews.ReviewRepository.
14:26:41.943 [main] WARN o.s.c.a.ConfigurationClassPostProcessor - Cannot enhance #Configuration bean definition 'refreshScope' since its singleton instance has been created too early. The typical cause is a non-static #Bean method with a BeanDefinitionRegistryPostProcessor return type: Consider declaring such methods as 'static'.
The line we are talking about is Multiple Spring Data modules found, entering strict repository configuration mode!
A good cleanup and de-activation of the natures in Eclipse have solved the problem:
gradle clean cleanEclipse eclipse build --refresh-dependencies in the Shell
Refresh of the project in eclipse

Resources