From 7896b8b861afd8f80760ce01eda03e9879ec570d Mon Sep 17 00:00:00 2001 From: Piotr Gawron <piotr.gawron@uni.lu> Date: Wed, 19 Dec 2018 14:22:19 +0100 Subject: [PATCH] "/" is mapped as "/index.xhtml" --- .../mapviewer/web/config/SpringWebConfig.java | 5 ---- .../web/config/WebAppInitializer.java | 13 +++++++++++ .../web/controler/RootController.java | 23 +++++++++++++++++++ 3 files changed, 36 insertions(+), 5 deletions(-) create mode 100644 web/src/main/java/lcsb/mapviewer/web/controler/RootController.java diff --git a/web/src/main/java/lcsb/mapviewer/web/config/SpringWebConfig.java b/web/src/main/java/lcsb/mapviewer/web/config/SpringWebConfig.java index cde7bc1426..2d829aff04 100644 --- a/web/src/main/java/lcsb/mapviewer/web/config/SpringWebConfig.java +++ b/web/src/main/java/lcsb/mapviewer/web/config/SpringWebConfig.java @@ -12,11 +12,6 @@ import org.springframework.web.servlet.config.annotation.*; @ComponentScan(basePackages = {"lcsb.mapviewer.web"}) public class SpringWebConfig extends WebMvcConfigurerAdapter { - @Override - public void addViewControllers(ViewControllerRegistry registry) { - registry.addViewController("/").setViewName("/index.xhtml"); - } - @Override public void addResourceHandlers(ResourceHandlerRegistry registry) { registry diff --git a/web/src/main/java/lcsb/mapviewer/web/config/WebAppInitializer.java b/web/src/main/java/lcsb/mapviewer/web/config/WebAppInitializer.java index 61ee98c8bb..d2dafd2f38 100644 --- a/web/src/main/java/lcsb/mapviewer/web/config/WebAppInitializer.java +++ b/web/src/main/java/lcsb/mapviewer/web/config/WebAppInitializer.java @@ -128,6 +128,19 @@ public class WebAppInitializer implements WebApplicationInitializer { restApiDispatcher.setLoadOnStartup(1); restApiDispatcher.addMapping("/api/*"); + /* + * ================ WEB CONTEXT ================ + */ + + AnnotationConfigWebApplicationContext webContext = new AnnotationConfigWebApplicationContext(); + webContext.setParent(rootContext); + webContext.register(SpringWebConfig.class); + ServletRegistration.Dynamic webDispatcher = container.addServlet("WEB Servlet", + new DispatcherServlet(webContext)); + webDispatcher.setLoadOnStartup(1); + webDispatcher.addMapping("/"); + + /* * ======= FILTERS ======= */ diff --git a/web/src/main/java/lcsb/mapviewer/web/controler/RootController.java b/web/src/main/java/lcsb/mapviewer/web/controler/RootController.java new file mode 100644 index 0000000000..92959e5ed0 --- /dev/null +++ b/web/src/main/java/lcsb/mapviewer/web/controler/RootController.java @@ -0,0 +1,23 @@ +package lcsb.mapviewer.web.controler; + +import org.apache.log4j.Logger; +import org.springframework.stereotype.Controller; +import org.springframework.ui.ModelMap; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.servlet.ModelAndView; + +@Controller +@RequestMapping("/") +public class RootController { + /** + * Default class logger. + */ + private Logger logger = Logger.getLogger(RootController.class); + + @RequestMapping(value = "/", method = { RequestMethod.GET, RequestMethod.POST }) + public ModelAndView rootPage(ModelMap model) { + logger.debug("Accessing root page"); + return new ModelAndView("/index.xhtml", model); + } +} \ No newline at end of file -- GitLab