GVKun编程网logo

NoSuchMethodException:org.springframework.boot.autoconfigure.http.HttpMessageConverters

10

在本文中,您将会了解到关于NoSuchMethodException:org.springframework.boot.autoconfigure.http.HttpMessageConverters

在本文中,您将会了解到关于NoSuchMethodException:org.springframework.boot.autoconfigure.http.HttpMessageConverters的新资讯,并给出一些关于Java-Class-C:org.springframework.http.converter.StringHttpMessageConverter、java.lang.ClassNotFoundException:org.springframework.http.converter.json.MappingJackson2HttpMessageConverter、org.springframework.boot.actuate.autoconfigure.ManagementServerPropertiesAutoConfiguration的实例源码、org.springframework.boot.autoconfigure.context.PropertyPlaceholderAutoConfiguration的实例源码的实用技巧。

本文目录一览:

NoSuchMethodException:org.springframework.boot.autoconfigure.http.HttpMessageConverters

NoSuchMethodException:org.springframework.boot.autoconfigure.http.HttpMessageConverters

我想用Hibernate配置Spring应用程序。我尝试了这个:

主要启动方式:

@Configuration@EnableWebMvcpublic class WebConfig implements WebApplicationInitializer, WebMvcConfigurer {    private BasicAuthenticationInterceptor basicAuthenticationInterceptor;    @Override    public void extendMessageConverters(List<HttpMessageConverter<?>> converters) {        converters.removeIf(converter -> converter instanceof MappingJackson2XmlHttpMessageConverter);        converters.removeIf(converter -> converter instanceof MappingJackson2HttpMessageConverter);        converters.add(new MappingJackson2XmlHttpMessageConverter(                ((XmlMapper) createObjectMapper(Jackson2ObjectMapperBuilder.xml()))                        .enable(ToXmlGenerator.Feature.WRITE_XML_DECLARATION)));        converters.add(new MappingJackson2HttpMessageConverter(                createObjectMapper(Jackson2ObjectMapperBuilder.json())));    }    private ObjectMapper createObjectMapper(Jackson2ObjectMapperBuilder builder) {        builder.indentOutput(true);        builder.modules(new JaxbAnnotationModule());        builder.serializationInclusion(JsonInclude.Include.NON_NULL);        builder.defaultUseWrapper(false);        return builder.build();    }    @Override    public void onStartup(ServletContext container) {        // Create the ''root'' Spring application context        AnnotationConfigWebApplicationContext rootContext = new AnnotationConfigWebApplicationContext();        rootContext.register(ContextDatasource.class);        // Manage the lifecycle of the root application context        container.addListener(new ContextLoaderListener(rootContext));        // Create the dispatcher servlet''s Spring application context        AnnotationConfigWebApplicationContext dispatcherContext = new AnnotationConfigWebApplicationContext();        // Register and map the dispatcher servlet        ServletRegistration.Dynamic dispatcher = container.addServlet("dispatcher", new DispatcherServlet(dispatcherContext));        dispatcher.setLoadOnStartup(1);        dispatcher.addMapping("/");    }    @Autowired    public void setBasicAuthenticationInterceptor(BasicAuthenticationInterceptor basicAuthenticationInterceptor) {        this.basicAuthenticationInterceptor = basicAuthenticationInterceptor;    }    @Override    public void addInterceptors(InterceptorRegistry registry) {        registry.addInterceptor(basicAuthenticationInterceptor);    }}

rootContext.register(ContextDatasource.class);以下位置调用的Hibernate配置:

@SpringBootApplication@Configuration@EnableTransactionManagementpublic class ContextDatasource {    @Bean    public FastJsonHttpMessageConverter fastJsonHttpMessageConverter() {        return new FastJsonHttpMessageConverter();    }    @Bean    @Autowired    public HttpMessageConverters convertersToBeUsed(FastJsonHttpMessageConverter converter) {        return new HttpMessageConverters(converter);    }    @Bean    public LocalSessionFactoryBean getSessionFactory() throws NamingException {        final LocalSessionFactoryBean sessionFactory = new LocalSessionFactoryBean();        sessionFactory.setDataSource(getDataSource());        sessionFactory.setPackagesToScan(new String[] { "org.datalis.plugin.database.models" });        sessionFactory.setHibernateProperties(hibernateProperties());        return sessionFactory;    }    @Bean    public DataSource getDataSource() throws NamingException {        return (DataSource) new JndiTemplate().lookup("java:/global/production_gateway");    }    @Bean    public PlatformTransactionManager getHibernateTransactionManager() throws NamingException {        final HibernateTransactionManager transactionManager = new HibernateTransactionManager();        transactionManager.setSessionFactory(getSessionFactory().getObject());        return transactionManager;    }    @Bean    public PersistenceExceptionTranslationPostProcessor getExceptionTranslation() {        return new PersistenceExceptionTranslationPostProcessor();    }    private final Properties hibernateProperties() {        final Properties hibernateProperties = new Properties();        hibernateProperties.setProperty("hibernate.hbm2ddl.auto", "create-drop");        hibernateProperties.setProperty("hibernate.dialect", "org.hibernate.dialect.MariaDBDialect");        hibernateProperties.setProperty("hibernate.show_sql", "true");        hibernateProperties.setProperty("hibernate.format_sql", "true");        return hibernateProperties;    }}

但是,当我部署WAR文件时,出现错误:

Caused by: java.lang.NoSuchMethodException: org.springframework.boot.autoconfigure.http.HttpMessageConverters$$EnhancerBySpringCGLIB$$1d90bff9.<init>()    at java.base/java.lang.Class.getConstructor0(Class.java:3302)

完整的错误堆栈:https :
//pastebin.com/x30W2aws

您可以在我错的地方提供建议以及如何解决该问题吗?我是否需要使用其他配置来实现模块启动?

编辑:使用Java 8,代码可以正常工作而没有上述问题。在最新的Java 10中,我遇到了上述异常。您知道我需要做什么配置吗?

答案1

小编典典

根据Spring Boot发行说明,Spring
Boot 2.0.1及更高版本支持Java 10。没有依赖项列表,就不可能知道这是否是问题所在,但这似乎是一个不错的起点。

您是否正在运行Boot v2.0.1或更高版本?

Java-Class-C:org.springframework.http.converter.StringHttpMessageConverter

Java-Class-C:org.springframework.http.converter.StringHttpMessageConverter

ylbtech-Java-Class-C:org.springframework.http.converter.StringHttpMessageConverter

 

1. 返回顶部
1.1、
import org.springframework.http.converter.StringHttpMessageConverter;
1.2、
restTemplate.getMessageConverters ().set (1, new StringHttpMessageConverter (StandardCharsets.UTF_8)); // 防止中文乱码
1.3、
2. 返回顶部
 
3. 返回顶部
 
4. 返回顶部
1、
//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
//

package org.springframework.http.converter;

import java.io.IOException;
import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.List;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpInputMessage;
import org.springframework.http.HttpOutputMessage;
import org.springframework.http.MediaType;
import org.springframework.lang.Nullable;
import org.springframework.util.Assert;
import org.springframework.util.StreamUtils;

public class StringHttpMessageConverter extends AbstractHttpMessageConverter<String> {
    public static final Charset DEFAULT_CHARSET;
    @Nullable
    private volatile List<Charset> availableCharsets;
    private boolean writeAcceptCharset;

    public StringHttpMessageConverter() {
        this(DEFAULT_CHARSET);
    }

    public StringHttpMessageConverter(Charset defaultCharset) {
        super(defaultCharset, new MediaType[]{MediaType.TEXT_PLAIN, MediaType.ALL});
        this.writeAcceptCharset = true;
    }

    public void setWriteAcceptCharset(boolean writeAcceptCharset) {
        this.writeAcceptCharset = writeAcceptCharset;
    }

    public boolean supports(Class<?> clazz) {
        return String.class == clazz;
    }

    protected String readInternal(Class<? extends String> clazz, HttpInputMessage inputMessage) throws IOException {
        Charset charset = this.getContentTypeCharset(inputMessage.getHeaders().getContentType());
        return StreamUtils.copyToString(inputMessage.getBody(), charset);
    }

    protected Long getContentLength(String str, @Nullable MediaType contentType) {
        Charset charset = this.getContentTypeCharset(contentType);
        return (long)str.getBytes(charset).length;
    }

    protected void writeInternal(String str, HttpOutputMessage outputMessage) throws IOException {
        HttpHeaders headers = outputMessage.getHeaders();
        if (this.writeAcceptCharset && headers.get("Accept-Charset") == null) {
            headers.setAcceptCharset(this.getAcceptedCharsets());
        }

        Charset charset = this.getContentTypeCharset(headers.getContentType());
        StreamUtils.copy(str, charset, outputMessage.getBody());
    }

    protected List<Charset> getAcceptedCharsets() {
        List<Charset> charsets = this.availableCharsets;
        if (charsets == null) {
            charsets = new ArrayList(Charset.availableCharsets().values());
            this.availableCharsets = (List)charsets;
        }

        return (List)charsets;
    }

    private Charset getContentTypeCharset(@Nullable MediaType contentType) {
        if (contentType != null && contentType.getCharset() != null) {
            return contentType.getCharset();
        } else if (contentType != null && contentType.isCompatibleWith(MediaType.APPLICATION_JSON)) {
            return StandardCharsets.UTF_8;
        } else {
            Charset charset = this.getDefaultCharset();
            Assert.state(charset != null, "No default charset");
            return charset;
        }
    }

    static {
        DEFAULT_CHARSET = StandardCharsets.ISO_8859_1;
    }
}
2、
5. 返回顶部
 
 
6. 返回顶部
 
warn 作者:ylbtech
出处:http://ylbtech.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

java.lang.ClassNotFoundException:org.springframework.http.converter.json.MappingJackson2HttpMessageConverter

java.lang.ClassNotFoundException:org.springframework.http.converter.json.MappingJackson2HttpMessageConverter

我在项目中使用spring-integration。在码头容器中部署应用程序时,出现以下异常:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name ''integrationRequestMappingHandlerMapping'': Initialization of bean failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ''inboundhttpJobRequestGateway'': Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.springframework.integration.http.inbound.HttpRequestHandlingMessagingGateway]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: org/springframework/http/converter/json/MappingJackson2HttpMessageConverter    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:527)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:585)    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:913)    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:464)    at com.dsths.spring.web.DsthsContextLoaderListener.configureAndRefreshWebApplicationContext(DsthsContextLoaderListener.java:97)    at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:284)    at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:111)    at org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:771)    at org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:411)    at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:763)    at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:247)    at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1238)    at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:706)    at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:480)    at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:64)    at com.dsths.common.container.core.deploy.DeploymentManager.deploy(DeploymentManager.java:54)    at com.dsths.common.container.core.deploy.DeploymentManager$$FastClassByCGLIB$$f5bc43eb.invoke(<generated>)    at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)    at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:698)    at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)    at org.springframework.aop.interceptor.AsyncExecutionInterceptor$1.call(AsyncExecutionInterceptor.java:95)    at java.util.concurrent.FutureTask.run(FutureTask.java:262)    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)    at java.lang.Thread.run(Thread.java:724)Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name ''inboundhttpJobRequestGateway'': Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.springframework.integration.http.inbound.HttpRequestHandlingMessagingGateway]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: org/springframework/http/converter/json/MappingJackson2HttpMessageConverter    at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:288)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1035)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:939)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:485)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)    at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1093)    at org.springframework.integration.http.inbound.IntegrationRequestMappingHandlerMapping.detectHandlerMethods(IntegrationRequestMappingHandlerMapping.java:103)    at org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.initHandlerMethods(AbstractHandlerMethodMapping.java:109)    at org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.initApplicationContext(AbstractHandlerMethodMapping.java:89)    at org.springframework.context.support.ApplicationObjectSupport.initApplicationContext(ApplicationObjectSupport.java:119)    at org.springframework.web.context.support.WebApplicationObjectSupport.initApplicationContext(WebApplicationObjectSupport.java:72)    at org.springframework.context.support.ApplicationObjectSupport.setApplicationContext(ApplicationObjectSupport.java:73)    at org.springframework.context.support.ApplicationContextAwareProcessor.invokeAwareInterfaces(ApplicationContextAwareProcessor.java:117)    at org.springframework.context.support.ApplicationContextAwareProcessor.postProcessBeforeInitialization(ApplicationContextAwareProcessor.java:92)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:394)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1448)    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)    ... 29 moreCaused by: org.springframework.beans.BeanInstantiationException: Could not instantiate bean class [org.springframework.integration.http.inbound.HttpRequestHandlingMessagingGateway]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: org/springframework/http/converter/json/MappingJackson2HttpMessageConverter    at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:162)    at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:110)    at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:280)    ... 49 moreCaused by: java.lang.NoClassDefFoundError: org/springframework/http/converter/json/MappingJackson2HttpMessageConverter    at org.springframework.integration.http.inbound.HttpRequestHandlingEndpointSupport.<init>(HttpRequestHandlingEndpointSupport.java:166)    at org.springframework.integration.http.inbound.HttpRequestHandlingMessagingGateway.<init>(HttpRequestHandlingMessagingGateway.java:72)    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)    at java.lang.reflect.Constructor.newInstance(Constructor.java:526)    at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:147)    ... 51 moreCaused by: java.lang.ClassNotFoundException: org.springframework.http.converter.json.MappingJackson2HttpMessageConverter    at java.net.URLClassLoader$1.run(URLClassLoader.java:366)    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)    at java.security.AccessController.doPrivileged(Native Method)    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)    at com.dsths.common.container.ContainerClassLoader.loadClass(ContainerClassLoader.java:136)    at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:429)    at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:382)    ... 58 more

