From 6604dc96558028c0095f33eca1852de5e61f8466 Mon Sep 17 00:00:00 2001 From: Alexander Alexeev Date: Fri, 11 Nov 2016 01:29:01 +0700 Subject: common data configuration is added --- .../configuration/CrosspostConfiguration.java | 30 +++++++++------------- 1 file changed, 12 insertions(+), 18 deletions(-) (limited to 'juick-crosspost/src/main/java/com/juick/components/configuration/CrosspostConfiguration.java') diff --git a/juick-crosspost/src/main/java/com/juick/components/configuration/CrosspostConfiguration.java b/juick-crosspost/src/main/java/com/juick/components/configuration/CrosspostConfiguration.java index 0b213cc9..069037ee 100644 --- a/juick-crosspost/src/main/java/com/juick/components/configuration/CrosspostConfiguration.java +++ b/juick-crosspost/src/main/java/com/juick/components/configuration/CrosspostConfiguration.java @@ -8,7 +8,6 @@ import com.mitchellbosecke.pebble.loader.Loader; import com.mitchellbosecke.pebble.loader.ServletLoader; import com.mitchellbosecke.pebble.spring4.PebbleViewResolver; import com.mitchellbosecke.pebble.spring4.extension.SpringExtension; -import org.apache.commons.dbcp2.BasicDataSource; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; @@ -34,28 +33,17 @@ import java.util.concurrent.Executors; */ @Configuration @ComponentScan(basePackages = {"com.juick"}) -@PropertySource(value = "classpath:juick.conf", ignoreResourceNotFound = true) +@PropertySource(value = {"classpath:juick.conf", "file:${user.home}/juick.conf"}) public class CrosspostConfiguration extends WebMvcConfigurationSupport { @Inject - Environment env; - @Inject - ExecutorService service; - @Inject - JdbcTemplate jdbc; - - @Bean - JdbcTemplate jdbc() { - BasicDataSource dataSource = new BasicDataSource(); - dataSource.setDriverClassName(env.getProperty("datasource_driver", "com.mysql.jdbc.Driver")); - dataSource.setUrl(env.getProperty("datasource_url")); - return new JdbcTemplate(dataSource); - } - + private Environment env; @Inject private ServletContext servletContext; + @Inject + private JdbcTemplate jdbc; @Bean - public Loader templateLoader(){ + public Loader templateLoader() { return new ServletLoader(servletContext); } @@ -78,12 +66,15 @@ public class CrosspostConfiguration extends WebMvcConfigurationSupport { viewResolver.setPrefix("/WEB-INF/templates/"); viewResolver.setSuffix(".html"); viewResolver.setPebbleEngine(pebbleEngine()); + return viewResolver; } + @Bean public Crosspost crosspost() { - return new Crosspost(env, service, jdbc); + return new Crosspost(env, service(), jdbc); } + @Bean public ExecutorService service() { return Executors.newCachedThreadPool(); @@ -95,6 +86,7 @@ public class CrosspostConfiguration extends WebMvcConfigurationSupport { mapping.setUseSuffixPatternMatch(false); return mapping; } + @Override protected void addResourceHandlers(ResourceHandlerRegistry registry) { registry.setOrder(0); @@ -109,9 +101,11 @@ public class CrosspostConfiguration extends WebMvcConfigurationSupport { .serializationInclusion(JsonInclude.Include.NON_NULL) .serializationInclusion(JsonInclude.Include.NON_ABSENT) .serializationInclusion(JsonInclude.Include.NON_EMPTY); + MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter(builder.build()); converter.getObjectMapper().registerModule(new Jdk8Module()); converters.add(converter); + super.configureMessageConverters(converters); } } -- cgit v1.2.3