diff --git a/TestWS-Utility/.gitignore b/TestWS-Utility/.gitignore new file mode 100644 index 0000000..b83d222 --- /dev/null +++ b/TestWS-Utility/.gitignore @@ -0,0 +1 @@ +/target/ diff --git a/TestWS-Utility/.project b/TestWS-Utility/.project new file mode 100644 index 0000000..50f6292 --- /dev/null +++ b/TestWS-Utility/.project @@ -0,0 +1,36 @@ + + + TestWS-Utility + + + + + + org.eclipse.wst.common.project.facet.core.builder + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.wst.validation.validationbuilder + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.eclipse.jem.workbench.JavaEMFNature + org.eclipse.wst.common.modulecore.ModuleCoreNature + org.eclipse.jdt.core.javanature + org.eclipse.m2e.core.maven2Nature + org.eclipse.wst.common.project.facet.core.nature + + diff --git a/TestWS-Utility/pom.xml b/TestWS-Utility/pom.xml new file mode 100644 index 0000000..647a833 --- /dev/null +++ b/TestWS-Utility/pom.xml @@ -0,0 +1,42 @@ + + 4.0.0 + + com.imt.test + TestWS + 0.0.1-SNAPSHOT + + TestWS-Utility + TestWS-utility + + + + + org.apache.maven.plugins + maven-compiler-plugin + 3.2 + + ${maven.compiler.source} + ${maven.compiler.target} + + + + + + + + com.fasterxml.jackson.core + jackson-core + + + + com.fasterxml.jackson.core + jackson-annotations + + + + com.fasterxml.jackson.core + jackson-databind + + + \ No newline at end of file diff --git a/TestWS-persistence/src/main/java/com/imt/test/persistence/util/Status.java b/TestWS-Utility/src/main/java/com/imt/test/utility/util/Status.java similarity index 95% rename from TestWS-persistence/src/main/java/com/imt/test/persistence/util/Status.java rename to TestWS-Utility/src/main/java/com/imt/test/utility/util/Status.java index e8f159c..4a0c4f2 100644 --- a/TestWS-persistence/src/main/java/com/imt/test/persistence/util/Status.java +++ b/TestWS-Utility/src/main/java/com/imt/test/utility/util/Status.java @@ -1,7 +1,7 @@ /** * */ -package com.imt.test.persistence.util; +package com.imt.test.utility.util; import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat.Shape; diff --git a/TestWS-Utility/src/main/resources/logback.xml b/TestWS-Utility/src/main/resources/logback.xml new file mode 100644 index 0000000..73c2b64 --- /dev/null +++ b/TestWS-Utility/src/main/resources/logback.xml @@ -0,0 +1,46 @@ + + + + + + + %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n + + + + + + ${log.dir}/Application.log + + + %d{yyyy-MM-dd HH:mm:ss} - %msg%n + + + + + + ${log.dir}/Application.%d{yyyy-MM-dd}.%i.log + + + 10MB + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/TestWS-persistence/.classpath b/TestWS-persistence/.classpath index 6838dc0..33b6ccb 100644 --- a/TestWS-persistence/.classpath +++ b/TestWS-persistence/.classpath @@ -13,15 +13,20 @@ - + + - + + + + + + - diff --git a/TestWS-persistence/.gitignore b/TestWS-persistence/.gitignore index b83d222..e91d5c4 100644 --- a/TestWS-persistence/.gitignore +++ b/TestWS-persistence/.gitignore @@ -1 +1,3 @@ /target/ +/target/ +/target/ diff --git a/TestWS-persistence/.project b/TestWS-persistence/.project index 9097828..b489f87 100644 --- a/TestWS-persistence/.project +++ b/TestWS-persistence/.project @@ -20,6 +20,11 @@ + + org.springframework.ide.eclipse.core.springbuilder + + + org.eclipse.m2e.core.maven2Builder @@ -27,6 +32,7 @@ + org.springframework.ide.eclipse.core.springnature org.eclipse.jem.workbench.JavaEMFNature org.eclipse.wst.common.modulecore.ModuleCoreNature org.eclipse.jdt.core.javanature diff --git a/TestWS-persistence/pom.xml b/TestWS-persistence/pom.xml index 747d1c7..eb0c81f 100644 --- a/TestWS-persistence/pom.xml +++ b/TestWS-persistence/pom.xml @@ -28,6 +28,12 @@ + + com.imt.test + TestWS-Utility + 0.0.1-SNAPSHOT + + org.springframework diff --git a/TestWS-persistence/src/main/java/com/imt/test/persistence/entity/AbstractAuditableEntity.java b/TestWS-persistence/src/main/java/com/imt/test/persistence/entity/AbstractAuditableEntity.java index c58f404..9808f37 100644 --- a/TestWS-persistence/src/main/java/com/imt/test/persistence/entity/AbstractAuditableEntity.java +++ b/TestWS-persistence/src/main/java/com/imt/test/persistence/entity/AbstractAuditableEntity.java @@ -15,7 +15,7 @@ import org.springframework.data.jpa.domain.AbstractPersistable; import com.fasterxml.jackson.annotation.JsonProperty; -import com.imt.test.persistence.util.Status; +import com.imt.test.utility.util.Status; /** * @author imteyaza diff --git a/TestWS-persistence/src/main/java/com/imt/test/persistence/repo/UserRepo.java b/TestWS-persistence/src/main/java/com/imt/test/persistence/repo/UserRepo.java index 2bd7c5a..6189bea 100644 --- a/TestWS-persistence/src/main/java/com/imt/test/persistence/repo/UserRepo.java +++ b/TestWS-persistence/src/main/java/com/imt/test/persistence/repo/UserRepo.java @@ -3,6 +3,8 @@ */ package com.imt.test.persistence.repo; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.stereotype.Repository; @@ -14,5 +16,7 @@ */ @Repository("userRepo") public interface UserRepo extends JpaRepository { - + + Logger logger = LoggerFactory.getLogger(UserRepo.class); + } diff --git a/TestWS-service/.classpath b/TestWS-service/.classpath index e4f7ef8..33b6ccb 100644 --- a/TestWS-service/.classpath +++ b/TestWS-service/.classpath @@ -12,16 +12,21 @@ - - + + + - + + + + + + - diff --git a/TestWS-service/.gitignore b/TestWS-service/.gitignore index b83d222..e91d5c4 100644 --- a/TestWS-service/.gitignore +++ b/TestWS-service/.gitignore @@ -1 +1,3 @@ /target/ +/target/ +/target/ diff --git a/TestWS-service/.project b/TestWS-service/.project index 716455c..4c92d8a 100644 --- a/TestWS-service/.project +++ b/TestWS-service/.project @@ -20,6 +20,11 @@ + + org.springframework.ide.eclipse.core.springbuilder + + + org.eclipse.m2e.core.maven2Builder @@ -27,6 +32,7 @@ + org.springframework.ide.eclipse.core.springnature org.eclipse.jem.workbench.JavaEMFNature org.eclipse.wst.common.modulecore.ModuleCoreNature org.eclipse.jdt.core.javanature diff --git a/TestWS-service/.settings/org.eclipse.core.resources.prefs b/TestWS-service/.settings/org.eclipse.core.resources.prefs index e9441bb..839d647 100644 --- a/TestWS-service/.settings/org.eclipse.core.resources.prefs +++ b/TestWS-service/.settings/org.eclipse.core.resources.prefs @@ -1,3 +1,5 @@ eclipse.preferences.version=1 encoding//src/main/java=UTF-8 +encoding//src/main/resources=UTF-8 +encoding//src/test/java=UTF-8 encoding/=UTF-8 diff --git a/TestWS-service/.springBeans b/TestWS-service/.springBeans new file mode 100644 index 0000000..7e2d7ea --- /dev/null +++ b/TestWS-service/.springBeans @@ -0,0 +1,15 @@ + + + 1 + + + + + + + + + + + + diff --git a/TestWS-service/src/main/java/com/imt/test/service/config/ServiceContextConfig.java b/TestWS-service/src/main/java/com/imt/test/service/config/ServiceContextConfig.java index 1bfd450..26bfb7c 100644 --- a/TestWS-service/src/main/java/com/imt/test/service/config/ServiceContextConfig.java +++ b/TestWS-service/src/main/java/com/imt/test/service/config/ServiceContextConfig.java @@ -3,11 +3,16 @@ */ package com.imt.test.service.config; +import java.io.IOException; + +import org.springframework.beans.factory.config.PropertyPlaceholderConfigurer; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; import org.springframework.context.support.ReloadableResourceBundleMessageSource; +import com.imt.test.service.util.PropertyFileLoader; + /** * @author imteyaza * @@ -23,5 +28,17 @@ public ReloadableResourceBundleMessageSource resourceBundleMessageSource() { messageSource.setDefaultEncoding("UTF-8"); return messageSource; } + + @Bean + PropertyFileLoader fileLoader(){ + return new PropertyFileLoader(); + } + @Bean + public PropertyPlaceholderConfigurer configurer() throws IOException{ + PropertyPlaceholderConfigurer configurer = new PropertyPlaceholderConfigurer(); + configurer.setSearchSystemEnvironment(true); + configurer.setLocation(fileLoader().loadProperties()); + return configurer; + } } diff --git a/TestWS-service/src/main/java/com/imt/test/service/util/PropertyFileLoader.java b/TestWS-service/src/main/java/com/imt/test/service/util/PropertyFileLoader.java index 3d2deaa..6c6acbe 100644 --- a/TestWS-service/src/main/java/com/imt/test/service/util/PropertyFileLoader.java +++ b/TestWS-service/src/main/java/com/imt/test/service/util/PropertyFileLoader.java @@ -4,18 +4,31 @@ package com.imt.test.service.util; import java.io.IOException; -import java.util.Properties; + +import org.springframework.context.ResourceLoaderAware; +import org.springframework.core.io.Resource; +import org.springframework.core.io.ResourceLoader; +import org.springframework.stereotype.Component; /** * @author imteyaza * */ -public class PropertyFileLoader { +@Component +public class PropertyFileLoader implements ResourceLoaderAware { + + private ResourceLoader resourceLoader; + final String CONFIG_DIR = System.getProperty("config.dir"); + + @Override + public void setResourceLoader(ResourceLoader resourceLoader) { + this.resourceLoader = resourceLoader; - public static Properties applicationProperties= null; - public void init() throws IOException { - String userCatHome = System.getenv("CATALINA_HOME"); - String userDirPath = System.getProperty("user.dir"); } + public Resource loadProperties() throws IOException { + Resource resource = resourceLoader.getResource("file:" + CONFIG_DIR + + "/application.properties"); + return resource; + } } diff --git a/TestWS-web/src/main/resources/application.properties b/TestWS-service/src/main/resources/application.properties similarity index 100% rename from TestWS-web/src/main/resources/application.properties rename to TestWS-service/src/main/resources/application.properties diff --git a/TestWS-web/.classpath b/TestWS-web/.classpath index 4470b1b..b113348 100644 --- a/TestWS-web/.classpath +++ b/TestWS-web/.classpath @@ -14,15 +14,20 @@ - + + - + + + + + + - diff --git a/TestWS-web/.gitignore b/TestWS-web/.gitignore index 1dd3331..b49c563 100644 --- a/TestWS-web/.gitignore +++ b/TestWS-web/.gitignore @@ -1,2 +1,4 @@ /target/ /target/ +/target/ +/target/ diff --git a/TestWS-web/.project b/TestWS-web/.project index 3166c8a..5374cde 100644 --- a/TestWS-web/.project +++ b/TestWS-web/.project @@ -25,6 +25,11 @@ + + org.springframework.ide.eclipse.core.springbuilder + + + org.eclipse.m2e.core.maven2Builder @@ -32,6 +37,7 @@ + org.springframework.ide.eclipse.core.springnature org.eclipse.jem.workbench.JavaEMFNature org.eclipse.wst.common.modulecore.ModuleCoreNature org.eclipse.jdt.core.javanature diff --git a/TestWS-web/.settings/org.eclipse.wst.common.component b/TestWS-web/.settings/org.eclipse.wst.common.component index 5d1e000..5fbb510 100644 --- a/TestWS-web/.settings/org.eclipse.wst.common.component +++ b/TestWS-web/.settings/org.eclipse.wst.common.component @@ -14,6 +14,9 @@ uses + + uses + diff --git a/TestWS-web/.settings/org.eclipse.wst.common.project.facet.core.xml b/TestWS-web/.settings/org.eclipse.wst.common.project.facet.core.xml index 809fab0..5062e75 100644 --- a/TestWS-web/.settings/org.eclipse.wst.common.project.facet.core.xml +++ b/TestWS-web/.settings/org.eclipse.wst.common.project.facet.core.xml @@ -1,5 +1,6 @@ + diff --git a/TestWS-web/pom.xml b/TestWS-web/pom.xml index 03f1587..6ca9bfc 100644 --- a/TestWS-web/pom.xml +++ b/TestWS-web/pom.xml @@ -46,6 +46,12 @@ org.springframework spring-core + + + commons-logging + commons-logging + + org.springframework @@ -137,6 +143,31 @@ jstl + + + org.slf4j + slf4j-api + + + org.apache.logging.log4j + log4j-core + + + org.slf4j + jcl-over-slf4j + + + ch.qos.logback + logback-classic + + + ch.qos.logback + logback-core + + + ch.qos.logback + logback-access + diff --git a/TestWS-web/src/main/java/com/imt/test/web/config/RootConfig.java b/TestWS-web/src/main/java/com/imt/test/web/config/RootConfig.java index 467524d..5b44a6f 100644 --- a/TestWS-web/src/main/java/com/imt/test/web/config/RootConfig.java +++ b/TestWS-web/src/main/java/com/imt/test/web/config/RootConfig.java @@ -16,6 +16,6 @@ @Configuration @ComponentScan(basePackages = { "com.imt.test" }, excludeFilters = { @Filter(type = FilterType.ANNOTATION, value = EnableWebMvc.class) }) public class RootConfig { - - + + } diff --git a/TestWS-web/src/main/java/com/imt/test/web/config/WebMvcConfig.java b/TestWS-web/src/main/java/com/imt/test/web/config/WebMvcConfig.java index 818378e..0d7c029 100644 --- a/TestWS-web/src/main/java/com/imt/test/web/config/WebMvcConfig.java +++ b/TestWS-web/src/main/java/com/imt/test/web/config/WebMvcConfig.java @@ -9,19 +9,15 @@ import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.ComponentScan; import org.springframework.context.annotation.Configuration; -import org.springframework.context.annotation.PropertySource; -import org.springframework.context.support.PropertySourcesPlaceholderConfigurer; -import org.springframework.context.support.ReloadableResourceBundleMessageSource; +import org.springframework.context.annotation.ImportResource; import org.springframework.core.env.Environment; -import org.springframework.core.io.ClassPathResource; -import org.springframework.core.io.Resource; import org.springframework.web.servlet.HandlerInterceptor; import org.springframework.web.servlet.ViewResolver; import org.springframework.web.servlet.config.annotation.DefaultServletHandlerConfigurer; import org.springframework.web.servlet.config.annotation.EnableWebMvc; import org.springframework.web.servlet.config.annotation.InterceptorRegistry; +import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport; -import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter; import org.springframework.web.servlet.i18n.LocaleChangeInterceptor; import org.springframework.web.servlet.i18n.SessionLocaleResolver; import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping; @@ -35,7 +31,6 @@ @EnableWebMvc @Configuration @ComponentScan(basePackages = { "com.imt.test" }) -@PropertySource(value = { "classpath:application.properties" }) public class WebMvcConfig extends WebMvcConfigurationSupport { @Autowired @@ -63,16 +58,6 @@ public ControllerClassNameHandlerMapping controllerClassNameHandlerMapping() { } - @Bean - public PropertySourcesPlaceholderConfigurer configurer() { - PropertySourcesPlaceholderConfigurer propertySourcesPlaceholderConfigurer = new PropertySourcesPlaceholderConfigurer(); - propertySourcesPlaceholderConfigurer - .setLocations(new Resource[] { new ClassPathResource( - "application.properties") }); - return propertySourcesPlaceholderConfigurer; - - } - @Bean public SessionLocaleResolver sessionLocaleResolver() { SessionLocaleResolver resolver = new SessionLocaleResolver(); @@ -97,7 +82,14 @@ RequestMappingHandlerMapping handlerMapping() { @Override public void addInterceptors(InterceptorRegistry registry) { - // TODO Auto-generated method stub + registry.addInterceptor(localeChangeInterceptor()); } + + @Override + public void addResourceHandlers(ResourceHandlerRegistry registry) { + registry.addResourceHandler("/resources/**").addResourceLocations("/resources/"); + } + + } diff --git a/TestWS-web/src/main/java/com/imt/test/web/controller/HomeController.java b/TestWS-web/src/main/java/com/imt/test/web/controller/HomeController.java index 2b63882..83d9da5 100644 --- a/TestWS-web/src/main/java/com/imt/test/web/controller/HomeController.java +++ b/TestWS-web/src/main/java/com/imt/test/web/controller/HomeController.java @@ -3,19 +3,25 @@ */ package com.imt.test.web.controller; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; + /** * @author imteyaza * */ @Controller public class HomeController { - + + final static Logger logger = LoggerFactory.getLogger(HomeController.class) ; + @RequestMapping(value = "/", method = RequestMethod.GET) public String home() { + logger.info("logging in logback"); return "home"; } } diff --git a/TestWS-webservice/.classpath b/TestWS-webservice/.classpath index faa9002..2832dfa 100644 --- a/TestWS-webservice/.classpath +++ b/TestWS-webservice/.classpath @@ -18,6 +18,11 @@ + + + + + diff --git a/TestWS-webservice/.gitignore b/TestWS-webservice/.gitignore index b83d222..e91d5c4 100644 --- a/TestWS-webservice/.gitignore +++ b/TestWS-webservice/.gitignore @@ -1 +1,3 @@ /target/ +/target/ +/target/ diff --git a/TestWS-webservice/.project b/TestWS-webservice/.project index 6d3055b..bee60e0 100644 --- a/TestWS-webservice/.project +++ b/TestWS-webservice/.project @@ -20,6 +20,11 @@ + + org.springframework.ide.eclipse.core.springbuilder + + + org.eclipse.m2e.core.maven2Builder @@ -27,6 +32,7 @@ + org.springframework.ide.eclipse.core.springnature org.eclipse.jem.workbench.JavaEMFNature org.eclipse.jdt.core.javanature org.eclipse.m2e.core.maven2Nature diff --git a/pom.xml b/pom.xml index ea6d37c..0019b09 100644 --- a/pom.xml +++ b/pom.xml @@ -11,18 +11,21 @@ TestWS-service TestWS-persistence TestWS-web + TestWS-Utility 1.7 1.7 UTF-8 - 4.0.5.RELEASE + 4.1.6.RELEASE UTF-8 4.1.9.Final 2.17 2.5.2 1.9 + 1.7.12 + 1.1.3 @@ -45,6 +48,12 @@ org.springframework spring-core ${spring.version} + + + commons-logging + commons-logging + + org.springframework @@ -83,12 +92,6 @@ ${spring.version} - - org.springframework.data - spring-data-commons-core - 1.4.1.RELEASE - - org.springframework.data spring-data-jpa @@ -277,8 +280,37 @@ 1.2 - - + + + org.slf4j + slf4j-api + ${slf4j.version} + + + org.apache.logging.log4j + log4j-core + 2.2 + + + org.slf4j + jcl-over-slf4j + ${slf4j.version} + + + ch.qos.logback + logback-classic + ${logback.version} + + + ch.qos.logback + logback-core + ${logback.version} + + + ch.qos.logback + logback-access + ${logback.version} + \ No newline at end of file