Class Application

  • All Implemented Interfaces:
    org.springframework.web.WebApplicationInitializer

    @SpringBootApplication
    public class Application
    extends org.springframework.boot.web.servlet.support.SpringBootServletInitializer
    Define the Spring Boot Application settings itself. This class takes the place of a web.xml file, and configures all Filters/Listeners as methods (see below).

    NOTE: Requires a Servlet 3.0 container, e.g. Tomcat 7.0 or above.

    NOTE: This extends SpringBootServletInitializer in order to allow us to build a deployable WAR file with Spring Boot. See: http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howto-create-a-deployable-war-file

    Author:
    Andrea Bollini (andrea.bollini at 4science.it), Tim Donohue
    • Field Summary

      • Fields inherited from class org.springframework.boot.web.servlet.support.SpringBootServletInitializer

        logger
    • Constructor Summary

      Constructors 
      Constructor Description
      Application()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected org.springframework.boot.builder.SpringApplicationBuilder configure​(org.springframework.boot.builder.SpringApplicationBuilder application)
      Override the default SpringBootServletInitializer.configure() method, passing it this Application class.
      protected DSpaceContextListener dspaceContextListener()
      Register the "DSpaceContextListener" so that it is loaded for this Application.
      protected org.springframework.hateoas.RelProvider dspaceRelProvider()  
      protected javax.servlet.Filter dspaceRequestContextFilter()
      Register the DSpaceRequestContextFilter, a Filter which checks for open Context objects *after* a request has been fully processed, and closes them
      protected javax.servlet.Filter dspaceWebappServletFilter()
      Register the DSpaceWebappServletFilter, which initializes the DSpace RequestService / SessionService
      org.springframework.web.context.request.RequestContextListener requestContextListener()  
      org.springframework.web.servlet.config.annotation.WebMvcConfigurer webMvcConfigurer()  
      • Methods inherited from class org.springframework.boot.web.servlet.support.SpringBootServletInitializer

        createRootApplicationContext, createSpringApplicationBuilder, onStartup, run, setRegisterErrorPageFilter
    • Constructor Detail

      • Application

        public Application()
    • Method Detail

      • configure

        protected org.springframework.boot.builder.SpringApplicationBuilder configure​(org.springframework.boot.builder.SpringApplicationBuilder application)
        Override the default SpringBootServletInitializer.configure() method, passing it this Application class.

        This is necessary to allow us to build a deployable WAR, rather than always relying on embedded Tomcat.

        See: http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howto-create-a-deployable-war-file

        Overrides:
        configure in class org.springframework.boot.web.servlet.support.SpringBootServletInitializer
        Parameters:
        application -
        Returns:
      • dspaceContextListener

        @Bean
        @Order(2)
        protected DSpaceContextListener dspaceContextListener()
        Register the "DSpaceContextListener" so that it is loaded for this Application.
        Returns:
        DSpaceContextListener
      • dspaceWebappServletFilter

        @Bean
        @Order(1)
        protected javax.servlet.Filter dspaceWebappServletFilter()
        Register the DSpaceWebappServletFilter, which initializes the DSpace RequestService / SessionService
        Returns:
        DSpaceWebappServletFilter
      • dspaceRequestContextFilter

        @Bean
        @Order(2)
        protected javax.servlet.Filter dspaceRequestContextFilter()
        Register the DSpaceRequestContextFilter, a Filter which checks for open Context objects *after* a request has been fully processed, and closes them
        Returns:
        DSpaceRequestContextFilter
      • requestContextListener

        @Bean
        public org.springframework.web.context.request.RequestContextListener requestContextListener()
      • dspaceRelProvider

        @Bean
        protected org.springframework.hateoas.RelProvider dspaceRelProvider()
      • webMvcConfigurer

        @Bean
        public org.springframework.web.servlet.config.annotation.WebMvcConfigurer webMvcConfigurer()