From b75b5a3d1a3bf001923d49923dcebee95ba2327e Mon Sep 17 00:00:00 2001 From: Vitaly Takmazov Date: Thu, 29 Jun 2017 17:09:49 +0300 Subject: notifications and configurations refactoring --- juick-server-web/build.gradle | 9 +--- .../server/configuration/BaseWebConfiguration.java | 53 ++++++++++++++++++++++ 2 files changed, 55 insertions(+), 7 deletions(-) create mode 100644 juick-server-web/src/main/java/com/juick/server/configuration/BaseWebConfiguration.java (limited to 'juick-server-web') diff --git a/juick-server-web/build.gradle b/juick-server-web/build.gradle index fde15afe..92f017e4 100644 --- a/juick-server-web/build.gradle +++ b/juick-server-web/build.gradle @@ -29,14 +29,12 @@ dependencies { compile 'com.github.ben-manes.caffeine:caffeine:2.5.2' - compile "org.springframework:spring-context:${rootProject.springFrameworkVersion}" - compile "org.springframework:spring-jdbc:${rootProject.springFrameworkVersion}" + compile "org.springframework:spring-webmvc:${rootProject.springFrameworkVersion}" + compile "org.springframework:spring-context-support:${rootProject.springFrameworkVersion}" compile "org.springframework.security:spring-security-web:${rootProject.springSecurityVersion}" compile "org.springframework.security:spring-security-config:${rootProject.springSecurityVersion}" - providedCompile "org.apache.commons:commons-dbcp2:2.1.1" - compile "com.googlecode.log4jdbc:log4jdbc:1.2" compile "javax.inject:javax.inject:1" compile "rocks.xmpp:xmpp-core-client:0.7.4" @@ -48,14 +46,11 @@ dependencies { providedRuntime "commons-fileupload:commons-fileupload:1.3.3" - testCompile "ch.vorburger.mariaDB4j:mariaDB4j:2.2.3" testCompile "junit:junit:${rootProject.junitVersion}" testCompile "org.hamcrest:hamcrest-all:${rootProject.hamcrestVersion}" testCompile "org.mockito:mockito-core:${rootProject.mockitoVersion}" testCompile "org.springframework:spring-test:${rootProject.springFrameworkVersion}" testCompile "org.springframework.security:spring-security-test:${rootProject.springSecurityVersion}" - - testRuntime "mysql:mysql-connector-java:5.1.40" } compileJava.options.encoding = 'UTF-8' diff --git a/juick-server-web/src/main/java/com/juick/server/configuration/BaseWebConfiguration.java b/juick-server-web/src/main/java/com/juick/server/configuration/BaseWebConfiguration.java new file mode 100644 index 00000000..34f97ed2 --- /dev/null +++ b/juick-server-web/src/main/java/com/juick/server/configuration/BaseWebConfiguration.java @@ -0,0 +1,53 @@ +package com.juick.server.configuration; + +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.fasterxml.jackson.datatype.jdk8.Jdk8Module; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.http.converter.HttpMessageConverter; +import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter; +import org.springframework.web.multipart.MultipartResolver; +import org.springframework.web.multipart.commons.CommonsMultipartResolver; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport; +import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping; + +import java.util.List; + +/** + * Created by vitalyster on 28.06.2016. + */ +@Configuration +public class BaseWebConfiguration extends WebMvcConfigurationSupport { + + @Override + public RequestMappingHandlerMapping requestMappingHandlerMapping() { + RequestMappingHandlerMapping mapping = super.requestMappingHandlerMapping(); + mapping.setUseSuffixPatternMatch(false); + return mapping; + } + + @Override + protected void configureMessageConverters(List> converters) { + MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter(jsonMapper()); + converters.add(converter); + super.configureMessageConverters(converters); + } + + @Bean + public ObjectMapper jsonMapper() { + ObjectMapper mapper = new ObjectMapper(); + mapper.setSerializationInclusion(JsonInclude.Include.NON_EMPTY); + mapper.setSerializationInclusion(JsonInclude.Include.NON_NULL); + mapper.setSerializationInclusion(JsonInclude.Include.NON_DEFAULT); + mapper.registerModule(new Jdk8Module()); + return mapper; + } + + @Bean + public MultipartResolver multipartResolver() { + CommonsMultipartResolver resolver = new CommonsMultipartResolver(); + resolver.setMaxUploadSize(10000000); + return resolver; + } +} -- cgit v1.2.3