我有两个罐子jackson-core-asl-1.8.3,并jackson-core-2.3.1在类路径中。仍然我得到错误。如何解决问题?

答案1

小编典典

有趣的是com.dsths.common.container.ContainerClassLoader

看起来像是spring-integration-http由这个加载的ClassLoader,但是MappingJackson2HttpMessageConverter和其他所有spring-web类都带有另一个ClassLoader

如果将所有弹簧罐放在同一个类加载器中,那就太好了。

该应用程序无法在类路径中找到MappingJackson2HttpMessageConverter。问题是一个类加载器正在选择一个版本,而另一个类加载器正在选择另一个版本。

org.springframework.boot.actuate.autoconfigure.ManagementServerPropertiesAutoConfiguration的实例源码

org.springframework.boot.actuate.autoconfigure.ManagementServerPropertiesAutoConfiguration的实例源码

项目:https-github.com-g0t4-jenkins2-course-spring-boot    文件:MvcEndpointCorsIntegrationTests.java   
@Before
public void createContext() {
    this.context = new AnnotationConfigWebApplicationContext();
    this.context.setServletContext(new MockServletContext());
    this.context.register(JacksonAutoConfiguration.class,HttpMessageConvertersAutoConfiguration.class,EndpointAutoConfiguration.class,EndpointWebMvcAutoConfiguration.class,ManagementServerPropertiesAutoConfiguration.class,PropertyPlaceholderAutoConfiguration.class,JolokiaAutoConfiguration.class,WebMvcAutoConfiguration.class);
}
项目:spring-boot-concourse    文件:MvcEndpointCorsIntegrationTests.java   
@Before
public void createContext() {
    this.context = new AnnotationConfigWebApplicationContext();
    this.context.setServletContext(new MockServletContext());
    this.context.register(JacksonAutoConfiguration.class,WebMvcAutoConfiguration.class);
}
项目:contestparser    文件:MvcEndpointCorsIntegrationTests.java   
@Before
public void createContext() {
    this.context = new AnnotationConfigWebApplicationContext();
    this.context.setServletContext(new MockServletContext());
    this.context.register(JacksonAutoConfiguration.class,WebMvcAutoConfiguration.class);
}

