Created
          August 20, 2013 15:00 
        
      - 
      
- 
        Save mlaccetti/6282536 to your computer and use it in GitHub Desktop. 
    Bootstrap a Spring 3 annotation-only Java 6/Tomcat 6 app
  
        
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
  | package laccetti.spring.app; | |
| import org.springframework.context.annotation.ComponentScan; | |
| import org.springframework.context.annotation.Configuration; | |
| @Configuration | |
| @ComponentScan(basePackages = "laccetti") | |
| public class SpringConfiguration { | |
| // bean definitions go here | |
| } | 
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
  | package laccetti.spring.app; | |
| import java.util.ArrayList; | |
| import java.util.List; | |
| import lombok.extern.slf4j.Slf4j; | |
| import org.springframework.beans.factory.annotation.Value; | |
| import org.springframework.context.annotation.Bean; | |
| import org.springframework.context.annotation.Configuration; | |
| import org.springframework.context.support.PropertySourcesPlaceholderConfigurer; | |
| import org.springframework.core.io.ClassPathResource; | |
| import org.springframework.core.io.FileSystemResource; | |
| import org.springframework.core.io.Resource; | |
| import org.springframework.http.converter.HttpMessageConverter; | |
| import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter; | |
| import org.springframework.web.servlet.config.annotation.EnableWebMvc; | |
| import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; | |
| import org.springframework.web.servlet.config.annotation.ViewControllerRegistry; | |
| import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter; | |
| @Configuration | |
| @EnableWebMvc | |
| @Slf4j | |
| public class SpringWebConfiguration extends WebMvcConfigurerAdapter { | |
| private List<HttpMessageConverter<?>> messageConverters; | |
| @Override | |
| public void addResourceHandlers(ResourceHandlerRegistry registry) { | |
| registry.addResourceHandler("/**").addResourceLocations("/"); | |
| } | |
| @Override | |
| public void addViewControllers(ViewControllerRegistry registry) { | |
| // registry.addViewController("/").setViewName("redirect:index.html"); | |
| } | |
| /** | |
| * The message converters for the content types we support. | |
| * | |
| * @return the message converters; returns the same list on subsequent calls | |
| */ | |
| private List<HttpMessageConverter<?>> getMessageConverters() { | |
| if (messageConverters == null) { | |
| messageConverters = new ArrayList<HttpMessageConverter<?>>(); | |
| MappingJackson2HttpMessageConverter mappingJacksonHttpMessageConverter = | |
| new MappingJackson2HttpMessageConverter(); | |
| messageConverters.add(mappingJacksonHttpMessageConverter); | |
| } | |
| return messageConverters; | |
| } | |
| @Override | |
| public void configureMessageConverters(List<HttpMessageConverter<?>> converters) { | |
| converters.addAll(getMessageConverters()); | |
| } | |
| @Bean | |
| public static PropertySourcesPlaceholderConfigurer externalizedProperties() { | |
| final PropertySourcesPlaceholderConfigurer props = new PropertySourcesPlaceholderConfigurer(); | |
| props.setLocation(new ClassPathResource("app.properties")); | |
| props.setIgnoreResourceNotFound(true); | |
| return props; | |
| } | |
| } | 
  
    
      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
      Learn more about bidirectional Unicode characters
    
  
  
    
  | <?xml version="1.0" encoding="UTF-8"?> | |
| <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |
| xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"> | |
| <session-config> | |
| <session-timeout>15</session-timeout> | |
| </session-config> | |
| <listener> | |
| <listener-class>org.springframework.web.context.ContextCleanupListener</listener-class> | |
| </listener> | |
| <servlet> | |
| <description>Spring Web</description> | |
| <servlet-name>Spring Web</servlet-name> | |
| <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> | |
| <init-param> | |
| <param-name>contextClass</param-name> | |
| <param-value>org.springframework.web.context.support.AnnotationConfigWebApplicationContext</param-value> | |
| </init-param> | |
| <init-param> | |
| <param-name>contextConfigLocation</param-name> | |
| <param-value>laccetti.spring.app.SpringConfiguration,laccetti.spring.app.SpringWebConfiguration</param-value> | |
| </init-param> | |
| <load-on-startup>1</load-on-startup> | |
| </servlet> | |
| <servlet-mapping> | |
| <servlet-name>Spring Web</servlet-name> | |
| <url-pattern>/rest/*</url-pattern> | |
| </servlet-mapping> | |
| <welcome-file-list> | |
| <welcome-file>index.html</welcome-file> | |
| </welcome-file-list> | |
| </web-app> | 
  
    Sign up for free
    to join this conversation on GitHub.
    Already have an account?
    Sign in to comment