org.springframework.boot.autoconfigure.context.PropertyPlaceholderAutoConfiguration的实例源码

org.springframework.boot.autoconfigure.context.PropertyPlaceholderAutoConfiguration的实例源码

项目:spring-boot-data-source-decorator    文件:TracingJdbcEventListenerTests.java   
@Before
public void init() {
    dbUrl = "h2:mem:testdb-" + new Random().nextInt();
    EnvironmentTestUtils.addEnvironment(context,"spring.datasource.initialize:false","spring.datasource.url:jdbc:" + dbUrl);
    context.setClassLoader(new HidePackagesClassLoader("com.vladmihalcea.flexypool","net.ttddyy.dsproxy"));
    context.register(DataSourceAutoConfiguration.class,DataSourceDecoratorAutoConfiguration.class,TraceAutoConfiguration.class,SleuthLogAutoConfiguration.class,SleuthListenerAutoConfiguration.class,SavingSpanReporterConfiguration.class,PropertyPlaceholderAutoConfiguration.class);
    context.refresh();

    dataSource = context.getBean(DataSource.class);
    spanReporter = context.getBean(CollectingSpanReporter.class);
}
项目:spring-boot-data-source-decorator    文件:TracingQueryExecutionListenerTests.java   
@Before
public void init() {
    dbUrl = "h2:mem:testdb-" + new Random().nextInt();
    EnvironmentTestUtils.addEnvironment(context,"com.p6spy"));
    context.register(DataSourceAutoConfiguration.class,PropertyPlaceholderAutoConfiguration.class);
    context.refresh();

    dataSource = context.getBean(DataSource.class);
    spanReporter = context.getBean(CollectingSpanReporter.class);
}
项目:spring-boot-data-source-decorator    文件:SleuthListenerAutoConfigurationTests.java   
@Test
public void testAddsDatasourceProxyListener() {
    context.setClassLoader(new HidePackagesClassLoader("com.vladmihalcea.flexypool",PropertyPlaceholderAutoConfiguration.class);
    context.refresh();

    DataSource dataSource = context.getBean(DataSource.class);
    ProxyDataSource proxyDataSource = (ProxyDataSource) ((DecoratedDataSource) dataSource).getDecoratedDataSource();
    ChainListener chainListener = proxyDataSource.getProxyConfig().getQueryListener();
    assertthat(chainListener.getListeners()).extracting("class").contains(TracingQueryExecutionListener.class);
}
项目:spring-boot-data-source-decorator    文件:DataSourceDecoratorAutoConfigurationTests.java   
@Test
public void testDecoratedHikariSpecificPropertiesIsSet() throws Exception {
    EnvironmentTestUtils.addEnvironment(context,"spring.datasource.type:" + HikariDataSource.class.getName(),"spring.datasource.hikari.catalog:test_catalog");
    context.register(DataSourceAutoConfiguration.class,PropertyPlaceholderAutoConfiguration.class);
    context.refresh();
    DataSource dataSource = context.getBean(DataSource.class);
    assertthat(dataSource).isNotNull();
    assertthat(dataSource).isinstanceOf(DecoratedDataSource.class);
    DataSource realDataSource = ((DecoratedDataSource) dataSource).getRealDataSource();
    assertthat(realDataSource).isinstanceOf(HikariDataSource.class);
    assertthat(((HikariDataSource) realDataSource).getCatalog()).isEqualTo("test_catalog");
}
项目:spring-boot-data-source-decorator    文件:DataSourceDecoratorAutoConfigurationTests.java   
@Test
public void testCustomDataSourceDecoratorApplied() throws Exception {
    System.setProperty(PropertyLoader.PROPERTIES_FILE_PATH,"db/decorator/flexy-pool.properties");
    context.register(TestDataSourceDecoratorConfiguration.class,DataSourceAutoConfiguration.class,PropertyPlaceholderAutoConfiguration.class);
    context.refresh();

    DataSource dataSource = context.getBean(DataSource.class);
    assertthat(dataSource).isNotNull();

    DataSource customDataSource = ((DecoratedDataSource) dataSource).getDecoratedDataSource();
    assertthat(customDataSource).isinstanceOf(CustomDataSourceProxy.class);

    DataSource realDataSource = ((DecoratedDataSource) dataSource).getRealDataSource();
    assertthat(realDataSource).isinstanceOf(org.apache.tomcat.jdbc.pool.DataSource.class);

    assertthatDataSourceDecoratingChain(dataSource).containsExactly(CustomDataSourceProxy.class,P6DataSource.class,ProxyDataSource.class,FlexyPoolDataSource.class);
}
项目:spring-boot-data-source-decorator    文件:DataSourceDecoratorAutoConfigurationTests.java   
@Test
public void testDecoratingCanBedisabledForSpecificBeans() throws Exception {
    EnvironmentTestUtils.addEnvironment(context,"decorator.datasource.exclude-beans:secondDataSource");
    context.register(TestMultiDataSourceConfiguration.class,PropertyPlaceholderAutoConfiguration.class);
    context.refresh();

    DataSource dataSource = context.getBean("dataSource",DataSource.class);
    assertthat(dataSource).isinstanceOf(DecoratedDataSource.class);

    DataSource secondDataSource = context.getBean("secondDataSource",DataSource.class);
    assertthat(secondDataSource).isinstanceOf(BasicDataSource.class);
}
项目:spring-boot-data-source-decorator    文件:FlexyPoolConfigurationTests.java   
@Test
public void testDecoratingHikariDataSourceWithDefaultStrategies() throws Exception {
    EnvironmentTestUtils.addEnvironment(context,"spring.datasource.type:" + HikariDataSource.class.getName());
    context.register(DataSourceAutoConfiguration.class,PropertyPlaceholderAutoConfiguration.class);
    context.refresh();

    DataSource dataSource = context.getBean(DataSource.class);
    assertDataSourceOfType(dataSource,HikariDataSource.class);
    FlexyPoolDataSource<HikariDataSource> flexyPoolDataSource = assertDataSourceOfType(dataSource,HikariDataSource.class);
    IncrementPoolOnTimeoutConnectionAcquiringStrategy strategy1 =
            findStrategy(flexyPoolDataSource,IncrementPoolOnTimeoutConnectionAcquiringStrategy.class);
    assertthat(strategy1).isNotNull();
    assertthat(strategy1).hasFieldOrPropertyWithValue("maxOverflowPoolSize",15);
    assertthat(strategy1).hasFieldOrPropertyWithValue("timeoutMillis",500);

    RetryConnectionAcquiringStrategy strategy2 =
            findStrategy(flexyPoolDataSource,RetryConnectionAcquiringStrategy.class);
    assertthat(strategy2).isNotNull();
    assertthat(strategy2).hasFieldOrPropertyWithValue("retryAttempts",2);
}
项目:spring-boot-data-source-decorator    文件:FlexyPoolConfigurationTests.java   
@Test
public void testDecoratingHikariDataSourceWithCustomPropertyStrategies() throws Exception {
    EnvironmentTestUtils.addEnvironment(context,"decorator.datasource.flexy-pool.acquiring-strategy.increment-pool.max-overflow-pool-size:15","decorator.datasource.flexy-pool.acquiring-strategy.increment-pool.timeout-millis:500","decorator.datasource.flexy-pool.acquiring-strategy.retry.attempts:5");
    context.register(DataSourceAutoConfiguration.class,PropertyPlaceholderAutoConfiguration.class,HikariConfiguration.class);
    context.refresh();

    DataSource dataSource = context.getBean(DataSource.class);
    FlexyPoolDataSource<HikariDataSource> flexyPoolDataSource = assertDataSourceOfType(dataSource,35);
    assertthat(strategy1).hasFieldOrPropertyWithValue("timeoutMillis",10000);

    RetryConnectionAcquiringStrategy strategy2 =
            findStrategy(flexyPoolDataSource,5);
}
项目:zipkin-sparkstreaming    文件:ZipkinKafkaStreamFactoryAutoConfigurationTest.java   
@Test
public void providesCollectorComponent_whenBootstrapServeRSSet() {
  addEnvironment(context,"zipkin.sparkstreaming.stream.kafka.bootstrap-servers:" + KAFKA_BOOTSTRAP
  );
  context.register(
      PropertyPlaceholderAutoConfiguration.class,ZipkinKafkaStreamFactoryAutoConfiguration.class
  );
  context.refresh();

  ZipkinKafkaStreamFactoryProperties props =
      context.getBean(ZipkinKafkaStreamFactoryProperties.class);
  assertthat(props.getBootstrapServers())
      .containsExactly(KAFKA_BOOTSTRAP);
}
项目:zipkin-sparkstreaming    文件:ZipkinKafkaStreamFactoryAutoConfigurationTest.java   
@Test
public void providesCollectorComponent_whenKafkaZookeeperSet() {
  addEnvironment(context,"zipkin.sparkstreaming.stream.kafka.zookeeper.connect:" + KAFKA_ZOOKEEPER
  );
  context.register(
      PropertyPlaceholderAutoConfiguration.class,ZipkinKafkaStreamFactoryAutoConfiguration.class
  );
  context.refresh();

  ZipkinKafkaStreamFactoryProperties props =
      context.getBean(ZipkinKafkaStreamFactoryProperties.class);
  assertthat(props.getZookeeper().getConnect())
      .isEqualTo(KAFKA_ZOOKEEPER);
}
项目:zipkin-aws    文件:ZipkinSQSCollectorAutoConfigurationTest.java   
@Test
public void provideCollectorComponent_setsZipkinSqsCollectorProperties() {
  context = new AnnotationConfigApplicationContext();
  addEnvironment(context,"zipkin.collector.sqs.queue-url:" + sqsRule.queueUrl());
  addEnvironment(context,"zipkin.collector.sqs.wait-time-seconds:1");
  addEnvironment(context,"zipkin.collector.sqs.parallelism:3");
  addEnvironment(context,"zipkin.collector.sqs.aws-access-key-id: x");
  addEnvironment(context,"zipkin.collector.sqs.aws-secret-access-key: x");
  context.register(PropertyPlaceholderAutoConfiguration.class,Region.class,ZipkinSQSCollectorAutoConfiguration.class,ZipkinSQSCredentialsAutoConfiguration.class,InMemoryConfiguration.class);
  context.refresh();

  ZipkinSQSCollectorProperties properties = context.getBean(ZipkinSQSCollectorProperties.class);

  assertthat(properties.getQueueUrl()).isEqualTo(sqsRule.queueUrl());
  assertthat(properties.getWaitTimeSeconds()).isEqualTo(1);
  assertthat(properties.getParallelism()).isEqualTo(3);
}
项目:zipkin-aws    文件:ZipkinSQSCollectorAutoConfigurationTest.java   
@Test
public void provideSecurityTokenService_whenAwsstsRoleArnIsSet() {
  context = new AnnotationConfigApplicationContext();
  addEnvironment(context,"zipkin.collector.sqs.aws-secret-access-key: x");
  addEnvironment(context,"zipkin.collector.sqs.aws-sts-role-arn: test");
  context.register(PropertyPlaceholderAutoConfiguration.class,InMemoryConfiguration.class);
  context.refresh();

  assertthat(context.getBean(SQSCollector.class)).isNotNull();
  assertthat(context.getBean(AWSSecurityTokenService.class)).isNotNull();
  assertthat(context.getBean(AWSCredentialsProvider.class)).isinstanceOf(STSAssumeRoleSessionCredentialsProvider.class);
}
项目:spring-boot-starter    文件:MybatisAutoConfigurationTest.java   
@Test
public void testWithConfigurationVariablesAndPropertiesOtherKey() {
    TestPropertyValues.of(
            "mybatis.configuration.variables.key1:value1","mybatis.configuration-properties.key2:value2")
            .applyTo(this.context);
    this.context.register(EmbeddedDataSourceConfiguration.class,MybatisAutoConfiguration.class,PropertyPlaceholderAutoConfiguration.class);
    this.context.refresh();

    Properties variables = this.context.getBean(sqlSessionFactory.class).getConfiguration().getvariables();
    assertthat(variables).hasSize(2);
    assertthat(variables.getProperty("key1")).isEqualTo("value1");
    assertthat(variables.getProperty("key2")).isEqualTo("value2");
}
项目:spring-cloud-sleuth    文件:ZipkinAutoConfigurationTests.java   
@Test
public void defaultsToV2Endpoint() throws Exception {
    context = new AnnotationConfigApplicationContext();
    addEnvironment(context,"spring.zipkin.base-url:" + server.url("/"));
    context.register(
            PropertyPlaceholderAutoConfiguration.class,TraceMetricsAutoConfiguration.class,ZipkinAutoConfiguration.class);
    context.refresh();

    SpanReporter spanReporter = context.getBean(SpanReporter.class);
    spanReporter.report(span);

    Awaitility.await().untilAsserted(() -> then(server.getRequestCount()).isGreaterThan(0));

    RecordedRequest request = server.takeRequest();
    then(request.getPath()).isEqualTo("/api/v2/spans");
    then(request.getBody().readUtf8()).contains("localEndpoint");
}
项目:spring-cloud-sleuth    文件:ZipkinAutoConfigurationTests.java   
@Test
public void encoderDirectsEndpoint() throws Exception {
    context = new AnnotationConfigApplicationContext();
    addEnvironment(
            context,"spring.zipkin.base-url:" + server.url("/"),"spring.zipkin.encoder:JSON_V1");
    context.register(
            PropertyPlaceholderAutoConfiguration.class,ZipkinAutoConfiguration.class);
    context.refresh();

    SpanReporter spanReporter = context.getBean(SpanReporter.class);
    spanReporter.report(span);

    Awaitility.await().untilAsserted(() -> then(server.getRequestCount()).isGreaterThan(0));

    RecordedRequest request = server.takeRequest();
    then(request.getPath()).isEqualTo("/api/v1/spans");
    then(request.getBody().readUtf8()).contains("binaryAnnotations");
}
项目:spring-cloud-sleuth    文件:ZipkinAutoConfigurationTests.java   
@Test
public void overrideRabbitMQQueue() throws Exception {
    context = new AnnotationConfigApplicationContext();
    addEnvironment(context,"spring.zipkin.rabbitmq.queue:zipkin2");
    context.register(
            PropertyPlaceholderAutoConfiguration.class,RabbitAutoConfiguration.class,ZipkinAutoConfiguration.class);
    context.refresh();

    SpanReporter spanReporter = context.getBean(SpanReporter.class);
    assertthat(spanReporter).extracting("reporter.sender.queue")
            .contains("zipkin2");

    context.close();
}
项目:spring-cloud-sleuth    文件:ZipkinAutoConfigurationTests.java   
@Test
public void overrideKafkaTopic() throws Exception {
    context = new AnnotationConfigApplicationContext();
    addEnvironment(context,"spring.zipkin.kafka.topic:zipkin2");
    context.register(
            PropertyPlaceholderAutoConfiguration.class,KafkaAutoConfiguration.class,ZipkinAutoConfiguration.class);
    context.refresh();

    SpanReporter spanReporter = context.getBean(SpanReporter.class);
    assertthat(spanReporter).extracting("reporter.sender.topic")
            .contains("zipkin2");

    context.close();
}
项目:spring-cloud-sleuth    文件:ZipkinAutoConfigurationTests.java   
@Test
public void canOverrideBySender() throws Exception {
    context = new AnnotationConfigApplicationContext();
    addEnvironment(context,"spring.zipkin.sender.type:web");
    context.register(
            PropertyPlaceholderAutoConfiguration.class,ZipkinAutoConfiguration.class);
    context.refresh();

    SpanReporter spanReporter = context.getBean(SpanReporter.class);
    assertthat(spanReporter).extracting("reporter.sender").allSatisfy(
            s -> assertthat(s.getClass().getSimpleName()).isEqualTo("RestTemplateSender")
    );

    context.close();
}
项目:spring-cloud-sleuth    文件:ZipkinAutoConfigurationTests.java   
@Test
public void rabbitWinsWhenKafkaPresent() throws Exception {
    context = new AnnotationConfigApplicationContext();
    context.register(
            PropertyPlaceholderAutoConfiguration.class,ZipkinAutoConfiguration.class);
    context.refresh();

    SpanReporter spanReporter = context.getBean(SpanReporter.class);
    assertthat(spanReporter).extracting("reporter.sender")
            .allSatisfy(s -> assertthat(s).isinstanceOf(RabbitMQSender.class));

    context.close();
}
项目:spring-cloud-sleuth    文件:TraceAutoConfigurationTests.java   
@Test
public void defaultsTo64BitTraceId() {
    context = new AnnotationConfigApplicationContext();
    context.register(PropertyPlaceholderAutoConfiguration.class,TraceAutoConfiguration.class);
    context.refresh();
    Tracer tracer = context.getBean(Tracer.class);

    Span span = null;
    try {
        span = tracer.createSpan("foo",NeverSampler.INSTANCE);
        assertthat(span.getTraceIdHigh()).isEqualTo(0L);
        assertthat(span.getTraceId()).isNotEqualTo(0L);
    }
    finally {
        if (span != null) {
            tracer.close(span);
        }
    }
}
项目:spring-cloud-sleuth    文件:TraceAutoConfigurationTests.java   
@Test
public void optInto128BitTraceId() {
    EnvironmentTestUtils.addEnvironment(context,"spring.sleuth.traceId128:true");
    context.register(PropertyPlaceholderAutoConfiguration.class,NeverSampler.INSTANCE);
        assertthat(span.getTraceIdHigh()).isNotEqualTo(0L);
        assertthat(span.getTraceId()).isNotEqualTo(0L);
    }
    finally {
        if (span != null) {
            tracer.close(span);
        }
    }
}
项目:spring-cloud-task    文件:JobExecutionEventTests.java   
@Test
public void testOrderConfiguration() {
    ConfigurableApplicationContext applicationContext =
            SpringApplication.run(new Class[]{BatchEventAutoConfiguration.JobExecutionListenerConfiguration.class,EventJobExecutionConfiguration.class,TestSupportBinderAutoConfiguration.class},new String[]{"--spring.cloud.task.closecontext_enable=false","--spring.main.web-environment=false","--spring.cloud.task.batch.events.chunk-order=5","--spring.cloud.task.batch.events.item-process-order=5","--spring.cloud.task.batch.events.item-read-order=5","--spring.cloud.task.batch.events.item-write-order=5","--spring.cloud.task.batch.events.job-execution-order=5","--spring.cloud.task.batch.events.skip-order=5","--spring.cloud.task.batch.events.step-execution-order=5"
            });
    for (String beanName : LISTENER_BEAN_NAMES) {
        Ordered ordered = (Ordered)applicationContext.getBean(beanName);
        assertEquals("Expected order value of 5 for " + beanName,ordered.getorder(),5);
    }
}
项目:spring-cloud-task    文件:TaskBatchExecutionListenerTests.java   
@Test
public void testMultipleDataSources() {
    this.applicationContext = SpringApplication.run(new Class[] {JobConfigurationMultipleDataSources.class,EmbeddedDataSourceConfiguration.class,BatchAutoConfiguration.class,TaskBatchAutoConfiguration.class},ARGS);

    TaskExplorer taskExplorer = this.applicationContext.getBean(TaskExplorer.class);

    Page<TaskExecution> page = taskExplorer.findTaskExecutionsByName("application",new PageRequest(0,1));

    Set<Long> jobExecutionIds = taskExplorer.getJobExecutionIdsByTaskExecutionId(page.iterator().next().getExecutionId());

    assertEquals(1,jobExecutionIds.size());
    assertEquals(1,taskExplorer.getTaskExecution(jobExecutionIds.iterator().next()).getExecutionId());
}
项目:spring-cloud-task    文件:TaskBatchExecutionListenerTests.java   
@Test
public void testAutobuiltDataSourceNoJob() {
    this.applicationContext = SpringApplication.run(new Class[] {NoJobConfiguration.class,PageRequest.of(0,1));

    Set<Long> jobExecutionIds = taskExplorer.getJobExecutionIdsByTaskExecutionId(page.iterator().next().getExecutionId());

    assertEquals(0,jobExecutionIds.size());
}
项目:spring-cloud-task    文件:TaskBatchExecutionListenerTests.java   
@Test
public void testMapBased() {
    this.applicationContext = SpringApplication.run(new Class[] {JobConfiguration.class,(long) taskExplorer.getTaskExecutionIdByJobExecutionId(jobExecutionIds.iterator().next()));
}
项目:spring-cloud-task    文件:TaskBatchExecutionListenerTests.java   
@Test
public void testMultipleJobs() {
    this.applicationContext = SpringApplication.run(new Class[] {EmbeddedDataSourceConfiguration.class,MultipleJobConfiguration.class,1));

    Set<Long> jobExecutionIds = taskExplorer.getJobExecutionIdsByTaskExecutionId(page.iterator().next().getExecutionId());

    assertEquals(2,jobExecutionIds.size());
    Iterator<Long> jobExecutionIdsIterator = jobExecutionIds.iterator();
    assertEquals(1,(long) taskExplorer.getTaskExecutionIdByJobExecutionId(jobExecutionIdsIterator.next()));
    assertEquals(1,(long) taskExplorer.getTaskExecutionIdByJobExecutionId(jobExecutionIdsIterator.next()));
}
项目:spring-cloud-task    文件:TaskCoreTests.java   
@Test
public void successfulTasktest() {
    applicationContext = new SpringApplicationBuilder().sources(new Class[]{TaskConfiguration.class,PropertyPlaceholderAutoConfiguration.class}).build().run(new String[]{
            "--spring.cloud.task.closecontext.enable=false","--spring.cloud.task.name=" + TASK_NAME,"--spring.main.web-environment=false"});

    String output = this.outputCapture.toString();
    assertTrue("Test results do not show create task message: " + output,output.contains(CREATE_TASK_MESSAGE));
    assertTrue("Test results do not show success message: " + output,output.contains(UPDATE_TASK_MESSAGE));
    assertTrue("Test results have incorrect exit code: " + output,output.contains(SUCCESS_EXIT_CODE_MESSAGE));
}
项目:spring-cloud-task    文件:TaskCoreTests.java   
@Test
public void invalidExecutionId() {
    boolean exceptionFired = false;
    try {
        applicationContext = new SpringApplicationBuilder().sources(TaskExceptionConfiguration.class,PropertyPlaceholderAutoConfiguration.class).build().run(new String[]{
                "--spring.cloud.task.closecontext.enable=false","--spring.cloud.task.executionid=55"});
    }
    catch (ApplicationContextException exception) {
        exceptionFired = true;
    }
    assertTrue("An ApplicationContextException should have been thrown",exceptionFired);

    String output = this.outputCapture.toString();
    assertTrue("Test results do not show the correct exception message: " + output,output.contains(EXCEPTION_INVALID_TASK_EXECUTION_ID));
}
项目:spring-cloud-task    文件:SimpleTaskConfigurationTests.java   
@Test
public void testRepositorynotinitialized() throws Exception {
    Properties properties = new Properties();

    properties.put("spring.cloud.task.tablePrefix","foobarless");
    PropertiesPropertySource propertiesSource = new PropertiesPropertySource("test",properties);

    this.context = new AnnotationConfigApplicationContext();
    this.context.getEnvironment().getPropertySources().addLast(propertiesSource);
    ((AnnotationConfigApplicationContext)context).register(SimpleTaskConfiguration.class);
    ((AnnotationConfigApplicationContext)context).register(PropertyPlaceholderAutoConfiguration.class);
    ((AnnotationConfigApplicationContext)context).register(EmbeddedDataSourceConfiguration.class);
    boolean wasExceptionThrown = false;
    try {
        this.context.refresh();
    }
    catch (ApplicationContextException ex) {
        wasExceptionThrown = true;
    }
    assertTrue("Expected ApplicationContextException to be thrown",wasExceptionThrown);
}
项目:spring-cloud-cli    文件:DeployerApplication.java   
private DeployerProperties loadCloudProperties() {

        final ConfigurableApplicationContext context = new SpringApplicationBuilder(
                PropertyPlaceholderAutoConfiguration.class,DeployerConfiguration.class)
                        .bannerMode(Mode.OFF).logStartupInfo(false).web(false)
                        .properties("spring.config.name=cloud","logging.level.ROOT=OFF","spring.cloud.launcher.list=true","launcher.version=" + getVersion())
                        .run(this.args);
        try {
            return context.getBean(DeployerProperties.class);
        }
        finally {
            context.close();
        }
    }
项目:spring-cloud-netflix    文件:EurekaClientConfigBeanTests.java   
@Test
public void serviceUrlWithCompositePropertySource() {
    CompositePropertySource source = new CompositePropertySource("composite");
    this.context.getEnvironment().getPropertySources().addFirst(source);
    source.addPropertySource(new MapPropertySource("config",Collections
            .<String,Object> singletonMap("eureka.client.serviceUrl.defaultZone","http://example.com,http://example2.com")));
    this.context.register(PropertyPlaceholderAutoConfiguration.class,TestConfiguration.class);
    this.context.refresh();
    assertEquals("{defaultZone=http://example.com,http://example2.com}",this.context.getBean(EurekaClientConfigBean.class).getServiceUrl()
                    .toString());
    assertEquals("[http://example.com/,http://example2.com/]",getEurekaServiceUrlsForDefaultZone());
}
项目:spring-cloud-netflix    文件:discoveryClientConfigServiceAutoConfigurationTests.java   
private void setup(String... env) {
    AnnotationConfigApplicationContext parent = new AnnotationConfigApplicationContext();
    EnvironmentTestUtils.addEnvironment(parent,env);
    parent.register(UtilAutoConfiguration.class,EurekadiscoveryClientConfiguration.class,EnvironmentKnobbler.class,EurekadiscoveryClientConfigServiceBootstrapConfiguration.class,discoveryClientConfigServiceBootstrapConfiguration.class,ConfigClientProperties.class);
    parent.refresh();
    this.context = new AnnotationConfigApplicationContext();
    this.context.setParent(parent);
    this.context.register(PropertyPlaceholderAutoConfiguration.class,EurekadiscoveryClientConfigServiceAutoConfiguration.class,EurekaClientAutoConfiguration.class);
    this.context.refresh();
}
项目:spring-cloud-config    文件:NativeEnvironmentRepository.java   
@Override
public Environment findOne(String config,String profile,String label) {
    SpringApplicationBuilder builder = new SpringApplicationBuilder(
            PropertyPlaceholderAutoConfiguration.class);
    ConfigurableEnvironment environment = getEnvironment(profile);
    builder.environment(environment);
    builder.web(WebApplicationType.NONE).bannerMode(Mode.OFF);
    if (!logger.isDebugEnabled()) {
        // Make the mini-application startup less verbose
        builder.logStartupInfo(false);
    }
    String[] args = getArgs(config,profile,label);
    // Explicitly set the listeners (to exclude logging listener which would change
    // log levels in the caller)
    builder.application()
            .setListeners(Arrays.asList(new ConfigFileApplicationListener()));
    ConfigurableApplicationContext context = builder.run(args);
    environment.getPropertySources().remove("profiles");
    try {
        return clean(new PassthruEnvironmentRepository(environment).findOne(config,label));
    }
    finally {
        context.close();
    }
}
项目:spring-cloud-consul    文件:discoveryClientConfigServiceAutoConfigurationTests.java   
private void setup(String... env) {
    AnnotationConfigApplicationContext parent = new AnnotationConfigApplicationContext();
    TestPropertyValues.of(env).applyTo(parent);
    parent.register(UtilAutoConfiguration.class,ConsuldiscoveryClientConfigServiceBootstrapConfiguration.class,ConsulconfigserverAutoConfiguration.class,ConsulAutoConfiguration.class,ConsuldiscoveryClientConfiguration.class);
    this.context.refresh();
}
项目:composed-task-runner    文件:ComposedRunnerVisitorTests.java   
private void setupContextForgraph(String graph) {
    String[] ARGS = new String[] {CLOSE_CONTEXT_ARG,TASK_NAME_ARG,"--graph=" + graph};

    this.applicationContext = SpringApplication.run(new Object[] {ComposedRunnerVisitorConfiguration.class,ARGS);
}
项目:spring-boot-data-source-decorator    文件:SleuthListenerAutoConfigurationTests.java   
@Test
public void testAddsP6SpyListener() {
    context.setClassLoader(new HidePackagesClassLoader("com.vladmihalcea.flexypool",PropertyPlaceholderAutoConfiguration.class);
    context.refresh();

    JdbcEventListenerFactory jdbcEventListenerFactory = context.getBean(JdbcEventListenerFactory.class);
    CompoundJdbcEventListener jdbcEventListener = (CompoundJdbcEventListener) jdbcEventListenerFactory.createJdbcEventListener();
    assertthat(jdbcEventListener.getEventListeners()).extracting("class").contains(TracingJdbcEventListener.class);
}
项目:spring-boot-data-source-decorator    文件:SleuthListenerAutoConfigurationTests.java   
@Test
public void testDoesNotAddP6SpyListenerIfNoTracer() {
    context.setClassLoader(new HidePackagesClassLoader("com.vladmihalcea.flexypool",PropertyPlaceholderAutoConfiguration.class);
    context.refresh();

    JdbcEventListenerFactory jdbcEventListenerFactory = context.getBean(JdbcEventListenerFactory.class);
    CompoundJdbcEventListener jdbcEventListener = (CompoundJdbcEventListener) jdbcEventListenerFactory.createJdbcEventListener();
    assertthat(jdbcEventListener.getEventListeners()).extracting("class").doesNotContain(TracingJdbcEventListener.class);
}
项目:spring-boot-data-source-decorator    文件:SleuthListenerAutoConfigurationTests.java   
@Test
public void testDoesntAddDatasourceProxyListenerIfNoTracer() {
    context.setClassLoader(new HidePackagesClassLoader("com.vladmihalcea.flexypool",PropertyPlaceholderAutoConfiguration.class);
    context.refresh();

    DataSource dataSource = context.getBean(DataSource.class);
    ProxyDataSource proxyDataSource = (ProxyDataSource) ((DecoratedDataSource) dataSource).getDecoratedDataSource();
    ChainListener chainListener = proxyDataSource.getProxyConfig().getQueryListener();
    assertthat(chainListener.getListeners()).extracting("class").doesNotContain(TracingQueryExecutionListener.class);
}
项目:spring-boot-data-source-decorator    文件:P6SpyConfigurationTests.java   
@Test
public void testCustomListeners() throws Exception {
    context.register(CustomListenerConfiguration.class,PropertyPlaceholderAutoConfiguration.class);
    context.refresh();

    DataSource dataSource = context.getBean(DataSource.class);
    JdbcEventListenerFactory jdbcEventListenerFactory = context.getBean(JdbcEventListenerFactory.class);
    GetCountingListener getCountingListener = context.getBean(GetCountingListener.class);
    ClosingCountingListener closingCountingListener = context.getBean(ClosingCountingListener.class);
    P6DataSource p6DataSource = (P6DataSource) ((DecoratedDataSource) dataSource).getDecoratedDataSource();
    assertthat(p6DataSource).extracting("jdbcEventListenerFactory").containsOnly(jdbcEventListenerFactory);

    CompoundJdbcEventListener jdbcEventListener = (CompoundJdbcEventListener) jdbcEventListenerFactory.createJdbcEventListener();

    assertthat(jdbcEventListener.getEventListeners()).contains(getCountingListener,closingCountingListener);
    assertthat(getCountingListener.connectionCount).isEqualTo(0);

    Connection connection1 = p6DataSource.getConnection();

    assertthat(getCountingListener.connectionCount).isEqualTo(1);
    assertthat(closingCountingListener.connectionCount).isEqualTo(0);

    Connection connection2 = p6DataSource.getConnection();

    assertthat(getCountingListener.connectionCount).isEqualTo(2);

    connection1.close();

    assertthat(closingCountingListener.connectionCount).isEqualTo(1);

    connection2.close();

    assertthat(closingCountingListener.connectionCount).isEqualTo(2);
}
项目:spring-boot-data-source-decorator    文件:ProxyDataSourceConfigurationTests.java   
@Test
public void testRegisterLogAndSlowQueryLogByDefaultToSlf4j() throws Exception {
    context.register(DataSourceAutoConfiguration.class,PropertyPlaceholderAutoConfiguration.class);
    context.refresh();

    DataSource dataSource = context.getBean(DataSource.class);
    ProxyDataSource proxyDataSource = (ProxyDataSource) ((DecoratedDataSource) dataSource).getDecoratedDataSource();
    ChainListener chainListener = proxyDataSource.getProxyConfig().getQueryListener();
    assertthat(chainListener.getListeners()).extracting("class").contains(SLF4JSlowQueryListener.class);
    assertthat(chainListener.getListeners()).extracting("class").contains(SLF4JQueryLoggingListener.class);
}

关于NoSuchMethodException:org.springframework.boot.autoconfigure.http.HttpMessageConverters的介绍现已完结,谢谢您的耐心阅读,如果想了解更多关于Java-Class-C:org.springframework.http.converter.StringHttpMessageConverter、java.lang.ClassNotFoundException:org.springframework.http.converter.json.MappingJackson2HttpMessageConverter、org.springframework.boot.actuate.autoconfigure.ManagementServerPropertiesAutoConfiguration的实例源码、org.springframework.boot.autoconfigure.context.PropertyPlaceholderAutoConfiguration的实例源码的相关知识,请在本站寻找。

本文标签: